1.3 操作系统的基本特征
1.3.1 并发
1. 并行与并发
并行: 多个事件同时刻同时发生
并发:同一时间段内同时运行
2. 引入进程
进程是系统中能独立运行并作为资源分配的基本单位
1.3.2 共享
1. 互斥共享方式
系统中应建立一种机制,以保证多个进程对这类资源的互斥访问。
2. 同时访问方式
系统中还有另一类资源,允许在一段时间内由多个进程“同时”对它们进行访问。
1.3.3 虚拟
1. 时分复用技术
- 虚拟处理技术
- 虚拟设备技术
2. 空分复用技术
利用存储器的空闲空间分区域存放和运行其它的多道程序,以此来提高内存的利用率。
1.3.4 异步
进程的执行通常都不可能一气呵成,而是停停走走的方式运行。
1.4 操作系统的主要功能
1.进程控制
在多道程序环境下为使作业能并发执行,必须每道作业创建一个或几个进程,并为之分配必要的资源。
2. 进程同步
为使多个进程能有条不紊的地运行,系统中必须设置相应的进程同步机制。
3. 进程通信
当有一组相互合作的进程去完成一个共同的任务时,在它们之间往往需要交换信息。
4.调度
- 作业调度
基本任务是从后备队列中按照一定的算法选择出若干个作业,为它们分配运行所需要的资源。
- 进程调度
任务是从进程的就绪队列中按照一定的算法选出一个进程,将处理机分配给它并执行。
1.5 OS设计
1.5.1 传统操作系统结构
1.无结构操作系统
早期开发操作系统时,设计者只是把他的注意力放在功能的实现和提高效率上,缺乏首尾一致的设计思想。
2. 模块化结构OS
1. 模块化程序设计的基本概念
OS不再由众多的过程直接构成,而是按其功能精心地划分为若干个具有一定独立性和大小模块
2. 模块独立性
模块接口法中,关键问题是模块的划分和规定好模块之间的接口。
衡量独立性的标准有内聚性和耦合度
3. 模块接口法的优缺点
- 提高OS的设计正确性、可理解性、可维护性
- 增强OS的可适应性
- 加速OS的开发过程
3. 分层结构OS
1. 分层结构的基本概念
为了将模块接口法中 决定顺序的无序性变为有序性,引入有序分层法。
2. 分层结构的优缺点
- 易保证系统正确性
- 易扩充和易维护性
1.5.4 微内核OS结构
1. 微内核操作系统的基本概念
为了提高操作系统的正确性、灵活性、易维护性、克扩充性,在进行现代操作系统结构设计时,即使在单计算机环境下,大多也采用基于C/S模式的微内核结构,将操作系统划分为两个部分:微内核和多个服务器。
- 足够小的内核
- 基于C/S模式
- 应用了“机制和策略分离”原理
- 采用面向对象技术
2. 微内核的基本功能
- 进程(线程)管理
- 低级存储器管理
- 中断和陷入处理
3. 微内核操作系统的优点
- 提高了系统的可扩展性
- 增加了系统的可靠性
- 可移植性强
- 提供分布式系统的支持
- 融入了面向对象技术
4. 微内核系统存在的问题
早期操作系统,微内核操作系统的运行效率有所降低