June 13, 2005
Maybe it's just my OCD kicking in again, but it's incredibly annoying how these phantom, zero-byte IO.SYS and MSDOS.SYS files keep showing up in the root of my c:\ drive on every computer I own.
It's a gentle reminder of the Bad Old Days. The last time I checked, I wasn't running DOS 6.22, Win95, Win98SE, or even WinME. No matter how many times I delete these spurious DOS-related files, the next time I look-- they're back. What's next? AUTOEXEC.BAT and CONFIG.SYS? HIMEM.SYS and optimizing my high memory area? Argh.
Posted by Jeff Atwood
It's the ghosts of operating systems past! Interestingly - I dont' see these files on my XP or 2003 systems. What in the world is putting them there?
My guess is, older installers. I remember reading from the x86-64 migration stuff that Microsoft was shocked to find out how many companies are still using 16-bit installation programs (eg, ancient versions of InstallShield, etc). They found this out the hard way -- x86-64 can't run 16-bit apps.
Just a guess though. If anyone has a better idea, let me know!
It's not an installer -- it's a backwards compatibility feature. Windows XP (and I think 2000) puts those zero-byte files there on purpose because some old DOS apps check for their presence to determine the DOS boot drive.
Scott: They are hidden system files, of course. Have you enabled display of those files in Explorer? They should be present on any clean Windows installation.
Oh yeah - duh.
The used to be one of the first things I'd do to Windows after an install - customize all the explorer settings so I can see what's on the drive. I haven't done that lately it looks like. Must be getting old... :)
I actually do have AUTOEXEC.BAT and CONFIG.SYS in my root directory. And this is also on an XP Pro system.
It does make me feel nostalgiac for the days of manually managing my XMS so those crappy dos games would run.