The Windows startup process is the process by which Microsoft's Windows series of operating systems initializes.
In Windows versions 1.01 to Windows/386, the system was loaded when WIN.COM
was executed. It then loaded WIN100.BIN
or WIN200.BIN
and WIN100.OVL
or WIN200.OVL
, along with the configuration settings file WIN.INI
. The default shell is the MS-DOS Executive.
The modules GDI.EXE
, KERNEL.EXE
and USER.EXE
, fonts, and the various device drivers (such as COMM.DRV
, MOUSE.DRV
, KEYBOARD.DRV
) are incorporated in WIN100.BIN
/WIN200.BIN
and WIN100.OVL
/WIN200.OVL
.
In Windows 3.x and 95/98/ME, the boot loader phase is handled by MS-DOS. During the boot phase, CONFIG.SYS
and AUTOEXEC.BAT
are executed, along with the configuration settings files WIN.INI
and SYSTEM.INI
. Virtual device drivers are also loaded in the startup process: they are most commonly loaded from the registry (HKLM\System\CurrentControlSet\Services\VxD
) or from the SYSTEM.INI
file.
When all system configuration files and device drivers have been loaded, the 16-bit modules, KRNL386.EXE
, GDI.EXE
, and USER.EXE
, are loaded, then the 32-bit DLLs (KERNEL32.DLL
, GDI32.DLL
, and USER32.DLL
) are loaded. The 32-bit VxD message server (MSGSRV32) starts MPREXE.EXE
, which is responsible for loading the network logon client (such as Client for Microsoft Networks, Microsoft Family Logon or Windows Logon).
When a user is logging on to Windows, the startup sound is played, the shell (usually EXPLORER.EXE
) is loaded from the [boot] section of the SYSTEM.INI
file, and startup items are loaded.