用户态:进程运行用户代码的状态。
内核态:进程运行内核代码的状态。
从用户态切换到内核态的三种方式:
- 系统调用。
- 异常:进程运行在用户态时发生异常会触发切换。例如:缺页异常。
- 外设中断:外设完成用户的请求时向CPU发送中断信号。
内核:
内核,即操作系统的核心,是基于硬件的第一层软件扩充,提供操作系统的最基本的功能,是操作系统工作的基础,它负责管理系统的进程、内存、设备驱动程序、文件和网络系统,决定着系统的性能和稳定性。
现代操作系统设计中,为减少系统本身的开销,往往将一些与硬件紧密相关的(如中断处理程序、设备驱动程序等)、基本的、公共的、运行频率较高的模块(如时钟管理、进程调度等)以及关键性数据结构独立开来,使之常驻内存,并对他们进行保护。通常把这一部分称之为操作系统的内核。