特权指令和非特权指令、用户态和核心态
特权指令和非特权指令
特权指令是指有特殊权限的指令,这类指令权限比较大,一般涉及到系统底层的东西,如果使用不当,会导致系统崩溃,所以不是设置了权限,不让所有程序都能执行特权指令。
特权指令包括清内存,置时钟,分配系统资源等。
特权指令一般执行在核心态。可以理解为用户态下只能执行非特权指令,而核心态下可以使用全部指令。
用户态和核心态
系统调用:用户在程序中调用操作系统所提供的功能。
系统调用的处理需要涉及特权指令,所以系统调用的处理需要运行在核心态。
从用户态切换到核心态的三种方式:
(1)系统调用
(2)异常
(3)外围设备的中断