操作系统的目标和作用
1.1 操作系统的目标和作用
1.1.1 操作系统的目标
在计算机系统上配置操作系统,其主要目标是:方便性、有效性、可扩充性和开放性。
1.1.2 操作系统的作用
- OS作为用户与计算机硬件系统之间的接口
- OS作为计算机系统资源的管理者
- OS实现了对计算机资源的抽象
1.1.3 推动操作系统发展的主要动力
- 不断提高计算机资源利用率
- 方便用户
- 器件的不断更新换代
- 计算机体系结构的不断发展
- 不断提出新的应用需求
1.2 操作系统的发展过程
1.2.1 未配置操作系统的计算机系统
- 人工操作方式
- 脱机输入/输出(Off-Line I/O)方式
1.2.2 单道批处理系统
- 单道批处理系统(Simple Batch Processing System)的处理过程
- 单道批处理系统最主要的缺点是,系统中的资源得不到充分的利用。
1.2.3 多道批处理系统(Multiprogrammed Batch Processing System)
- 多道批处理系统的优缺点
① 资源利用率高
② 系统吞吐量大
③ 平均周转时间长
④ 无交互能力 - 多道批处理系统需要解决的问题
① 处理机争用问题
② 内存分配和保护问题
③ I/O设备分配问题
④ 文件的组织和管理问题
⑤ 作业管理问题
⑥ 用户与系统的接口问题
1.2.4 分时系统(Time Sharing System)
- 推动分时系统形成和发展的主要动力,是为了满足用户对人机交互的需求。用户的需求具体表现在人机交互和共享主机两个方面。
- 分时系统实现中的关键问题是如何使用户能与自己的作业进行交互。系统需要做到及时接收和及时处理。
- 分时系统具有多路性、独立性、及时性以及交互性四个方面的特性。
1.2.5 实时系统(Real Time System)
- 实时系统的类型:工业(武器)控制系统、信息查询系统、多媒体系统、嵌入式系统。
- 实时任务的类型:
① 周期性实时任务和非周期性实时任务
② 硬实时任务和软实时任务 - 实时系统与分时系统特征的比较
① 多路性
② 独立性
③ 及时性
④ 交互性
⑤ 可靠性
1.2.6 微机操作系统的发展
- 单用户单任务操作系统(CP/M、MS-DOS)
- 单用户多任务操作系统
- 多用户多任务操作系统(Solaris OS、Linux OS)
1.3 操作系统的基本特性
1.3.1 并发(Concurrence)
- 并行与并发。并行性是指两个或多个事件在同一时刻发生,并发性是指两个或多个事件在同一时间间隔内发生。
- 进程是指在系统中能独立运行并作为资源分配的基本单位。
1.3.2 共享(Sharing)
- 互斥共享方式
- 同时访问方式
1.3.3 虚拟(Virtual)
- 时分复用技术(虚拟处理及技术、虚拟设备技术)
- 空分复用技术
1.3.4 异步(Asynchronism)
进程是以人们不可预知的速度向前推进的,此即进程的异步性。
1.4 操作系统的主要功能
1.4.1 处理机管理功能
- 进程控制
- 进程同步
- 进程通信
- 调度
1.4.2 存储器管理功能
存储器管理的主要任务是为多道程序的运行提供良好的环境,提高存储器的利用率,方便用户使用,并能从逻辑上扩充内存。
- 内存分配
- 内存保护
- 地址映射
- 内存扩充
1.4.3 设备管理功能
设备管理的主要任务是:①完成用户进程提出的I/O请求,为用户进程分配所需的I/O设备,并完成指定的I/O操作。②提高CPU和I/O设备的利用率,提高I/O速度,方便用户使用I/O设备。
- 缓冲管理
- 设备分配
- 设备处理
1.4.4 文件管理功能
文件管理的主要任务是对用户文件和系统文件进行管理以方便用户使用,并保证文件的安全性。
- 文件存储空间的管理
- 目录管理
- 文件的读/写管理和保护
1.4.5 操作系统与用户之间的接口
- 用户接口(联机用户接口、脱机用户接口、图形用户接口)
- 程序接口
1.4.6 现代操作系统的新功能
- 系统安全(认证技术、密码技术、访问控制技术、反病毒技术)
- 网络的功能和服务(网络通信、资源管理、应用互操作)
- 支持多媒体(接纳控制功能、实时调度、多媒体文件的存储)
1.5 OS结构设计
1.5.1 传统操作系统结构
- 无结构操作系统
- 模块化结构OS
利用模块-接口法开发的OS,较之无结构OS具有以下明显的有点:提高OS设计的正确性、可理解性和可维护性;增强OS的可适应性;加速OS的开发过程; - 分层式结构OS
分层结构主要的有点有:易保证系统的正确性;易扩充和易维护性;
1.5.2 客户/服务器模式(Client/Server Model)
- 客户/服务器模式的由来、组成和类型
客户/服务器系统主要由三部分组成:
① 客户机
② 服务器
③ 网络系统 - 客户/服务器之间的交互
① 客户发送请求消息
② 服务器接收消息
③ 服务器回送消息
④ 客户机接受消息 - 客户/服务器模式的优点
① 数据的分布处理和存储
② 便于集中管理
③ 灵活性和可扩充性
④ 易于改编应用软件
1.5.3 面向对象的程序设计(Object-Orientated Programming)技术
- 面向对象技术的基本概念(对象、对象类、继承)
- 面向对象技术的优点:通过“重用”提高产品质量和生产率;是系统具有会更好的易修改性和易扩展性;更易于保证系统的“正确性”和“可靠性”;
1.5.4 微内核OS结构
- 微内核操作系统的基本概念
① 足够小的内核
② 基于客户/服务器模式
③ 应用“机制与策略分离”原理
④ 采用面向对象技术 - 微内核的基本功能
① 进程(线程)管理
② 低级存储器管理
③ 中断和陷入处理 - 微内核操作系统的优点
① 提高了系统的可扩展性
② 增强了系统的可靠性
③ 可移植性强
④ 提供了对分布式系统的支持
⑤ 融入了面向对象技术 - 微内核操作系统存在的问题
由于采用了非常小的内核,较之早期的操作系统,微内核操作系统的运行效率有所降低。