操作系统操作:
- 双模式
- I/O和内存保护
- 定时器
双重模式操作
程序运行中的问题:
软件错误或特定请求产生异常或陷阱,如除数为零,完成操作系统服务等。
其他进程问题:如死循环等。
解决方法:双重模式(用户模式和内核模式)
内核模式:只能运行操作系统的程序;
用户模式:所有的用户应用程序只能在用户模式下运行。
双模式需要CPU的支持,如果CPU有模式位,则可以在操作系统中实现双模式。
系统调用的代码是在内核模式执行的。
允许OS保护自身和其他系统部件;
特权指令:可能引起系统崩溃的指令,只能运行在内核模式
例题:
以下指令中,()是特权指令。
A.调用函数指令
B.I/O指令
C.内存访问指令
D.获取事件指令
答案:B D
系统调用:模式转换
用户程序需要用特权指令怎么办?
解决办法:系统调用
I/O和内存保护
I/O保护
- 防止用户程序执行非法I/O
- 解决办法:所有I/O指令都是特权指令
- 用户程序通过系统调用进行I/O操作
内存保护
- 防止内存非法访问
- 解决办法:存储保护机制
- 硬件支持
- 例子