Building And Running Modules
User Space and Kernel Space
- A module runs in kernel space, whereas applications run in user space. This concept is at the base of operating systems theory.
- All operating system provide protection to system resources. To do it, CPU must provide mechanism to enforce protection.
- CPU achieves that by implementing different operating level. Some operations are disallowed in lower operating level.
- Under Unix/Linux, kernel runs in highest level(called supervisor mode), and application softwares run in lowest level(called user level)
- We usually refer to the execution modes as kernel space and user space. These terms encompass not only the different privilege levels inherent in the two modes, but also the fact that each mode can have its own memory mapping—its own address space—as well.
- Unix transfers execution from user space to kernel space whenever an application issues a system call or is suspended by a hardware interrupt.
page revision: 4, last edited: 18 May 2010 18:50