The Book of SCSI, 2nd Edition
What's Good? For those in a hurry, Appendix A (The All-Platform Technical Reference) is the entire book in a nutshell. I think Appendix A should be included with every SCSI card sold. It includes pin-out descriptions of the major and not-so-major SCSI interfaces, tables for bus timings, and a quick description of termination rules. The pages that surround Appendix A are also quite good.
The chapter on connecting devices to a PC talks at length about one of the more troubling aspects of SCSI; termination. Anyone who has had to troubleshoot SCSI installation problems will enjoy how thorough Chapter 6 deals with troubleshooting. (It even includes what a SCSI signal should look like on an oscilloscope). Programmers will find a Chapter with information on programming using ASPI, as well as protocol specifications for those looking for more low-level information. You'd be very hard pressed to find a more complete and readable treatment of the SCSI protocol than this book.
What's Bad? Unfortunately completeness can lead to information overload. Novice users will find themselves at a disadvantage with the sheer amount of material presented.
When discussing how to set up a SCSI adapter, the book mentions the various PC busses from the earliest IBM PC to draft revisions of PCI and everything in-between. Had I been a novice reader, I would have been overwhelmed with all the information about historical PC busses that are no longer in use. (When was the last time you used VLB or EISA?) In the interest of completeness, the authors also include a chart comparing these interfaces. I question whether this is really necessary. Some may also be put off by the hand-drawn diagrams in the earlier chapters.
On the CD
The CD includes items such as the SCSI FAQ, ASPI Development Files, ASPI tar, SCSI disk driver source for MSDOS, Western Digital SCSI Utilities, SCSITool, Postmark I/O benchmark source code, and Linux SCSI information. Of note, the CD also includes a PDF file of the entire book.
What's in it for me?
The Book of SCSI is definitely written by SCSI enthusiasts. On the early pages, the authors include a bit of SCSI poetry, and the CD includes a text file entitled "SCSI: A Game With Many Rules and No Rulebook?". This book reads with an excitement only an enthusiast can project. If you have ever been curious about SCSI, I encourage you to sit down and read the first few chapters of this book. If you are in a position to use SCSI components more than occasionally, I recommend you purchase this book and keep it on your reference shelf for those times when troubleshooting is necessary.
My biggest complaint? I wish the authors had written this book ten years ago. However, it is still a welcome addition to my library today.
- Chapter Listing
- Chapter 1: Welcome to SCSI
- Chapter 1.5: A Cornucopia of SCSI Devices
- Chapter 2: A Look at SCSI-3
- Chapter 3: SCSI Anatomy
- Chapter 4: Adding SCSI to Your PC
- Chapter 5: How to Connect Your SCSI Hardware
- Chapter 6: Troubleshooting Your SCSI Installation
- Chapter 7: How the Bus Works
- Chapter 8: Understanding Device Drivers
- Chapter 9: Performance Tuning Your SCSI Subsystem
- Chapter 10: RAID: redundant Array of Independent Disks
- Chapter 11: A Profile of ASPI Programming
- Chapter 12: The Future of SCSI and Storage in General
- Appendix A: All-Platform Technical Reference
- Appendix B: PC Technical Reference
- Appendix C: A Look at SCSI Test Equipment
- Appendix D: ATA/IDE versus SCSI
- Appendix E: A Small ASPI Demo Application
- Glossary
- Index
You can purchase this book at Fatbrain.
..you're behind the times. Fiberchannel, firewire, and yes, IDE, have made SCSI obsolete. IDE made SCSI obsolete? Heresy! So I would have said myself only a couple of years ago, but today the cost/benefit ratio puts me firmly behind IDE for anything on the low end... and on the high end, let's give SCSI a well deserved retirement, with fanfare and honors, and replace it with more modern stuff, please.
On the low end, the cost difference between IDE and SCSI has been increasing (i.e. prices for IDE drop faster than SCSI) and IDE has also been getting better, to the point where the benefits of SCSI simply aren't enough anymore. IDE drives have gotten smarter, too, making up for some of the performance and reliability differences. If you want a high-performance, cost-effective, "low-end" RAID solution, look to i.e. 3Ware which makes some absolutely superb RAID cards for IDE drives... even though it needs an IDE controller dedicated to each drive it's still cheaper than a comparable SCSI solution, even before factoring in the cost of the drives! And performs at least as well.
As to the high end... Fiberchannel is a step forward, but not enough. Forget all these special purpose buses anyway... my suggestion would be to put a gigabit ethernet interface and an IP stack directly in the drive. In fact, I hear that people are doing exactly that and using something called "SCSI over IP", which sounds like an interesting idea but probably not optimal. Better to run something like GFS directly on the drive.
In other words, my objection to SCSI is: not enough brains per drive! On the low end this can be accomplished with fewer drives per brain... instead of huge RAID arrays with one smart control node (like NetApps, etc), use lots of PCs with small IDE RAIDs... call it RAIIS (redundant array of independent inexpensive servers) if you will. Fewer drives per brain means more brains per drive. On the high end take this to its logical extreme... one drive per brain, a full computer in each drive, each drive a full node on the network.
Either way SCSI is not the answer.
-j
What's so difficult about termination anyway? Terminate both ends of the bus, nothing else.
If only it was that simple... Some controllers and devices are incredibly picky about the quality of the termination, refusing to work reliably with anything but the best quality active termination. Then you have SCSI devices of varying bus widths and you have to terminate on half of the data bus or the other. Asus made the P2B-S motherboard with built-in SCSI and it was nigh on impossible to determine how it worked. You could toggle termination in the driver and it seemed to have no effect. Automatic termination, despite being listed, apparently did not work. You could toggle the low byte single-ended termination on and off at the motherboard but there was no way to turn off the high byte termination. The list went on and on. FAQs were developed by people who tried to reverse-engineer the board. It was a mess.
Frankly, I think that termination problems with SCSI has had more to do with its demise in high-end consumer PCs than any other factor.
And then you get into devices that attempt to have "built-in" termination. Or devices that, for whatever reason, have to be at the end of the chain (due to termination issues) and you need to attach two of them. Or your motherboard (at one end of the bus sometimes) is not providing decent termination.
And that is not even getting into cable length.
At one time I had four external SCSI devices attached to my computer. Placement of the four items would cause the chain to work or not. I am not talking about placement on the chain (which can definitely between working and not), but rather on my desk. If I moved the Zip drive too far to the right the chain would fail. If I tried to move the hard drive under the desk the chain would fail.
Luckily I was running seperate busses for internal and external.
"There are very technical reason why you need to sacrifice a goat to get your SCSI chain working properly."
As for the other post - I have always heard is "scuzzy." I always thought that it was appropriate for how messed-up SCSI was. Of course, I would take SCSI over parallel and slow serial any day of the week.
Now Firewire and USB... I still have too much invested in SCSI to go over just yet. Looks like good specs. Now if they would only keep USB as a low-speed powered bus and not try to get in over their heads I will be fine. I just want something I can attach keyboards, mice, and printers to. Having two seperate busses makes sense (one slower and powered, the other faster). Yes, I understand that Firewire is powered.
- (c) 2018 Hank Zimmerman
The reviewer comments that there may actually be too much information in the book, and that newcomers to the subject of SCSI may get lost. My response is that the book itself was never really written for beginners; It was written, IMO, as a technical reference for folks who are in the range between decently hardware-literate (able to build a system without too much trouble) and engineering technician. Witness the oscilloscope examples. How many would-be SCSI users in the Joe/Jane Consumer arena have even seen an O-scope, let alone could guess how to use one or what they're useful for?
Speaking as a second-year EE student, and as someone who's spent 20+ years doing hands-on with all kinds of electronics, the book came as a very welcome reference for me. I would not, however, recommend it for someone who just wants to find out enough about SCSI just to make use of it. For that, I would suggest http://www.scsifaq.org
I would suggest to the reviewer to place a book in context before writing said review. It just plain looks better in print.
Bruce Lane, KC7GR,
Blue Feather Technologies
Did you get free ear defenders with that system?
"don't fall into the fallacy of believing that Perl can solve social problems. Maybe Perl 6 can, but that's a ways off"