1. 主页
  2. 文档
  3. 操作系统教程
  4. 系统结构
  5. 操作系统中的特权和非特权指令

操作系统中的特权和非特权指令

在任何操作系统中,都必须具有双模式操作,以确保系统免受未经授权或错误用户的保护和安全。这种双重模式将用户模式与系统模式或内核模式分开。 

什么是特权指令?

只能在内核模式下运行的指令称为特权指令。

 特权指令具有以下特点: 

(i) 如果任何尝试在用户模式下执行特权指令,则它不会被执行并被视为非法指令。硬件将其困在操作系统中。 

(ii) 在将控制权转移给任何用户程序之前,操作系统有责任确保定时器设置为中断。因此,如果定时器中断,则操作系统重新获得控制权。 
因此,任何可以修改定时器内容的指令都是特权指令。 

(iii) 操作系统使用特权指令来实现正确操作。 

(iv) 特权指令的各种示例包括: 

 

  • I/O 指令和暂停指令
  • 关闭所有中断
  • 设置定时器
  • 上下文切换
  • 清除内存或从内存中删除进程
  • 修改设备状态表中的条目

什么是非特权指令?

只能在用户模式下运行的指令称为非特权指令。

非特权指令的各种示例包括: 

  • 读取处理器的状态
  • 读取系统时间
  • 生成任何陷阱指令
  • 发送打印机的最终打印输出

此外,重要的是要注意,为了将模式从特权更改为非特权,我们需要一个不产生任何中断的非特权指令。 

这篇文章对您有用吗?