I just had a talk with a colleague, John Palmer, who worked on disk drive design for about 5 years in the '90s and he gave me a very confident, credible explanation of some of the things we've been wondering about disk drive power loss in this thread, complete with demonstrations of various generations of disk drives, dismantled.
First of all, it is plain to see that there is no spring capable of parking the head, and there is no capacitor that looks big enough to possibly supply the energy to park the head, in any of the models I looked at. Since parking of the heads is essential, we can only conclude that the myth of the kinetic energy of the disks being used for that (turned into electricity by the drive motor) is true. The energy required is not just to move the heads to the parking zone, but to latch them there as well. The myth is probably just that that energy is used for anything else; it's really easy to build a dumb circuit to park the heads using that power; keeping a computer running is something else. The drive does drop a write in the middle of the sector if it is writing at the time of power loss. The designers were too conservative to keep writing as power fails -- there's no telling what damage you might do. So the drive cuts the power to the heads at the first sign of power loss. If a write was in progress, this means there is one garbage sector on the disk. It can't be read. Trying to finish writing the sector is something I can image some drive model somewhere trying to do, but if even _some_ take the conservative approach, everyone has to design for it, so it doesn't matter. A device might then reassign that sector the next time you try to write to it (after failing to read it), thinking the medium must be bad. But there are various algorithms for deciding when to reassign a sector, so it might not too. -- Bryan Henderson IBM Almaden Research Center San Jose CA Filesystems -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/