
计算机操作系统第四版 汤小丹 教案PPT课件.ppt
1255页西安电子科技大学出版社 高等学校计算机类 十二五 规划教材部级优秀教材 计算机操作系统 汤小丹梁红兵哲凤屏汤子瀛 第四版 编著 目录 第一章操作系统引论第二章进程的描述与控制第三章处理机调度与死锁第四章存储器管理第五章虚拟存储器第六章输入输出系统第七章文件管理第八章磁盘存储器的管理第九章操作系统接口第十章多处理机操作系统第十一章多媒体操作系统第十二章保护和安全 第一章操作系统引论 1 1操作系统的目标和作用1 2操作系统的发展过程1 3操作系统的基本特性1 4操作系统的主要功能1 5OS结构设计习题 1 1操作系统的目标和作用操作系统的目标与应用环境有关 例如在查询系统中所用的OS 希望能提供良好的人 机交互性 对于应用于工业控制 武器控制以及多媒体环境下的OS 要求其具有实时性 而对于微机上配置的OS 则更看重的是其使用的方便性 1 1 1操作系统的目标1 方便性2 有效性3 可扩充性4 开放性 1 1 2操作系统的作用1 OS作为用户与计算机硬件系统之间的接口OS作为用户与计算机硬件系统之间接口的含义是 OS处于用户与计算机硬件系统之间 用户通过OS来使用计算机系统 或者说 用户在OS帮助下能够方便 快捷 可靠地操纵计算机硬件和运行自己的程序 图1 1是OS作为接口的示意图 图1 1OS作为接口的示意图 2 OS作为计算机系统资源的管理者在一个计算机系统中 通常都含有多种硬件和软件资源 归纳起来可将这些资源分为四类 处理机 存储器 I O设备以及文件 数据和程序 相应地 OS的主要功能也正是对这四类资源进行有效的管理 处理机管理是用于分配和控制处理机 存储器管理主要负责内存的分配与回收 I O设备管理是负责I O设备的分配 回收 与操纵 文件管理是用于实现对文件的存取 共享和保护 可见 OS的确是计算机系统资源的管理者 3 OS实现了对计算机资源的抽象对于一台完全无软件的计算机系统 即裸机 由于它向用户提供的仅是硬件接口 物理接口 因此 用户必须对物理接口的实现细节有充分的了解 这就致使该物理机器难于广泛使用 为了方便用户使用I O设备 人们在裸机上覆盖上一层I O设备管理软件 如图1 2所示 由它来实现对I O设备操作的细节 并向上将I O设备抽象为一组数据结构以及一组I O操作命令 如read和write命令 这样用户即可利用这些数据结构及操作命令来进行数据输入或输出 而无需关心I O是如何具体实现的 图1 2I O软件隐藏了I O操作实现的细节 1 1 3推动操作系统发展的主要动力1 不断提高计算机资源利用率2 方便用户3 器件的不断更新换代4 计算机体系结构的不断发展5 不断提出新的应用需求 1 2操作系统的发展过程在20世纪50年代中期 出现了第一个简单的批处理OS 60年代中期开发出多道程序批处理系统 不久又推出分时系统 与此同时 用于工业和武器控制的实时OS也相继问世 20世纪70到90年代 是VLSI和计算机体系结构大发展的年代 导致了微型机 多处理机和计算机网络的诞生和发展 与此相应地 也相继开发出了微机OS 多处理机OS和网络OS 并得到极为迅猛的发展 1 2 1未配置操作系统的计算机系统1 人工操作方式早期的操作方式是由程序员将事先已穿孔的纸带 或卡片 装入纸带输入机 或卡片输入机 再启动它们将纸带 或卡片 上的程序和数据输入计算机 然后启动计算机运行 仅当程序运行完毕并取走计算结果后 才允许下一个用户上机 这种人工操作方式有以下两方面的缺点 1 用户独占全机 即一台计算机的全部资源由上机用户所独占 2 CPU等待人工操作 当用户进行装带 卡 卸带 卡 等人工操作时 CPU及内存等资源是空闲的 2 脱机输入 输出 Off LineI O 方式为了解决人机矛盾及CPU和I O设备之间速度不匹配的矛盾 20世纪50年代末出现了脱机I O技术 该技术是事先将装有用户程序和数据的纸带装入纸带输入机 在一台外围机的控制下 把纸带 卡片 上的数据 程序 输入到磁带上 当CPU需要这些程序和数据时 再从磁带上高速地调入内存 图1 3脱机I O示意图 1 2 2单道批处理系统1 单道批处理系统 SimpleBatchProcessingSystem 的处理过程为实现对作业的连续处理 需要先把一批作业以脱机方式输入到磁带上 并在系统中配上监督程序 Monitor 在它的控制下 使这批作业能一个接一个地连续处理 图1 4单道批处理系统的处理流程 2 单道批处理系统的缺点单道批处理系统最主要的缺点是 系统中的资源得不到充分的利用 这是因为在内存中仅有一道程序 每逢该程序在运行中发出I O请求后 CPU便处于等待状态 必须在其I O完成后才继续运行 又因I O设备的低速性 更使CPU的利用率显著降低 图1 5示出了单道程序的运行情况 从图可以看出 在t2 t3 t6 t7时间间隔内CPU空闲 图1 5单道程序的运行情况 1 2 3多道批处理系统 MultiprogrammedBatchProcessingSystem 1 多道程序设计的基本概念为了进一步提高资源的利用率和系统吞吐量 在20世纪60年代中期引入了多道程序设计技术 由此形成了多道批处理系统 图1 6示出了四道程序时的运行情况 图1 6多道程序的运行情况 2 多道批处理系统的优缺点多道批处理系统的优缺点如下 1 资源利用率高 引入多道批处理能使多道程序交替运行 以保持CPU处于忙碌状态 在内存中装入多道程序可提高内存的利用率 此外还可以提高I O设备的利用率 2 系统吞吐量大 能提高系统吞吐量的主要原因可归结为 CPU和其它资源保持 忙碌 状态 仅当作业完成时或运行不下去时才进行切换 系统开销小 3 平均周转时间长 由于作业要排队依次进行处理 因而作业的周转时间较长 通常需几个小时 甚至几天 4 无交互能力 用户一旦把作业提交给系统后 直至作业完成 用户都不能与自己的作业进行交互 修改和调试程序极不方便 3 多道批处理系统需要解决的问题多道批处理系统是一种十分有效 但又非常复杂的系统 为使系统中的多道程序间能协调地运行 系统必须解决下述一系列问题 1 处理机争用问题 既要能满足各道程序运行的需要 又要能提高处理机的利用率 2 内存分配和保护问题 系统应能为每道程序分配必要的内存空间 使它们 各得其所 且不会因某道程序出现异常情况而破坏其它程序 3 I O设备分配问题 系统应采取适当的策略来分配系统中的I O设备 以达到既能方便用户对设备的使用 又能提高设备利用率的目的 4 文件的组织和管理问题 系统应能有效地组织存放在系统中的大量的程序和数据 使它们既便于用户使用 又能保证数据的安全性 5 作业管理问题 系统中存在着各种作业 应用程序 系统应能对系统中所有的作业进行合理的组织 以满足这些作业用户的不同要求 6 用户与系统的接口问题 为使用户能方便的使用操作系统 OS还应提供用户与OS之间的接口 1 2 4分时系统 TimeSharingSystem 1 分时系统的引入如果说推动多道批处理系统形成和发展的主要动力是提高资源利用率和系统吞吐量 那么 推动分时系统形成和发展的主要动力 则是为了满足用户对人 机交互的需求 由此形成了一种新型OS 用户的需求具体表现在以下几个方面 1 人 机交互 2 共享主机 2 分时系统实现中的关键问题在多道批处理系统中 用户无法与自己的作业进行交互的主要原因是 作业都先驻留在外存上 即使以后被调入内存 也要经过较长时间的等待后方能运行 用户无法与自己的作业进行交互 1 及时接收2 及时处理 3 分时系统的特征分时系统与多道批处理系统相比 具有非常明显的不同特性 可以归纳成以下四个方面 1 多路性 2 独立性 3 及时性 4 交互性 1 2 5实时系统 RealTimeSystem 1 实时系统的类型随着计算机应用的普及 实时系统的类型也相应增多 下面列出当前常见的几种 1 工业 武器 控制系统 2 信息查询系统 3 多媒体系统 4 嵌入式系统 2 实时任务的类型 1 周期性实时任务和非周期性实时任务 2 硬实时任务和软实时任务 3 实时系统与分时系统特征的比较 1 多路性 2 独立性 3 及时性 4 交互性 5 可靠性 1 2 6微机操作系统的发展1 单用户单任务操作系统1 CP M2 MS DOS 2 单用户多任务操作系统单用户多任务操作系统的含义是 只允许一个用户上机 但允许用户把程序分为若干个任务 使它们并发执行 从而有效地改善了系统的性能 3 多用户多任务操作系统多用户多任务操作系统的含义是 允许多个用户通过各自的终端 使用同一台机器 共享主机系统中的各种资源 而每个用户程序又可进一步分为几个任务 使它们能并发执行 从而可进一步提高资源利用率和系统吞吐量 在大 中和小型机中所配置的大多是多用户多任务操作系统 而在32位微机上 也有不少配置的是多用户多任务操作系统 其中最有代表性的是UNIXOS 1 3操作系统的基本特性前面所介绍的多道批处理系统 分时系统和实时系统这三种基本操作系统都具有各自不同的特征 如批处理系统有着高的资源利用率和系统吞吐量 分时系统能获得及时响应 实时系统具有实时特征 除此之外 它们还共同具有并发 共享 虚拟和异步四个基本特征 1 3 1并发 Concurrence 正是系统中的程序能并发执行这一特征 才使得OS能有效地提高系统中的资源利用率 增加系统的吞吐量 1 并行与并发并行性和并发性是既相似又有区别的两个概念 并行性是指两个或多个事件在同一时刻发生 而并发性是指两个或多个事件在同一时间间隔内发生 2 引入进程在一个未引入进程的系统中 在属于同一个应用程序的计算程序和I O程序之间只能是顺序执行 即只有在计算程序执行告一段落后 才允许I O程序执行 反之 在程序执行I O操作时 计算程序也不能执行 但在为计算程序和I O程序分别建立一个进程 Process 后 这两个进程便可并发执行 若对内存中的多个程序都分别建立一个进程 它们就可以并发执行 这样便能极大地提高系统资源的利用率 增加系统的吞吐量 1 3 2共享 Sharing 一般情况下的共享与操作系统环境下的共享其含义并不完全相同 1 互斥共享方式系统中的某些资源 如打印机 磁带机等 虽然可以提供给多个进程 线程 使用 但应规定在一段时间内 只允许一个进程访问该资源 为此 在系统中应建立一种机制 以保证多个进程对这类资源的互斥访问 2 同时访问方式系统中还有另一类资源 允许在一段时间内由多个进程 同时 对它们进行访问 这里所谓的 同时 在单处理机环境下是宏观意义上的 而在微观上 这些进程对该资源的访问是交替进行的 典型的可供多个进程 同时 访问的资源是磁盘设备 一些用重入码编写的文件也可以被 同时 共享 即允许若干个用户同时访问该文件 1 3 3虚拟 Virtual 1 时分复用技术 1 虚拟处理机技术 2 虚拟设备技术 2 空分复用技术20世纪初 电信业中就已使用频分复用技术来提高信道的利用率 它是指将一个频率范围比较宽的信道划分成多个频率范围较窄的信道 称为频带 其中的任何一个频带都仅供一对用户通话 早期的频分复用技术只能将一条物理信道划分为几条到几十条话路 后来又很快发展到成千上万条话路 每条话路供一对用户通话 再后来在计算机中也把空分复用技术用于对存储空间的管理 用以提高存储空间的利用率 1 3 4异步 Asynchronism 在多道程序环境下 系统允许多个进程并发执行 在单处理机环境下 由于系统中只有一台处理机 因而每次只允许一个进程执行 其余进程只能等待 当正在执行的进程提出某种资源要求时 如打印请求 而此时打印机正在为其它进程打印 由于打印机属于临界资源 因此正在执行的进程必须等待 并释放出处理机 直到打印机空闲 并再次获得处理机时 该进程方能继续执行 可见 由于资源等因素的限制 使进程的执行通常都不可能 一气呵成 而是以 停停走走 的方式运行 1 4操作系统的主要功能引入OS的主要目的是 为多道程序的运行提供良好。












