Submitted via IRC for Bytram
How did MS-DOS decide that two seconds was the amount of time to keep the floppy disk cache valid?
MS-DOS 2.0 contained a disk read cache, but not a disk write cache. Disk read caches are important because they avoid having to re-read data from the disk. And you can invalidate the read cache when the volume is unmounted.
But wait, you don't unmount floppy drives. You just take them out.
IBM PC floppy disk drives of this era did not have lockable doors. You could open the drive door and yank the floppy disk at any time. The specification had provisions for reporting whether the floppy drive door was open, but IBM didn't implement that part of the specification because it saved them a NAND gate. Hardware vendors will do anything to save a penny.
[...] Mark Zbikowski led the MS-DOS 2.0 project, and he sat down with a stopwatch while Aaron Reynolds and Chris Peters tried to swap floppy disks on an IBM PC as fast as they could.
They couldn't do it under two seconds.
So the MS-DOS cache validity was set to two seconds. If two disk accesses occurred within two seconds of each other, the second one would assume that the cached values were still good.
I don't know if the modern two-second cache flush policy is a direct descendant of this original office competition, but I like to think there's some connection.
(Score: 3, Informative) by hwertz on Wednesday September 25 2019, @04:54PM
"*If* there was no sensor on the drive's door or lever, then why would you even close the drive door or turn the lever for either the first or second disks?"
Don't know if you're joking or not.. so, 3.5" floppies have a rigid outer shell, then a magnetic disk inside the shell. The 5.25" (and 8", which I never used) use a floppy outside shell (thus the term floppy) and the magnetic disk inside that. If you put a 5.25" disk inside the drive, it's just kind of sitting in there, the motor that spins up the disk and read/write head aren't "clamped" onto the disk until you turn that lever. Since the outside of the disk is not particularly solid, you would not be able to use a spring loaded mechanism like 3.5" floppy drives do.