操作系统的逻辑结构
逻辑结构就是 OS 的设计和实现思路
口逻辑结构的种类
- 整体式结构
- 层次式结构
- 微内核结构(客户/服务器结构,Client/Seryer)
整体式结构
整体式结构以模块为单位,模块之间互相调用。
特点
- 模块设计、编码和调试独立
- 模块调用自由
- 模块通信多以全局变量形式完成
缺点
- 信息传递随意,维护和更新困难。
层次式结构
例如:TCP/IP协议
所有的功能模块按照次序排成若干层,相邻层单向依赖或单向调用
层次结构的优点
- 结构清晰,避免循环调用。
- 整体问题局部化,系统的正确性容易保证。
- 有利于操作系统的维护、扩充、移植
微内核结构(客户/服务器结构,Client/Seryer)
操作系统 = 微内核+核外服务器
微内核
足够小,提供OS最基本的核心功能和服务
- 实现与硬件紧密相关的处理
- 实现一些较基本的功能;
- 负责客户和服务器间的通信。
核外服务器:
- 完成OS的绝太部分服务功能,等待应用程序提出请求。
- 由若干服务器或进程共同构成口。例如:进程/线程服务器,虚存服务器,设备管理服务器等,以进程形式运行在用户态。
CPU的态
CPU态(Mode)
- CPU的工作状态。
- 对资源和指令使用权限的描述
态的分类
- 核态(Kernel mode)
- 能够访问所有资源和执行所有指令
- 管理程序/OS内核口
- 用户态(User.mode,目态)
- 仅能访问部分资源,其它资源受限。
- 用户程序
- 管态(Supervisor mode)
- 介于核态和用户态之间,界限不明确,有些甚至没有
用户态和核态的转换
-
用户态向核态转换
- 用户请求OS提供服务
- 发生中断
- 用户进程产生错误(内部中断)
- 用户态企图执行特权指令
-
口核态向用户态转换的情形
- 一般是执行中断返回:IRET
存储程序和数据的部件口分类
按存储器(半导体存储器逵写工作方式
- RAM
- ROM
按存储元的材料
- 半导体存储器(常作主存)
- 磁存储器(磁带,磁盘)
- 光存储器(光盘)
按与CPU的联系
- 主存:直接和CPU交换信息
- 辅存:不能直接和CPU交换信息
存储体系
- 寄存器
- 高速缓存(CACHE)
- 主存
- 辅存
中断机制
中断是指CPU对突发的外部事件的反应过程或机制。CPU收到外部信号(中断信号)后,停止当前工作,转去处理该外部事件,处理完毕后回到原来工作的中断处(断点)继续原来的工作。
引入中断的目的
- 实现并发活动
- 实现实时处理
- 故障自动处理
一些概念
- 中断源:引起系统中断的事件
- 中断类型:强迫性中断和自愿中断(程序预期达到还是没达到)、外中断(中断)和内中断(俘获)口外中断(内部还是外部事件)、不可屈蔽中断和可屏蔽中断口(中断原因紧要还是不紧要)
- 断点:程序中断的地方,将要执行的下一指令的地址
- 现场:程序正确运行所依赖的信息集合。两个处理过程为现场保护和现场恢复。
中断响应过程
- 识别中断源
- 保护断点和现场
- 装入中断服务程序的入口地址(CS:P)
- 进入中断服务程序
- 恢复现场和断点
- 中断返回:IRET
中断响应的实质
- 交换指令执行地址
- 交换CPU的态
- 工作
- 现场保护和恢复
- 参数传递(通信)