Windows Support Menu
Windows 9X Application Support
An 80386 or higher processor has the ability to support multiple levels (rings) of privileges for executable code. The different rings provide different types of protection and different levels of privileges.
Ring 0 vs. Ring 3
Transitions between rings take a relatively large amount of time. (The actual time varies by processor; some processors may take as much as 10 times as long to accomplish the ring transition as to execute the code calling for the transition.) Because sufficient system protection is provided by using just two rings, Windows 95 optimizes speed and protection by just using Rings 0 and 3. Rings 1 and 2 are not used by Windows 95, just as they are not used by Microsoft Windows NT.
Ring 0 components are "protected" by the processor architecture. This means that the chip prevents different software from writing over each other's components that are in Ring 0.
With this sort of protection, you may think that everything should run in Ring 0. However, Ring 0 components can execute all privileged operations, such as communicating directly with hardware. Ring 0 components have access to everything in the system. If a software component fails in Ring 0, it can cripple the entire system.
The core code of the Windows 95 operating system runs in Ring 0.
When a software component is in Ring 3, there is no processor-provided protection from other programs. The protection is provided by the operating system and the virtual machine manager.
Ring 3 processes do not have the same privileges as Ring 0. For example, Ring 3 processes cannot write directly to hardware; these processes must communicate with a Ring 0 process. This limit on privileges means that if a software component fails in Ring 3, it cannot cripple the entire system. For that matter, a software component that fails in Ring 3 may not affect any other software component running on the system at the same time.
For these reasons, all programs and non-critical system components run in Ring 3.
Windows 95 Architecture Overview
If you were to follow the interaction of a command starting with the program that issued the command, you would see how Windows 95 is put together.
Programs communicate by means of messages with various components of the Windows 95 operating system. These components take the commands, carry them out and, by means of drivers, control the various hardware.