
Windows 95 was an extremely popular operating system, and one that arguably made Windows and personal computing mainstream. Its importance even today is highlighted by the fact that we regularly cover stories related to the OS, such as the concept of Windows Classic Remastered and how PC vendors used to trick BIOS strings to get full editions of trial software in the days of Windows 95.
Now, we have another interesting tidbit surrounding the implementation of one particular instruction for Intel CPUs.
This story once again comes from Microsoft veteran Raymond Chen, who explains that the 80386 processor (also known as "Intel 386" and "i386") included support for the HLT instruction. HLT was an abbreviation for HALT, which, as the name implies, would request the CPU to stop executing instructions until a hardware interrupt, such as a key press, came through. This was primarily meant to preserve power when the CPU had no work to do, as it allowed the processor to go into a low-power mode.
While this sounds like a very useful instruction to have in your PC's arsenal, Microsoft did not implement this in Windows 95. The main reason behind this is that many PC vendors did not properly support this instruction, causing machines to lock irrecoverably as soon as HLT was executed.
Since this reason was not public, many people at the time blamed Microsoft for being lazy in implementing this instruction, not knowing that it was actually PC vendors who were to blame.
Chen notes that since the failure of proper execution of HLT resulted in a brick, the risk of running into it because of a false negative was too high, so the company decided to skip it entirely in Windows 95.
Although it did consider adding a detection for support, this was a high-risk strategy because there was a chance that some laptop models would not be identified by the time Windows 95 shipped. While PCs today implement similar behavior through the MWAIT instruction, HLT was the only way to do this back in the day, which is why Microsoft received significant criticism from the public for not implementing the i386 instruction to conserve resources for an idle CPU in Windows 95.
4 Comments
Load the comments and join the conversation!
Read the comments, ask the editors questions, show respect and join the conversation.