1.linux内核简介
linux系统可以分为两部分用户空间和内核空间
用户空间:用户程序,C库函数
内核空间:系统调用接口,系统内核
linux为什么要有内核空间和用户空间?
现代CPU实现了不同的工作模式,例如ARM就有7中工作模式,不同的模式拥有着不同的权限,起码就操作寄存器每个工作模式下就有不同的权限;
x86就有4中不同的级别,Ring0~Ring3,在Ring0下,可以执行特权指令,可以访问IO设备等,在Ring3则有许多限制。Linux系统利用了CPU这种特性,使用了其中的两级来分别运行Linux内核与应用程序,这样使操作系统本身得到充分保护。例如x86中,linux用户程序运行在Ring3中,内核运行在Ring0中。
内核空间与用户空间是程序执行的两种不同状态,通过系统调用和硬件中断能够完成从用户空间到内核空间的转移。
Linux内核的组成
从上图可以看出,Linux内核最上层是SCI,一组供用户调用的系统调用接口,他的下方有
进程管理(P