逻辑结构
整体式结构
以模块为基本单位构建
分层式结构
单向依赖、单向调用
微内核结构
微内核
足够小,提供最基本核心功能、服务。
核外服务器
完成绝大部分服务功能,等待应用提出请求。
系统调用
- 程序获得操作系统服务的唯一途径
- 实现系统调用的机制成为陷阱/异常处理机制。
- 由于系统调用而引起处理器中断的机器指令成为访管指令/自陷指令。
- 访管指令为非特权指令。
作用
- 内核可基于权限对资源访问裁决,保证安全
- 对资源抽象,提供一致性接口
命令接口
- 联机
- 脱机(批处理)
程序接口
系统调用来实现(系统调用是操作系统提供给编程人员的唯一接口)
系统调用与函数调用区别
- 调用形式
- 被调用代码位置
- 提供方式
- 调用的实现
处理器状态
指令分为特权与非特权。
- 内核态(管态):系统管理程序执行所处于的状态。所有资源、指令。此状态能够改变CPU状态。
- 用户态:部分资源。
程序状态字
程序状态字(Program Status Word, PSW)又称状态寄存器,主要用于反映处理器的状态及某些计算结果以及控制指令的执行。
转换
用户态向管态:
- 主动调用访管指令
- 硬件中断
- 差生错误(内部中断)
- 用户态企图执行特权指令(发生错误)
核态向用户态:
- 中断返回:IRET
中断机制
定义
CPU对突发外部事件的反应过程或者机制。
目的
- 并发
- 实时处理
中断类型
响应过程
- 识别中断源
- 保护断点和现场
- 装入终端服务程序入口地址(CS:IP)
- 进入中断服务程序
- 恢复现场和断点
- 中断返回iret