A. Most OSs require a way to separate user applications from the OS's core services. To achieve this, Windows 2000 has two modes, user and kernel. A user mode program can't read or write directly to the OS memory; instead it can access its own virtual 4GB memory (2GB for applications, 2GB for OS), which a kernel process—the Virtual Memory Manager—controls. The Virtual Memory Manager then writes directly to the OS memory.
Basically, the system uses the kernel for critical OS services, which are kept separate from user programs to prevent the user programs from crashing the OS. The main parts of Win2K that run in kernel mode are the hardware abstraction layer (HAL—applications can't talk directly to hardware), NT Kernel, and NT Executive.