When the Windows 2000 loader gives control to the Windows 2000 kernel, the Windows 2000 load phases are started. These phases are the kernel load phase, the kernel initialization phase, the services load phase, and the Windows subsystem start phase.
Kernel Load Phase
The Hardware Abstraction Layer (HAL) is loaded, and the system hive is loaded and scanned for device driver services that should be loaded at this step.
Kernel Initialization Phase
This phase initializes the kernel and the drivers that were loaded in the previous phase. The system hive is again scanned to determine which high-level drivers should be loaded. These drivers are then initialized and loaded after the kernel has been initialized. The Registry hardware list is then created by using the information collected by NTDETECT.COM (on Intel-based systems) and OSLOADER.EXE (on RISC systems).
Services Load Phases
This phase starts the session manager (SMSS.EXE), which reads the list of programs that must be started. Usually, programs such as CHKDSK are executed at this step. Then, the paging file is set up, and the Win2 subsystem is started.
Windows Subsystem Start Phase
When the Win32 subsystem starts, it automatically starts WINLOGON.EXE, which starts the Local Security Authority (LSASS.EXE) and displays the Ctrl+Alt+Del logon dialog box. Then, the Service Controller (SCREG.EXE) is run. It goes through the Registry and looks for services that must be loaded automatically. The boot is considered finished when a user can log on.