浅谈Linux内核和CPU架构

Linux由用户空间和内核两部分组成,之因此有这两部分构成,我想应该是因为考虑CPU体系结构架构

嵌入式ARM处理器有七种工做状态,分别是用户模式、快速中断、外部中断、管理模式、数据访问终止模式、系统模式和为定义指令模式,ide

而X86体系结构的CPU则有RING0~RING3 四种工做模式,这些工做模式是有权限限制的,例如在访问IO设备上it

Linux利用CPU这中架构,用户空间和内核空间分别工做在不一样的模式下,class

X86体系上,用户代码工做在RING3,而内核代码则工做中在RING0上硬件

若是想切换工做状态,能够经过系统调用和硬件中断两种方式来触发权限

例如在ARM中,咱们实用寄存器CPSR前四位来控制CPU的七种工做模式的转换!程序

固然工做模式不是随便切换的,例如在切换至中断时候,在中断向量表中指定的空间咱们要编写中断服务程序。im

 

下面是Linux内核的七大组成部分数据

相关文章
相关标签/搜索