《操作系统》 (第四版) 人民邮电出版社
第1章 操作系统概述 本章讲述内容: 1.1 计算机系统; 1.2 操作系统的定义与功能; 1.3 操作系统的种类 。
1.1 计算机系统 1.1.1 硬件与软件 1. 硬件 一台计算机由处理器(CPU)、内存储器和输入/输出三大部件组成,它们之间按一定的方式通过系统总线进行互联,从而实现执行程序、完成用户需求的各项任务。 . 处理器 控制计算机的操作,执行数据处理的功能。在计算机系统只有一个处理器时,通常就是指中央处理器(CPU),也称中央处理机。 . 内存储器 磁盘 磁带驱动器 打印机 存储程序和数据,它由一组顺序编号的存储单元组成,编号为存储单元的地址。每个单元可以存放一个二进制数,被解释 成是一个指令或数据。 磁盘 控制器 打印机 控制器 磁带驱动器 控制器 . CPU 输入/输出模块 实行计算机与外部设备之间的 数据传输。外部设备有打印机、显示器、终端、辅助存储器(硬盘)、通信设备等。 系统总线 主存
. . . 1.1.2 操作系统的形成 2. 软件 1. 裸机的概念 2. 操作系统的发展历史 计算机软件是指程序和与程序相关的文档的集合,分系统软件和应用软件两种。 . 系统软件 指由计算机生产厂家提供、具有通用功能的软件,比如:操作系统、语言处理程序(如C语言编译程序)、数据库管理系统以及各种完成服务功能的程序。 . 应用软件 指为解决实际问题而研制的软件,涉及计算机应用的各个领域,比如:各种管理软件、用于工程计算的软件包,辅助设计软件以及过程控制软件等。 1.1.2 操作系统的形成 1. 裸机的概念 未配置任何软件的计算机称为“裸机”。若用户直接面对裸机,他们的精力就不能集中在如何用计算机解决自己的问题上,计算机的效率也不能充分发挥出来。 2. 操作系统的发展历史 . 1946~1958年:第一台电子管计算机刚出现几年,计算机上没有名为“操作系统”的软件。那时计算机运行速度慢,外部设备少,程序的装入、调试以及控制程序的运行等工作,全由上机人员通过控制台上的开关和按钮来实现。这一时代的特点是人工完成上、下机操作,一台计算机被一个用户所独占。
. 1958~1964年,计算机进入晶体管时代。随着计算机速度、存储容量、外部设备的功能和种类的发展,产生了“人-机矛盾”,向人们提出了“让计算机自动控制用户作业的运行,废除上、下机手工交接”的要求。从而产生了批处理系统,其管理程序就是现今操作系统的雏形。 . 1964年后,计算机进入集成电路和大规模集成电路时代,这时,不仅硬件有了长足发展,也要求进一步发展和扩大管理程序的功能,希望它能够最大限度地挖掘计算机系统本身的潜在能力。提出多道程序设计技术,操作系统开始出现,并逐渐成为计算机系统中必不可少的一种系统软件。 1.1.3 操作系统发展的动力 1. 提高计算机资源利用率的需要 CPU、存储器、外部设备及各种软件都是计算机系统的“资源”,要想把计算机技术应用到各领域,必须提高系统中各种资源的利用率,以降低整个系统成本。 2. 方便用户使用计算机的需要 3. 硬件技术不断发展的需要 各种新的元、器件以及设备的出现,使计算机的性能不断提高,也就促使操作系统性能和功能的不断改进。 4. 计算机体系结构发展的需要
1.2 操作系统的定义与功能 1.2.1 操作系统的定义 . 操作系统是在裸机上加载的第一层软件,是对计算机硬件系统功能的首次扩充。从用户的角度看,计算机系统配置了操作系统后,由于操作系统隐蔽了硬件的复杂细节,用户会感到机器使用起来更简单、更容易了。 复制一个 文件真难! . 裸机 配置了操作系统后,隐蔽了硬件的复杂细节,用户会感到计算机使用起来更简单、更方便了。就说操作系统为用户提供了一台功能经过扩展了的机器,称这台机器为“虚拟机”,因为现实生活中并不存在有这种功能的真实机器,它只是用户的一种感觉而已。 我的机器 有复制功能 虚拟机 . 把操作系统定义为:“操作系统是控制和管理计算机硬件和软件资源、合理地组织计算机工作流程、以及方便用户使用计算机的一个大型程序”。 裸机 操作系统
. . . . . . 1.2.2 操作系统的功能 1. 处理机管理的功能 2. 作业管理的功能 1.2.2 操作系统的功能 1. 处理机管理的功能 中央处理机(CPU)是计算机系统中一个举足轻重的资源。用户程序进入内存后,只有获得CPU,才能运行。为提高CPU的利用率,系统必须采用多道程序设计技术,使内存中同时有几个用户作业程序存在,当一个程序因等待某事件 的完成而暂时放弃使用CPU时,操作系统就把CPU分配给其他可运行的作业程序使用,从而提高它的利用率。 . 记住系统中当前每个作业程序的状态,在需要对CPU重新进行分配的时候,就在侯选的程序中选取。 . 指定处理机调度策略,它是在侯选程序中进行挑选时应遵循的原则。 . 实施CPU分配(即处理机调度),以便让获得CPU的作业程序真正投入运行。 2. 作业管理的功能 在有的操作系统中,实行处理机的两级调度:第一级是作业调度,涉及作业管理;第二级才是处理机调度,属于处理机管理。 . 记住提交给系统诸作业(一般存放在磁盘)的状态,及对系统资源的需求信息。 . 制定作业调度策略,需要时从磁盘的侯选作业中选择作业进入内存,参与对CPU的竞争。 . 为用户提供一个使用系统的良好环境,以便有效地组织自己的工作流程。
3. 存储器管理的功能 存储器是计算机的记忆装置。可分为内存储器和外存储器两种。操作系统中的存储管理是针对内存而言的。也就是说,存储管理的对象是内存。 . 记住内存各部分的使用情况,即哪些已经分配,哪些为空闲待分配。 . 制定内存的分配策略,实施内存的具体分配和回收。 . 保证内存中各独立作业程序的安全,互不侵扰。 . 解决“作业程序比内存大时,也能得到正确的运行”的存储扩充问题。 4. 设备管理的功能 计算机系统中,除处理机和内存外,都是设备管理的对象,主要是一些输入/输出设备和外存。设备管理是操作系统中最为复杂、庞大的部分。 . 记住各类设备的使用状态,按各自不同的性能特点进行分配和回收。 . 为各类设备提供相应的设备驱动程序、启动程序、初始化程序以及控制程序等,保证输入输出操作的顺利完成。 . 利用中断、通道等技术,尽可能地使CPU与外部设备、外部设备与外部设备之间并行工作,以提高整个系统的工作效率。 . 根据不同的设备特点,采用优化策略,使对具体设备的使用更趋合理和有效。
1.3 操作系统的种类 . . . . . . 1.3.1 批处理操作系统 5. 文件管理的功能 程序与数据以文件的形式存放在外存(如硬盘、软盘)上,是计算机系统的软件资源。用户是通过文件的名称来访问所需要的文件的,这就是所谓的“按名存取”方式。 . 维持一个目录表,里面登记有每一个文件的名称和有关信息(这就是该文件的目录项)。当用户通过文件名来访问某文件时,可以通过查目录表找到它的目录项,从而完成所需的读/写操作。 . 由于文件存放在外存,因此要随时记住外存上文件存储空间的使用情况,哪些已经分配,哪些为空闲待分配。 . 制定文件存储空间的分配策略,实施具体的分配和回收。 . 确保存放在外存上文件的安全、保密和共享。 . 提供一系列文件使用命令,以便用户能对文件进行存取、检索、更新等操作。 1.3 操作系统的种类 1.3.1 批处理操作系统 . 要求系统配置管理程序,以保证一个个作业程序能自动地进入内存处理,此时人工不得干预。这就是“单道批处理操作系统”。“单道”的意思是指一次只让一个作业程序进入系统内存加以运行,也可以说它是一个单用户操作系统。
. . . . . . . . 1. 单道批处理操作系统的工作过程 2. 单道批处理操作系统的特点 用户为自己的作业编写程序和准备数据,同时编写控制作业运行的作业说明书。然后将它们一并交给操作员。 . 用户为作业编写程序和准备数据,同时编写控制作业运行的作业说明书。然后将它们一并交给操作员。 . 操作员将收到的一批作业信息存入辅助存储器中等待处理。 . 单道批处理操作系统从辅存中依次选择作业,按作业说明书的规定自动控制作业的运行,并将运行结果存入辅助存储器。 . 操作员将该批作业的运行结果打印输出,并分发给用户。 2. 单道批处理操作系统的特点 . 单路性:每次只允许一个用户程序进入内存。 . 独占性:整个系统资源被进入内存的一个程序独占使用,因此资源利用率不高。 . 自动性:作业顺序地自动接受处理,期间任何用户不得对系统的工作进行干预。 . 封闭性:在一批作业处理过程中,用户不得干预系统的工作。即便是某个程序执行中出现很小的错误,也只能等到这一批作业全部处理完毕后,才能进行修改。这给用户带来不便。
. . . . . . . . 3. 多道批处理操作系统的工作过程 4. 多道批处理操作系统的特点 在单道批处理的基础上,引入多道程序设计技术,允许若干个作业程序同时装入内存,造成对系统资源共享与竞争的态势,就产生了多道批处理操作系统。 . 用户为自己的作业编写程序和准备数据,同时编写控制作业运行的作业说明书。然后将它们一并交给操作员。 . 操作员将收到的一批作业信息存入辅助存储器中等待处理。 . 作业调度程序从辅助存储器里的该批作业中选出若干合适的作业装入内存,使它们不断地轮流占用CPU执行,并同时使用各自所需的外部设备。 . 操作员将该批作业的运行结果打印输出,分发给用户。 4. 多道批处理操作系统的特点 . 多路性:每次允许多个用户程序进入内存,它们轮流交替地使用CPU,提高了内存储器和CPU的利用率。 . 共享性:整个系统资源被进入内存的多个程序共享使用,因此整个系统资源的利用率较高。 . 自动性:作业处理期间任何用户不得对系统的工作进行干预。 . 封闭性:在一批作业处理过程中,用户不得干预系统的工作。即便是某个程序执行中出现很小的错误,也只能等这一批作业全部处理完毕后,才能进行修改。这给用户带来不便。
. . . . . . 1.3.2 分时操作系统 1. 分时操作系统的含义 2. 分时操作系统的特点 工程设计 1.3.2 分时操作系统 1. 分时操作系统的含义 . 将多道程序设计技术与分时技术结合在一起,就产生了分时操作系统。配有分时操作系统的计算机系统称为分时系统。 . 图书管理 科学计算 所谓“分时系统”,即一台计算机与多个终端连接,用户通过终端向系统发命令,请求完成某项工作。系统完成任务后,把执行结果返回用户。用户重复这种交互会话过程,直至实现预定目标。 文本编辑 市场调查 2. 分时操作系统的特点 . 多路性:从宏观上看,多个用户在同时工作,共享系统的资源;从微观上看,各终端程序是轮流地运行一个时间片。多路性提高了系统资源的整体利用率。 . 交互性:用户在终端上能随时通过键盘与计算机进行“会话”,从而获得系统的各种服务,并控制作业程序的运行。 . 独立性:每个用户在自己的终端上彼此独立操作,互不干扰,感觉不到其他用户的存在,就如同自己“独占”该系统在使用似的。 . 及时性:用户程序轮流执行一个 CPU 的时间片,由计算机的高速处理能力,能保证在较短和可容忍的时间内给予用户请求进行响应和完成处理。
. . . . . 1.3.3 实时操作系统 1. 实时操作系统的含义 2. 实时操作系统的特点 1.3.3 实时操作系统 1. 实时操作系统的含义 . 所谓“实时”,是指能及时响应随机发生的外部事件、并对事件做出快速处理的能力。而“外部事件”,是指与计算机相连接的设备向计算机发出的各种服务请求。 . “实时操作系统 ”是能对来自外部的请求和信号在限定的时间范围内做出及时响应的一种操作系统。 . 用于控制飞机飞行、导弹发射以及冶炼轧钢等生产过程,被称为“实时控制系统”;用于飞机订票、银行业务部门,被称为 “实时信息处理系统”。 反应堆 图 例: 阀门 控制信号 A C 传感装置 测量信号 B 阀门 2. 实时操作系统的特点 . 高及时性:对外部事件信号的 接收、分析处理、以及给出反馈信号 进行控制,都必须在严格的时间限度 内完成。否则可能会引起爆炸、火灾等事故,给人身安全和国家财产造成无法挽回的损失。 计算机系统 记录仪 . 高可靠性:无论是实时控制系统还是实时信息处理系统,都必须有高可靠性。
. . . . . 1.3.4 网络操作系统 1. 网络操作系统的含义 2. 网络操作系统的基本功能 1.3.4 网络操作系统 1. 网络操作系统的含义 . 所谓“计算机网络”,是指把地理上分散的、具有独立功能的多个计算机和终端设备,经通信线路加以连接,达到数据通信和资源共享目的的计算机系统。 . 在网络范围内,用于管理网络通信和共享资源,协调各计算机上任务的运行,并向用户提供统一的、有效方便的网络接口的程序集合,称为“网络操作系统”。 2. 网络操作系统的基本功能 . 主机 网络通信:为通信双方建立和拆除通信通路,实施数据传输, 对传输过程中的数据进 行检查和校正。 因特网 主机 各种 网络 . 因特网 资源管理:采 用统一、有效的策略, 协调诸用户对共享资源 的使用,用户使用远地资源如同使用本地资源似的。 . 提供网络接口:向网络用户提供统一的网络使用接口,以便用户能方便地上网,方便地使用共享资源,方便地获得网络提供的各种服务。
. . . . . . 1.3.5 分布式操作系统 3. 计算机网络系统的特点 1. 分布式操作系统的含义 提供网络服务:向用户提供多项网络服务,如电子邮件服务,它为各用户间发送与接收信息,提供快捷、简便、廉价的现代化通信手段;如远程登录服务,它使一台计算机能登录到另一台计算机上,使自己的计算机就像一台与远程计算机直接相连的终端一样进行工作,获取与共享所需要的各种信息;再如文件传输服务,他允许用户把自己的计算机连接到远程计算机上,查看那里有哪些文件,然后将所需文件从远程计算机复制到本地计算机,或将本地计算机中的文件复制到远程计算机中。 3. 计算机网络系统的特点 . 自治性:在网络中的每台计算机都有自己的内存储器、I/O设备,安装有自己的操作系统,因此具有很强的自治性,能独立承担分配给它的任务。 . 分散性:系统中的计算机分布在不同的地域,有各自的任务。 . 互联性:网络中分散的计算机及各种资源,通过通信线路实现物理上的连接,进行信息传输和资源共享。 . 统一性:网络中的诸计算机,使用统一的网络命令。 1.3.5 分布式操作系统 1. 分布式操作系统的含义 . 如果一个计算机网络系统,其处理和控制功能被分散在系统的各个计算机上,系统中的所有任务可动态地分配到各个计算机中,使它们并行执行,实现分布处理。这样的系统被称为“分布式系统”,其上配置的操作系统,被称为“分布式操作系统”。
. 在分布式系统里,操作系统是以全局方式来管理系统的。用户把自己的作业交付给系统后,分布式操作系统会根据需要,在系统里选择最适合的若干计算机去并行地完成该任务;在完成任务过程中,分布式操作系统会随意调度使用网络中的各种资源;在完成任务后,分布式操作系统会自动把结果传送给用户。 . 在分布式操作系统管理下,用户只需提出需要什么,不必具体指出需要的资源在哪里。这是高水平的资源共享。 2. 分布式操作系统的特点 . 并行性:一方面,系统内有多个实施处理的部件(比如计算机),可以进行真正的并行操作;另一方面,分布式操作系统的功能也被分解成多个任务,分配到系统的多个处理部件中同时执行。这样,提高了系统的吞吐量,缩短了响应时间。 . 扩展性:分布式系统可方便地增加新的部件或新的功能模块。比如,公司业务增加到一定程度时,原先的计算机系统可能不再胜任。采用分布式系统,只需为系统增加一些处理机就可以解决问题。 . 可靠性:分布式系统把工作分散到众多机器上,单个部件的故障,最多只会影响到一台机器,其他机器不会受到干扰。 . 共享性:分布式系统在全系统范围内实现资源的动态分配,平衡负载,用户只需提出需要什么,无需知道他所使用的资源在何处。 . 健壮性:任何站点发生的故障都不会给整个系统造成太大的影响。当系统中的设备出现故障时,可通过容错技术实现系统的重构,以保证系统的正常运行。
. . . . . 1.3.6 嵌入式操作系统 1. 嵌入式 系统和嵌入式操作系统 2. 嵌入式操作系统的重要特征 1.3.6 嵌入式操作系统 1. 嵌入式 系统和嵌入式操作系统 . 所谓“嵌入式系统”,是指“用于控制、监视或者辅助操作机器和设备的装置”。它更一般性的定义是:以应用为中心、以计算机技术为基础、软件硬件可裁剪、功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。 . 用于嵌入式系统的操作系统,为嵌入式操作系统。因此,嵌入式操作系统大多用于机电设备、仪器仪表等方面。 2. 嵌入式操作系统的重要特征 . 系统内核微型化:嵌入式操作系统的运行平台嵌入在设备中的特殊计算机,资源相对有限。因此,嵌入式操作系统必须做得非常小,嵌入式系统中的软件,都被固化在存储器芯片或单片机中。 . 专用性强:嵌入式系统的硬件平台多种多样,个性化强,软件系统和硬件的结合非常紧密。一般地,软件要针对硬件进行系统的移植。 . 高实时性:嵌入式系统广泛应用于过程控制、数据采集、通信、多媒体信息处理等要求获得快速响应的设备中。因此,嵌入式操作系统都应该是实时操作系统,这是对嵌入式软件的基本要求。
. 可靠性:嵌入式系统一旦开始运行,用户就很少能够进行干预。因此,负责系统管理的嵌入式操作系统必须稳定、可靠,不能有任何差错。 . 可剪裁性:基于应用的多样化,嵌入式操作系统应该具有很强的适应能力,应该能够根据应用系统的特点和要求,灵活配置,方便剪裁,伸缩自如。 3. 嵌入式系统与微机的比较 . 嵌入式系统多是专用系统,微机则是通用系统。 . 嵌入式系统的可用资源,要比微机少的多。 . 嵌入式系统软件故障带来的后果,要比微机大得多。 . 嵌入式操作系统都是实时的,微机配备的操作系统一般都是通用的。 . 嵌入式系统大都会提出有关成本和功耗等的要求。 . 嵌入式系统需要专用的开发工具。