mode, bypassing MS-DOS and BIOS, significantly improving performance. In case there is no native Windows driver for a certain storage device, or if a device is forced to run in compatibility mode, the Real Mode Mapper can access it through MS-DOS. 32-bit Windows programs are assigned their memory segments, which can be adjusted to any desired size. Memory areas outside the segment cannot be accessed by a program. If a program crashes, nothing else is harmed. Before this, programs used fixed non-exclusive 64 KB segments. While the 64 KB size was a serious handicap in DOS and Windows 3.x, lack of guarantee of exclusiveness was the cause of stability issues because programs sometimes overwrote each other's segments. A crashing Windows 3.x program could knock out surrounding processes. The Win32 API is implemented by three modules, each consisting of a 16-bit and a 32-bit component: KernelProvides high-level access to memory and process management, and access to the file system. Consists of KRNL386.EXE, KERNEL32.DLL, and VWIN32.VXD. UserResponsible for managing and drawing the various user interface components, such as windows, menus and buttons. Consists of USER.EXE and USER32.DLL. Graphics Device Interface (GDI) Responsible for drawing graphics in a device-independent way. Consists of GDI.EXE and GDI32.DLL. Dependence on MS-DOS To end-users, MS-DOS appears as an underlying component of Windows 95. For example, it is possible to prevent the loading of the graphical user interface and boot the system into a real-mode MS-DOS environment. This was done by inserting command.com into the autoexec.bat file or changing the BootGUI variable in the MSDOS.SYS file to 0. This sparked debate amongst users and professionals regarding the extent to which Windows 95 is an operating system or merely a graphical shell running on top of MS-DOS. When the graphical user interface is started, the virtual machine manager takes over the filesystem-related and disk-related functionality. MS-DOS itself is demoted to a compatibility layer for 16-bit device drivers. This contrasts with earlier versions of Windows which rely on MS-DOS to perform file and disk access (Windows for Workgroups 3.11 could also largely bypass MS-DOS when 32-bit file access and 32-bit disk access were enabled). Keeping MS-DOS in memory allows Windows 95 to use DOS device drivers when suitable Windows drivers are unavailable. Windows 95 is capable of using all 16-bit Windows 3.x drivers. Unlike Windows 3.x, DOS programs running in Windows 95 do not need DOS drivers for the mouse,