操作系统中的特权指令和非特权指令是什么?
让我们了解一下操作系统中的特权指令。
特权指令
这些指令被称为机器级指令,在处理器处于特权模式时执行。
示例包括:
关闭系统
更改控制寄存器的内容。
跳转到内核代码。
向I/O设备发送命令。
当操作系统内核中的函数正在执行时,处理器处于特权模式。
如果尝试在非特权模式下执行特权指令,则会导致运行时错误。
通常,操作系统的用户模式称为非特权模式,而内核模式称为特权模式。
特性
特权指令的特性如下:
尝试在用户模式下执行特权指令会被视为非法指令,不会执行。
当控制转移到任何用户程序时,操作系统有责任确保设置计时器中断。
因此,如果计时器中断,操作系统将获得控制权。任何修改计时器内容的指令都是特权指令。
特权指令主要由操作系统用来实现正确的操作。
非特权指令
非特权模式也称为用户模式或安全指令。
示例包括:
加载和存储指令
加法、减法等。
下图显示了操作系统中的非特权模式和特权模式:
| 用户模式 (或) 非特权模式 |
| 内核模式 (或) 特权模式 |
必须有一种机制来切换模式,如下所示:
用户 → 内核(内置于硬件中)
内核 → 用户(特权指令)
广告
数据结构
网络
关系型数据库管理系统 (RDBMS)
操作系统
Java
iOS
HTML
CSS
Android
Python
C编程
C++
C#
MongoDB
MySQL
Javascript
PHP