Windows 95 secretly restored overwritten system files to stop buggy installers from downgrading critical components.
Over the past few years, we have heard a lot of stories about Windows’ history, such as the reasons behind its fragmented GUI strategy, how the Windows 95 CD packed a lot of fun stuff, details about a cool trick that helped PCs restart faster, and a lot more. Now, a Microsoft veteran has shared some interesting details about Windows 95.
According to Windows engineer Raymond Chen, installers would include copies of redistributable components of Windows 95 that were required to make the software work. Microsoft’s guidance regarding this process was that an installer should check if a system component exists in Windows 95 and only introduce it if the OS does not contain it or has an older version.
However, naturally, some developers didn’t follow these mandates, and ended up replacing existing system components regardless of their version number. This resulted in older system components being present on Windows 95, which caused chaos for other software that relied on those components.
Microsoft eventually worked around this by maintaining a C:\Windows\SYSBCKUP directory. This contained copies of components that were commonly overwritten by installers. The way this worked was that after an installer completed its process, Windows 95 would effectively check the system’s “new” component versions against those present in SYSBCKUP. If the installer had added an old version, it would get quietly replaced by the one present in SYSBCKUP, but if it was indeed a newer version, the replacement copy in SYSBCKUP would get updated.
Chen explains that while this was a fairly primitive approach, it was better than the initial rudimentary attempt which simply blocked installers from overwriting system component files. In that case, installers would simply fail and even begin showing error messages to users, which usually couldn’t be handled by regular consumers. Similarly, an implementation that wrote to a dummy file didn’t work in practice either because installers would often perform a checksum to ensure that the system component in Windows was the correct one, and threw an error when it wasn’t. As such, the SYSBCKUP approach was ideal in reaching a balance between reliability and flexibility.

