OS的运行机制和体系结构(2)
- 操作系统的体系结构
操作系统和企业管理类似 内核就是企业的管理层,负责一些重要的工作,只有管理层能执行特权指令。用户态、核心态之间的切换相当普通员工和管理层之间的工作交接。大内核:初创企业体量不大,管理层负责大部分事情,效率高但是结构混乱,难以维护。微内核:随着企业体量也来越大,管理层只负责最核心部分工作,组织结构清晰,方便维护,但是效率低。
- 大内核
- 将操作系统的主要功能模块都作为系统内核,运行在核心态
- 优点:高性能
- 缺点:内核代码庞大、结构混乱、难以维护
- 小内核
- 只把最基本的功能保留在内核
- 优点:内核功能少,结构清晰,方便维护
- 缺点:需要频繁地在核心态和用户态中间切换,性能低
- 中断和异常(内中断和外中断、中断处理过程)
- 中断是为了实现多道程序并发执行而引入的一种技术,人们通过操作系统作为计算机的管理者,并引入中断机制,从而实现多道程序并发执行。
- 本质:发生中断就意味着需要操作系统介入,开展管理工作。
中断的概念和作用 (发生了中断,就意味着需要操作系统介入,开展管理工作。由于操作系统的管理工作(比如进程切换、分配I/O设备等)需要使用特权指令,因此CPU要从用户态转为核心态。中断可以使CPU从用户态转为核心态,使操作系统获得计算机的控制权,有了中断,才能实现多道程序并发执行。)
- 当发生中断CPU会立即进入核心态
- 当中断发生后,当前运行的进程暂停运行,并由操作系统内核对中断进行处理
- 对不同的中断信号,会进行不同的处理
- 内中断(也称异常(信号来源:CPU内部与当前执行的指令有关)、例外、陷入)
- 自愿中断--指令中断 如:系统调用时使用的访问指令(又叫陷入指令)
- 强迫中断
- 硬件故障 如:缺页
- 软件中断 如:整数除0
- 外中断(狭义中断) 信号来源:CPU外部当前执行的指令无关
- 外设请求 如:I/O操作完成发生的中断信号
- 人工干预 如:用户强制终止一个进程
- 补充:内中断的另一种分类方式
- 陷阱、陷入(trap)
- 故障(fault)
- 终止(abort)
step1:每条指令执行结束后,CPU检查是否有外部中断信号
step2:若有外部中断信号,则需要保护被中断的CPU环境
step3:根据中断信号类型转入相应的中断处理程序
step4:恢复原进程的CPU环境并退出中断,返回原进程继续往下执行

浙公网安备 33010602011771号