第一章 操作系统引论
1.1操作系统的目标和作用
操作系统的目标
主要有四点:方便性,有效性,可扩充性,开放性
我觉得没什么好考的,如果这样考纯文科
方便性:主要就是方便用户操作计算机,不用跟底层硬件打交道。
有效性:就是一个好的操作系统,能够提高系统资源的利用率。提高系统的吞吐量
可扩充性:OS必须具有很好的扩充性。 与OS的结构要有紧密的联系。
开放性:遵循世界标准规范。特别是开发系统互联OSI
操作系统的作用
- 作为用户与计算机硬件系统之间的接口
- 计算机系统资源管理者
- 实现对计算机资源的抽象
1.2操作系统的发展过程
操作系统发展的动力
- 不断提高计算机资源利用率
- 方便用户
- 器件的不断更新换代
- 计算机体系结构的不断发展
- 不断提高的新的应用的需求
操作系统的发展过程
从最开始的没有操作系统的计算机系统(人工操作方式→脱机I/O方式) 到单道批处理系统→多道批处理系统→分时系统→实时系统 后面有衍生了 许多操作系统
如 微机操作系统 嵌入式操作系统 网络操作系统,分布式操作系统等等。
人工操作方式
用户独占全机
CPU等待人工操作
脱机IO
外围机控制数据IO 脱离主机
外围机将数据放入磁带
CPU需要时从磁带调入,无需等待。
单道批
处理过程:一批作业脱机IO 放入磁带
作业一个接一个地连续处理
旨在提高系统资源利用率和系统吞吐量
缺点:系统资源得不到充分的利用。
多道批
多道程序设计的概念:A程序IO的空挡,B程序占用CPU
优缺点:资源利用率高,系统吞吐量大,平均周转时间长,无交互能力
多道批需要解决的问题
处理机争用问题
内存分配和保护问题
I/O设备分配问题
文件的组织和管理问题
作业管理问题
用户与系统的接口问题
分时系统
在一台主机上连接了多个带有显示器和键盘的终端,同时允许多个用户共享主机中的资源,每个用户都可以通过自己终端以交互方式使用计算机。
分时系统的特征
多路性:允许将多台终端同时连接到一台主机,并分时使用
独立性:感觉用户独占主机
及时性:用户的请求能在很短时间内获得响应
交互性:用户可通过终端与系统进行广泛的人机对话。
实时性系统
系统能够及时响应外部事件的请求,在规定事件内完成对该事件的处理,并控制所有实时任务协调一致地进行
特征:实时性。
1.3操作系统的基本特征
并发 共享 虚拟 异步
1.4操作系统的运行环境
指令:CPU执行 执行程序:位于内存
事件:硬件终端或软件中断引起。程序:位于外存
操作系统内核:常驻内存,通常与硬件紧密相关
支撑功能:中断处理,始终管理 原语操作
资源管理功能:进程管理、存储器管理、设备管理
1.5操作系统的主要功能
这些主要功能也是我们后续学习的重点
有处理机管理功能,文件管理功能,内存管理功能,操作系统与用户之间的接口,设备管理功能,现代OS的新功能
处理机管理功能
进程控制:创建进程,撤销进程,状态转换
进程同步:信号量机制
进程通信:直接通信,间接通信
调度:作业调度,进程调度。
存储器管理功能
内存分配和回收:内存分配,内存回收
内存保护:确保每个用户仅在自己的内存空间运行,绝不允许用户程序访问操作系统的程序和数据
地址映射:逻辑地址转换为物理地址
内存扩充:请求调入功能,置换功能。
设备管理功能
缓冲管理:缓冲区机制
设备分配
设备处理:设备驱动程序
文件管理系统
文件存储空间的管理
目录管理:按名存取
文件的读/写管理和保护
文件的读/写管理 文件保护
操作系统与用户之间的接口
联机用户接口
脱机用户接口
图形用户接口GUI
程序接口
系统调用:能完成特定功能的子程序
现代操作系统的新功能
系统安全:认证技术、密码技术 访问控制技术、反病毒技术
网络功能和服务:网络通信、资源管理、应用互操作
支持多媒体:接纳控制技术、实时调度、多媒体文件的存储。
1.6操作系统的结构设计
简单结构
OS 是无结构的,是为数众多的一组过程的集合,内部复杂、混乱。
也称整体系统结构
例子:MS-DOS 早期的UNIX
模块化结构
将OS按功能划分若干个模块,并规定好各模块的接口,称为“模块-接口法”
优点:提高OS设计的正确性、可理解性和易维护性
增强OS的可适应性
加速OS的开发过程
大部分现代OS采用可加载的内核模块设计
内核有一组核心组件,提供核心服务
其他服务可在内核运行时动态实现(动态链接)
每个组件在需要时被加载到内核
例子:Linux MacOS X Windows 等等
solaris模块
分层式结构
操作系统划分为若干层,在底层上构建高层
- 高层仅依赖于紧邻它的底层
- 底层(0层)为硬件;最高层(N层)为用户层
优点:
易保证系统的准确性
可保证系统的易维护性和扩展性
缺点:
系统效率低
例子 THE Multics
分层操作系统
微内核OS结构
基本概念:足够小的内核,应用“机制与策略分离”原理
基于客户/服务器模式 采用面向对象技术
基本功能:进程管理、低级存储器管理、中断和陷入处理
实例 Windows 2000/XP
微内核结构示意图
优点与缺点
优点:提高了系统的可扩展性
增强了系统的可靠性
可移植性强
提供了对分布式系统的支持
融入了面向对象技术
缺点:运行效率有所降低。原因:在完成一次客户对操作系统提出的服务请求时,需要利用消息实现多次交互和进行用户/内核 模型与上下文的多次切换。
外核结构
基本思想:内核不提供传统OS中的进程、虚拟存储器等抽象,而是专注于物理资源的隔离(保护)与复用
内核非常小,负责保护系统资源;
应用程序管理硬件资源。
实例:Aegis系统
1.7系统调用
系统调用目的
使应用程序可以通过它间接调用OS内核中的相关过程,获得相应的服务。
系统调用概念:
应用程序请求OS内核完成某功能时的一种过程调用。
用户与内核的接口。
与一般过程调用的区别
运行在不同的系统状态
状态的转换
返回问题
嵌套调用