The document compares monolithic and microkernel operating system architectures. A monolithic kernel runs all system services in kernel space, while a microkernel reduces the kernel to basic process communication and I/O control, running other services like memory management in user space as servers. Microkernels have advantages in extensibility, portability and stability due to smaller kernel size, while monolithic kernels have advantages in performance due to running more in kernel space. Examples of each type of kernel are given.