FireWire Killed My Mac
I’m about 99% certain that the various problems I’ve been having on my main desktop Mac lately can all be traced to a misbehaving LaCie d2 external hard drive. (I leave 1% open for the possibility it’s the FireWire cable or controller, but I really don’t think so.)
Partially I blame LaCie for this, and perhaps EMC, but mostly I blame Apple. There is no excuse for allowing a misbehaving external hard drive, from which I have not booted, to affect the operation of the rest of the system. Mac OS X should be robust against any signal, valid or otherwise, from external devices. It should be equally prepared to handle the case where a device does not respond within the expected time frame.
Instead it seems that Disk Utility, the Finder, TechTool, Retrospect, and various other utilities all assume that disks will behave and do not properly handle error conditions. When that assumption is violated, it causes a cascading flow of errors leading to an eventual forced reboot, and possible main disk corruption.
This is one thing I like about both Java and XML. Neither assumes anything about its external input. Everything is verified. Their behavior is well specified in the face of both correct and incorrect input. Nothing is undefined. Sadly this is a level of maturity Mac OS X has not yet achieved. :-(
March 8th, 2007 at 3:52 PM
I wonder if that explains the problems I’ve been having. I have a flakey external drive, and lately everything occasionally and inexplicably turns to molasses. I look at Activity Monitor and it doesn’t show any processor hogs, and yet events slow down to where it takes several seconds to (for instance) change the active application.
I hadn’t thought of the external drive. I’ll have to try running without it for a while.
March 12th, 2007 at 5:21 AM
Windows is not better. If a network drive goes off-line, you get no reaction out of Windows for several minutes. Many times it forces a reboot as well.