【操作系统】用户态与内核态的转化、中断、系统调用 |
您所在的位置:网站首页 › 用户程序调用操作系统 › 【操作系统】用户态与内核态的转化、中断、系统调用 |
一、CPU的两种运行模式
用户态和内核态是CPU的两种运行模式,其通过CPU中的状态寄存器PSW标识。CPU处于内核态即正在执行内核程序,此时可以执行特权指令(不允许用户直接使用),而CPU处于用户态即在执行用户程序,只可执行非特权指令。 二、用户态与内核态的转化内核态->用户态:CPU从内核态转化为用户态只需要执行特权指令、改变寄存器状态即可 用户态->内核态:CPU从用户态转化称为内核态仅仅只有通过中断才可以,此时操作系统内核夺回CPU的使用权 三、中断——外中断和内中断外中断即来自CPU执行指令外部的事件导致中断,比如时钟中断、设备I/O中断等 内中断即异常是来自CPU执行指令内部的事件导致中断,比如陷入指令、非法操作等 四、系统调用——用户的主动中断操作系统管理系统的软件以及硬件资源,一切和资源相关的操作都必须通过系统调用方式。当用户程序需要调用操作系统所提供的功能时,通过系统调用的方式向操作系统提出请求,由操作系统代为完成。 系统调用需要发生在内核态,用户程序主动执行陷入指令引起中断,从而将CPU的控制权交给操作系统内核(此时从用户态->内核态),操作系统内核程序在处理完系统调用请求后再将CPU使用权交给用户程序(此时从内核态->用户态)。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |