HomeToolsAbout

User and Kernel Space

What is it

Modern operating system uses virtual memory to provide separate address spaces or separate regions of a single address space.

  • these spaces are kernel space and user space.
  • Linux, macos, windows all utilizes kernel space

These separations provide memory protection and hardware protection from malicious or errant software behavior.

kernel space is strictly reserved for running a privileged operating system kernel, kernel extensions, and most device drivers.

user space is the memory area where application software and some drivers execute.

  • typically one address space per process.

User Space

All code that runs outside the operating system's kernel.

  • Refers various programs and libraries that the operating system uses to interact with the kernel.
  • Each user space process runs in its own virtual memory space
  • Unless explicitly allowed, cannot access the memory of other processes.
AboutContact