在任何操作系统中,都必须具有双模式操作,以确保系统免受未经授权或错误用户的保护和安全。这种双重模式将用户模式与系统模式或内核模式分开。
什么是特权指令?
只能在内核模式下运行的指令称为特权指令。特权指令具有以下特点: (i) 如果任何尝试在用户模式下执行特权指令,则它不会被执行并被视为非法指令。硬件将其困在操作系统中。 (ii) 在将控制权转移给任何用户程序之前,操作系统有责任确保定时器设置为中断。因此,如果定时器中断,则操作系统重新获得控制权。 因此,任何可以修改定时器内容的指令都是特权指令。 (iii) 操作系统使用特权指令来实现正确操作。 (iv) 特权指令的各种示例包括:
- I/O 指令和暂停指令
- 关闭所有中断
- 设置定时器
- 上下文切换
- 清除内存或从内存中删除进程
- 修改设备状态表中的条目
只能在用户模式下运行的指令称为非特权指令。非特权指令的各种示例包括:
- 读取处理器的状态
- 读取系统时间
- 生成任何陷阱指令
- 发送打印机的最终打印输出