Kernel Space and User Space in Linux
One of important functions of a Linux kernel is a memory management. The memory is separated within the LInux kernel known as:
- kernel space - in which kernel executes and provides its services. A process running here has unrestricted access to the hardware (kernel code, kernel extensions, device drivers)
- user space - all processes running outside the kernel, reside here, which have restricted access to hardware. User programs manipulate data by making a special request to the kernel called System Calls (Ex. open a file, list processes, defining a variable - open(), fork(), readdir() strlen() etc.)