处理器¶
来源:
操作系统 / note/概述/处理器.md
CPU从内存中取出指令并执行,在每个CPU基本周期中,首先从内存中取出指令,解码以确定其类型和操作数,然后执行

每个CPU都有一套可执行的专门指令集,因此x86处理器不能执行ARM程序,反之亦然
CPU中的寄存器¶
用户可见的寄存器¶
由于用来访问内存以得到指令或数据的时间要比执行指令话费的时间长的多,因此所有CPU内都有一些用来保存关键变量和临时数据的寄存器
控制和状态寄存器¶
程序计数器(PC),保存了将要取出的下一条指令的内存地址,取出之后,就更新成后继的指令
堆栈指针(SP),记录当前使用栈的指针
程序状态字(PSW),记录处理器的运行状态,如模式、控制位等信息

流水线¶
处理器的模式¶
内核态¶
CPU可以执行指令集中的每一条指令
用户态¶
仅允许执行整个指令集的一个子集和访问所有功能的一个子集
特权指令和非特权指令
TRAP指令¶
用户程序必须使用系统调用以陷入内核并调用操作系统