1、 操作系统 第1章 计算机操作系统概论 操作系统全册配套最完整操作系统全册配套最完整 精品课件精品课件3 操作系统 第1章 计算机操作系统概论 现在,人们越来越多地与计算机打交道。人与计算机之间 如何交往?如何让计算机按照人的意愿去工作?这些问题都 密切关系到操作系统。人们要用好计算机、学好计算机都必 须学好操作系统。操作系统是计算机系统中一个最重要的软 件,它由一组程序组成,这组程序能够有效的组织和管理计 算机系统中的资源,合理的组织计算机工作流程和控制程序 的执行,使计算机高效地运行,并向用户提供各种服务功能, 使用户能够方便地使用计算机。操作系统的目标是管理好资 源、方便用户和提高效率。
2、本章作为操作系统概论,总体介 绍了操作系统的发展、操作系统基本概念、操作系统的结构、 操作系统的类型、操作系统的特征和功能及其运行环境,最 后介绍四种当前主流的操作系统。 第第1 1章章 操作系统概论操作系统概论 教学提示教学提示 操作系统 第1章 计算机操作系统概论 本章总体要求是:了解操作系统的发展 过程;掌握并理解操作系统基本概念、结构、 类型、特征和功能及其运行环境; 教学目标教学目标 操作系统 第1章 计算机操作系统概论 第第1 1章章 操作系统概论操作系统概论 n1. 1 操作系统的形成与发展操作系统的形成与发展 n1. 2 操作系统的基本概念操作系统的基本概念 n1. 3 操作系
3、统的结构操作系统的结构 n1. 4 操作系统的硬件操作系统的硬件 n1. 5 当前当前操作系统简介操作系统简介 操作系统 第1章 计算机操作系统概论 l操作系统的定义操作系统的定义 l掌握操作系统的特征掌握操作系统的特征 l操作系统的功能操作系统的功能 l操作系统的类型操作系统的类型 l操作系统结构操作系统结构 本章要点本章要点 操作系统 第1章 计算机操作系统概论 1. 1 操作系统的形成与发展操作系统的形成与发展 1.1.1 1.1.1 人工操作方式人工操作方式 计算机诞生初期并没有操作系统,人们采用手工 操作方式使用计算机,信息的输入输出由人工在联机 状态下进行。首先程序员将事先穿孔的纸
4、带(或卡片) 装入纸带输入机(或卡片输入机),把程序和数据输 入给计算机,然后启动计算机运行,当程序运行完毕 并取走计算结果后,才让下一个用户上机。这种方式 有两个缺点: (1)资源独占:每次只能一个用户使用计算机, 一切资源全部由该用户所占有,资源利用率低。 (2)CPU等待人工操作:当用户进行装纸带(卡 片)、卸纸带(卡片)等人工操作时,CPU处于等待人 工操作的空闲状态。 操作系统 第1章 计算机操作系统概论 1.1.2 1.1.2 脱机输入输出技术脱机输入输出技术 该技术是指事先将装有用户程序和数据的纸带(或 卡片)装入纸带(或卡片)输入机等输入设备,在一台外围 机的控制下把纸带(卡片
5、)上的数据(程序)输入到磁带上。 当CPU需要这些程序和数据时再从磁带机高速输入到内 存。类似地,当CPU需要输出时,把数据从内存送到磁 带上,然后再在另一台外围机的控制下,将结果通过相 应的输出设备输出。主要特点: (1) 减少了CPU的空闲时间 :将数据从低速I/O设 备送到高速的磁带(或磁盘)上时,都是在脱机情况下 进行的,它们不占用主机时间。 操作系统的形成与发展操作系统的形成与发展-2 操作系统 第1章 计算机操作系统概论 (2) 提高了I/O速度 :当CPU在运行中 需要数据时,是直接从高速而不是低速的 磁带或磁盘上将数据调入内存的。 输入设备 输出设备 外 围 计 算 机 输 入
6、 磁 带 输 出 磁 带 主 机 脱机输入输出过程 操作系统 第1章 计算机操作系统概论 1.1.3 1.1.3 批处理技术批处理技术 把一批作业以脱机输入方式输入到磁带(高速设 备)上,并在系统中配上监督程序,在它的控制下一 个个装入内存,一个个执行磁带上的作业,使这批 作业能一个接一个地连续处理,直到把磁带上的所 有作业全部处理完毕。 优点:是解决了作业间的自动转换问题,提高 CPU利用率 操作系统的形成与发展操作系统的形成与发展-3 操作系统 第1章 计算机操作系统概论 1.1.4 1.1.4 多道程序设计技术多道程序设计技术 多道程序设计技术指在主存中同时存放多个作业, 并允许它们交替
7、执行,多道程序程序设计系统的出现标 志着操作系统渐趋成熟的阶段。 在操作系统中引入多道程序设计技术以后,会使系 统具有以下特征 : (1) 多道性。在内存中可同时驻留多道程序,并允 许他们并发执行,从而有效提高了资源的利用率和系统 的吞吐量。 (2) 无序性。多个作业完成的先后顺序与他们进入 内存的顺序之间无严格的对应关系 (3) 宏观上并行、微观上串行。从宏观上看同时存 在于内存中的多道作业都处于运行状态 ,但从微观上 看,由于我们讨论的是单CPU系统,内存中的多道作业 轮流、交替地使用CPU系统,各作业仍是串行的 。 操作系统 第1章 计算机操作系统概论 CPU A I/O A B I/O
8、 A I/O AB B I/O t1 t3 t4 t5 t 单道程序工作过程 CPU A I/O B I/O ABA B t t1 t2 t3 t4 t5 多道程序执行过程 操作系统 第1章 计算机操作系统概论 1. 2 操作系统的基本概念操作系统的基本概念 计算机系统中的各种程序、数据和各种硬件设备 统称为计算机系统中的资源 。由谁来管理计算机系统 中的资源呢?承担这一任务的就是操作系统。 1.2.1 操作系统的定义操作系统的定义 操作系统(Operating System,简称OS)就是有 效的管理计算机系统中的各种资源,合理的组织计算 机的工作流程,以方便用户的一组软件构成的集合。 操作
9、系统 第1章 计算机操作系统概论 操作系统是现代计算机系统的重要组成部分, 它是计算机系统运行和工作必不可少的软件,各 种类型的计算机系统都离不开操作系统。 用 户 应用软件或应用系统 其它的系统软件 操作系统 计算机硬件 计算机系统的抽象层次结构 1.2.2 1.2.2 操作系统的地位操作系统的地位 操作系统是在计算 机硬件的基础上对硬件 进行的第一层扩充,它 是计算机系统中最核心 的系统软件,其它的系 统软件和应用软件都是 在操作系统的基础上构 建起来的。 操作系统 第1章 计算机操作系统概论 以多道程序设计为基础的现代操作系统具有以下 主要特征: 1 1. .并发性(并发性(Concur
10、renceConcurrence):): 在操作系统中,并发性是指多个事件在同一时间 间隔内发生,对计算机而言,并发是指在一段时间内, 多道程序“在宏观上同时运行”。 现代操作系统是并发系统的管理机构,其本身就 是与用户程序一起并发执行的。程序的并发执行带来 了程序串行执行所没有的新问题,并导致操作系统对 程序管理的复杂化,以及操作系统本身的复杂化。 1.2.3 1.2.3 操作系统的特征操作系统的特征 操作系统 第1章 计算机操作系统概论 2. 2. 虚拟性(虚拟性(VirtualVirtual) 虚拟的含义是把一个物理实体映射为多个逻辑 意义上的实体。前者是客观存在的,后者是虚构的, 是一
11、种感觉性的存在。即主观上的一种假象。例如, 在多道程序系统中,虽然只有一个CPU,每次只能 执行一道程序,但采用多道程序技术后,在一段时 间间隔内,宏观上有多个程序在运行。在用户看来, 就好象有多个CPU在各自运行自己的程序。这种情 况就是将一个物理的CPU虚拟为多个逻辑上的CPU, 逻辑上的CPU称为虚拟处理机。类似的还有虚拟存 储器、虚拟设备等。 操作系统的第二个特征操作系统的第二个特征 操作系统 第1章 计算机操作系统概论 3. 3. 共享性共享性(Sharing)(Sharing) 操作系统是多道程序的管理机构。它使多个用 户作业共享有限的计算机系统资源。 从概念上讲,计算机系统的所有
12、资源都是共享 的,但共享又分成两种不同的类型:互斥共享和同 时共享。所谓互斥共享是指资源的分配以作业(或 进程)为单位,当一个作业未使用完这个资源前, 别的作业就不能同时使用 。而同时共享,则是指 多个作业都能“同时”使用资源,即当一个作业已 开始使用某个资源但又尚未使用完毕,另一个作业 也能使用。 操作系统的第三个特征操作系统的第三个特征 操作系统 第1章 计算机操作系统概论 4. 4. 不确定性(不确定性(NondeterministicNondeterministic) 所谓操作系统的不确定性,是指在操作系 统控制下多道作业的执行顺序和每个作业的执 行时间是不确定的。例如,有三个作业,两
13、次 或多次运行的执行序列可能不相同,每一个作 业占有计算机的时间也可能不相同。 操作系统的第四个特征操作系统的第四个特征 操作系统 第1章 计算机操作系统概论 1 1 处理机管理处理机管理 在多道程序或多用户的环境下,要组织多个作业 同时运行,就要解决处理机的管理问题。在多道程序 环境下,处理机的分配和运行都是以进程为单位的, 因而对处理机的管理可归结为对进程的管理。包括: 进程控制、进程调度、进程同步和进程通信 。 2 2 存储管理存储管理 存储管理的主要任务是为多道程序的运行提供 良好的环境,方便用户使用存储器,并提高主存的利 用率。存储管理包括:地址重定位 、存储分配 、存 储保护 、存
14、储扩充 。 1.2.4 1.2.4 操作系统的功能操作系统的功能 操作系统 第1章 计算机操作系统概论 3 3 设备管理设备管理 设备管理包括:缓冲管理 、设备分配 、设 备处理和设备独立性和虚拟设备。 4 4 文件管理文件管理 文件管理主要对系统中的软件资源进行管理, 即对用户文件和系统文件进行管理。文件管理包 括:目录管理 、文件读写管理 、 文件存取控 制和文件存储空间管理。 操作系统的功能操作系统的功能 操作系统 第1章 计算机操作系统概论 5 5 用户接口用户接口 (1 1)命令接口)命令接口:命令接口也称作业级接口,分为联机命 令接口和脱机命令接口。 联机命令接口是为联机用户提供的
15、,它由一组键 盘命令及其解释程序组成的,当用户在终端或控制台 输入一条命令后,系统便自动转入命令解释程序,对 该命令进行解释并执行。 脱机命令接口是为批处理系统的用户提供的,在 批处理系统中,用户不直接与自己的作业进行交互, 而是使用作业控制语言的语句,写成作业说明书,然 后将作业说明书连同作业一起,以卡片的形式提交给 系统。当系统调度该作业时,通过解释程序对作业说 明书进行逐条解释并执行。 操作系统的功能操作系统的功能- -用户接口用户接口 操作系统 第1章 计算机操作系统概论 (2) (2) 程序接口程序接口。程序接口是用户获取操作系统服务的唯 一途径。程序接口由一组系统调用组成。每一个系
16、统 调用都是一个完成特定功能的子程序 (3) (3) 图形接口图形接口。图形接口不需要记忆命令,图形接口的 目标是对出现在屏幕上的对象直接进行操作,以控制 和操纵程序的运行。这种图形用户接口大大减免用户 记忆的工作量,受到用户的欢迎。图形用户接口的主 要构件是:窗口、菜单和对话框。 操作系统的功能操作系统的功能- -用户接口用户接口 操作系统 第1章 计算机操作系统概论 1.2.5.1 1.2.5.1 批处理系统批处理系统 批处理系统也称为作业流处理系统,主要用在科 学计算的大中型机上。它的特点是采用脱机技术将众 多的作业送入计算机系统,然后由批处理系统按批选 择作业进行处理 。 所追求的目标
17、是系统吞吐量大,作业周转时间短, 资源使用效率高等 。 批处理系统可以分为单道批处理、多道批处理。 1.2.5 1.2.5 操作系统的基本类型操作系统的基本类型 操作系统 第1章 计算机操作系统概论 1.2.5.2 1.2.5.2 分时系统分时系统 分时系统是多用户共享系统,一般使用 一台计算机连接多个终端,各用户通过相应 的终端使用计算机。其特点是人-机交互性, 即用户通过终端控制台向计算机主机提出处 理请求,在主机上运行的操作系统检查用户 提出请求的合法性,检查通过后对该请求进 行处理,然后将处理结果反馈给终端上的用 户。 操作系统的基本类型操作系统的基本类型-2-2 操作系统 第1章 计
18、算机操作系统概论 1.2.5.3 1.2.5.3 实时系统实时系统 实时控制系统和实时信息处理系统统称为实时 系统。所谓“实时”,是表示“及时”、“即 时”;而实时系统是指系统能及时(或即时)响 应外部事件的请求,在规定的时间内完成对该事 件的处理,并控制所有实时任务协调一致地运行。 操作系统的基本类型操作系统的基本类型-3-3 操作系统 第1章 计算机操作系统概论 中 心 计 算 机 终端1终端2终端n 分时工作方式 操作系统 第1章 计算机操作系统概论 1.2.5.4 1.2.5.4 网络操作系统网络操作系统 简单的说,网络操作系统就是在计算机网络环 境下具有网络功能的操作系统。 作为网络
19、操作系统,它还具有以下功能: (1) 实现网络中各节点机之间的通信; (2) 实现网络中硬、软件资源的共享; (3) 提供多种网络服务软件; (4) 提供网络用户的应用程序接口。 操作系统的基本类型操作系统的基本类型-4-4 操作系统 第1章 计算机操作系统概论 操作系统的基本类型操作系统的基本类型-5-5 1.2.5.5 1.2.5.5 分布式操作系统分布式操作系统 分布式系统的主要特点是:各节点的自治性;资 源共享的透明性;各节点间的协同性;系统的坚定性。 在分布式系统中使用的操作系统是分布式操作系 统。分布式操作系统的主要特点是:系统状态的不精 确性 、 控制结构的复杂性 、 通信开销引
20、起性能下 降。 操作系统 第1章 计算机操作系统概论 1.3 操作系统的结构操作系统的结构 1.3.1 1.3.1 无序模块式无序模块式 操作系统是由很多相关模块组成的一组程序,在 无序模块式机构中,系统中每个模块都有定义良好的 接口,相互间的调用不受约束。这种方法的主要优点 是结构紧密,组合方便,灵活性大;主要缺点是模块 独立性差,系统结构不清晰,难以保证可靠性。 操作系统 第1章 计算机操作系统概论 1.3.2 1.3.2 分层式分层式 分层结构法将操作系统的模块分成多个层次,各层 次之间是单向依赖关系。单向依赖是指只允许上层的模 块调用下层的模块,不能反向调用 。层次结构的中心是 裸机本
21、身所提供的各种功能,向外扩展的每一层都提供 一种功能,这种功能只依赖该层以内的各个层次,这种 结构的各层依次组成了一系列虚拟机,紧挨裸机的是操 作系统内核,而最外层就是具备用户所需要功能的虚拟 机。 操作系统的结构操作系统的结构-2 操作系统 第1章 计算机操作系统概论 操作系统分层结构 操作系统 第1章 计算机操作系统概论 1.3.3 1.3.3 客户客户/ /服务器模型服务器模型 采用客户/服务器模式构造的操作系统的基本思想是, 把操作系统划分为若干进程,其中每个进程实现单独的 一套服务(功能)。每一个服务对应一个服务器,客户 可以是一个应用程序,也可以是另一操作系统成分。它 通过发送一条
22、消息给服务器请求一项服务。运行在核心 态下的操作系统内核把消息传送给服务器。由服务器执 行具体操作,其结果经由内核用一消息返回给用户。 采用客户/服务器模型的好处是:简化操作系统核 心 、改进可靠性和独立性 、完全适宜于分布式计算模 型。 操作系统的结构操作系统的结构-3 操作系统 第1章 计算机操作系统概论 1.3.3 1.3.3 客户客户/ /服务器模型服务器模型 客户 应用程 序 内存 服务器 网络 服务器 进程 服务器 文件 服务器 显示 服务器 微核 硬件 发送 接受 用户态 核心态 客户/服务器操作系统 操作系统 第1章 计算机操作系统概论 1.4 操作系统的硬件环境操作系统的硬件
23、环境 1.4.1 CPU1.4.1 CPU与外设并行工作与外设并行工作 通道又称I/O处理机,它能完成主存和外设间的 信息传输,并与中央处理器并行操作。采用通道技 术实现了I/O操作的独立性和各部件工作的并行性。 通道把CPU从繁琐的输入输出操作中解放出来。 采用通道技术后,不仅能够实现CPU与通道的并行 操作,而且通道与通道之间也能实现并行操作,各 通道的上的外设也能实现并行操作,从而可达到提 高计算机系统工作效率的目的。 操作系统 第1章 计算机操作系统概论 操作系统的硬件环境操作系统的硬件环境-I/O-I/O中断中断 1.4.2 I/O1.4.2 I/O中断中断 中断指的是:对异步或例外
24、事件的一种响应,这一 响应自动保存CPU状态以便将来重新启动自动转入中断 处理程序。 中断的引进,最初是为了实现外部设备和CPU的并 行工作,但这一概念到后来被扩展了。现在,在系统 中发生的需要处理机暂停正在执行的程序转而进行所 要干预的所有事件,都要通过中断机构进行处理。 操作系统 第1章 计算机操作系统概论 1.4.3 1.4.3 管态与目态管态与目态 管态也称核态或系统态。机器处于管态时程序可执行硬 件所提供的全部指令,包括特权指令和非特全指令。通常操 作系统程序在管态下运行。 目态也称常态或用户态。机器处于目态时程序只能执行 硬件机器指令系统的一个子集,即非特全指令集合。通常, 用户程
25、序在目态下运行。如果用户程序在目态执行特权指令, 硬件将产生中断,由操作系统获得控制,特权指令的执行被 制止。 设置管态和目态的目的是赋予操作系统执行某些特殊 指令的特权,以保证计算机系统的安全工作。 1.4 1.4 操作系统的硬件环境操作系统的硬件环境- -管态和目态管态和目态 操作系统 第1章 计算机操作系统概论 1.4.4 1.4.4 存储保护存储保护 (1)界限寄存器 界限寄存器方法是在CPU中设置一对界限寄存 器,分别存放现行程序在内存中的下限地址和上限地 址,每当执行访内操作时,硬件将自动检查被访问的 内存地址是否处于寄存器所限定的地址范围内,若越 出范围便产生地址越界中断,表示这
26、是非法访问。只 有操作系统可以访问全内存。 操作系统的硬件环境操作系统的硬件环境- -存储保护存储保护 操作系统 第1章 计算机操作系统概论 (2)存储保护键 一些计算机系统将内存划分成若干定长的存储块, 并赋予每个存储块一个附加的不在编址范围内的存储 保护键。当有作业进入内存时,操作系统赋予它一个 唯一的保护键码,并将分配给该作业的各存储块也置 成同样的保护键码。当该作业被调度到CPU上执行时, 操作系统同样将其保护键码置入现行PSW中“键”字段 中。此后每当执行访内操作时,硬件将先检查该存储 块的保护键码与现行PSW中键值是否匹配。若匹配才允 许访问。 操作系统 第1章 计算机操作系统概论
27、 1.5 当前主流操作系统简介当前主流操作系统简介 1.5.1 Windows 1.5.1 Windows 操作系统操作系统 Windows操作系统特点如下: (1) 具有丰富多彩的图形用户界面,以全新的图标、菜单和对话方 式支持用户操作,使计算机的操作使用更加方便、容易。 (2) 支持多任务运行,多任务之间可方便地切换和交换信息。 (3) 充分利用了硬件的潜在功能,提供了虚拟存储功能等内存管理 能力。 (4) 提供了方便可靠的用户操作管理,如程序管理器、文件管理器、 打印管理器、控制面板等操作,可完成文件、任务和设备的并行 管理。 操作系统 第1章 计算机操作系统概论 1.5.2 Windo
28、ws NT1.5.2 Windows NT操作系统操作系统 Windows NT是Microsoft推出的可在个人机和其他各 种CISC、RISC芯片上运行的真正32位、多进程、多道 作业的操作系统,并配置了廉价的网络和组网软件, 应用程序阵容强大。NT即New Technology之意,WinNT 主要是为客户机/服务器而设计的操作系统。它采用了 抢占式多任务调度机制(preemptive multitasking), 每一应用系统能够访问2GB的虚拟存储器空间,建立在 通用计算机代码Unicode(UCS的子集)的基础上。 操作系统 第1章 计算机操作系统概论 1.5.3 Linux1.5
29、.3 Linux操作系统操作系统 UNIX操作系统是全球闻名的强功能的分时多用户多任 务操作系统,UNIX系统是一种开放式的操作系统,它具有 以下特点: (1) 它是一个真正的多用户、多任务的操作系统,也是一 种著名的分时操作系统。 (2) 具有短小精悍的系统内核和功能强大的核外程序。 (3) 具有典型的树型结构的文件系统,并可建立可拆卸的 文件子系统。 (4) 具有良好的可移植性,便于系统开发和应用程序开发。 (5) 虽然用户操作界面多采用命令行方式,但其强有力的 SHELL编程环境,既成为命令解释工具,又成为一种编程 语言。并具有X-Window等强大的图形显示环境。 操作系统 第1章 计
30、算机操作系统概论 1.5.4 Linux1.5.4 Linux操作系统操作系统 Linux操作系统是UNIX操作系统在微机上的实现,它最 早于1991年开发出来并在网上免费发行。Linux的开发得 到了Internet上许多UNIX程序员和爱好者的帮助,可以说 它是由一群自愿人员开发出来的操作系统,整个操作系统 的设计是开放式的和功能式。它具有如下特点: (1)Linux是一个完全多任务多用户操作系统,同时融合了网 络操作系统的功能。 (2) Linux 可支持各种类型的文件系统。Ext2文件系统已被 设计为Linux专用。 (3) Linux 提供TCP/IP网络协议的实现。 (4) Lin
31、ux支持字符和图形界面。其上现在使用的图形界面是 X Free86版,它支持多种显示器,是一个完整的X窗口软 件。 操作系统 第1章 计算机操作系统概论 本章小结本章小结 本章作为操作系统概论,介绍了操作系统的发展、操作系统 基本概念及其运行环境,最后介绍四种当前主流的操作系统。 从第一台计算机诞生到现在,操作系统也经历了从无到有 的过程,计算机诞生初期人工操作方式没有操作系统;50年 代末出现了脱机输入输出技术,解决人机及CPU和I/O设备之 间速度不匹配的矛盾;以监督程序来管理和控制其他程序的 方式,形成了操作系统的雏形;多道程序程序设计系统的出 现标志着操作系统渐趋成熟的阶段。 操作系统
32、是计算机系统中一个最重要的软件,它由一组程 序组成,这组程序能够有效的组织和管理计算机系统中的资 源,合理的组织计算机工作流程和控制程序的执行,使计算 机高效地运行,并向用户提供各种服务功能,使用户能够方 便地使用计算机。操作系统的目标是方便用户、提高效率和 操作系统 第1章 计算机操作系统概论 管理好资源。现代操作系统具有四个主要特征:并发性、 虚拟性、共享性和不确定性。从资源管理的角度出发, 操作系统管理系统中的所有资源,具有内存管理、处理 机管理、设备管理、作业管理和文件管理等功能。 操作系统是加在裸机上的第一层软件,它的功能与运 行直接依赖于硬件环境,与硬件的关系尤为密切,中断 和通道
33、是实现多道程序设计技术的基础。中断机构是现 代计算机系统的基本设施之一,它在系统中起着通信联 络的作用,以协调系统对异步事件的响应和处理;通道 又称I/O处理机,它能完成主存和外设间的信息传输,并 与中央处理器并行操作,通道技术实现了I/O操作的独立 性和各部件工作的并行性;设置处理机管态和目态的目 的是赋予操作系统执行某些特殊指令的特权,以保证计 算机系统的安全工作。 操作系统 第1章 计算机操作系统概论 本章学习目标本章学习目标 返回本章首页 1、作业的概念 2、作业调度的概念 3、作业调度的基本算法 4、操作系统为用户提供的几种接口。 第2章 作业管理 操作系统 第1章 计算机操作系统概
34、论 2.1 作业的概念作业的概念 使用计算机来计算来运行用户程序有三个步骤: (1)用某种语言(例如FORTRAN语言)编制一个程 序, 它被称为源程序。 (2)将源程序和初始数据记录在某种输入介质上。例 如穿成一盘纸带,或在终端设备(包括键盘、显示 器)上直接编辑源程序。 (3)按照一定要求来控制计算机工作,并经过加工最 后算出结果。 返回本章首页 操作系统 第1章 计算机操作系统概论 (1)编辑(修改):建立新文件或是对原有文 件进行修改。 (2)编译:请求系统把修改好的源程序翻译成 浮动目标模块,并将它放在磁盘上,也可以穿 孔输出或二者有之。 (3)链接:请求系统把主程序模块和其他所需
35、要的子程序和例行程序链接装配在一起,成为 一个可执行的完整的内存映像文件。 下一页 操作系统 第1章 计算机操作系统概论 返回本节 操作系统 第1章 计算机操作系统概论 作业,即用户在计算机系统中完成一个任务的过程。 一个作业由3部分组成,即程序、数据及作业说明书。 其中,作业说明书体现了用户对作业的控制意图。 2.1 作业的概念 操作系统 第1章 计算机操作系统概论 2.2 作业调度 2.2.1 作业的状态及其转换 一个作业从进入系统到退出系统一般要经过提交、后备、执行、 完成这4个状态。其状态及转换如图2.1所示。 提交 后备 后备 运行 就绪阻塞 完成 操作系统 第1章 计算机操作系统概
36、论 (1) 提交状态。一个作业通过用户由输入设备进入输入系统的过程, 称作提交状态。 (2) 后备状态。作业提交后,由系统为该作业建立作业控制块(JCB, Job Contrd Block),并把它插入后备作业队列中,等待作业调度 程序的调度。 (3) 执行状态。后备状态的作业若被作业调度选中,并且分配了必 要的资源,由作业调度程序建立相应的进程。这一状态被称为执行 状态。 (4) 完成状态。当作业执行结束后,进入作业完成状态。此时,由 作业调度程序对该作业进行善后处理,主要表现为撤消作业的作业 控制块,并回收此作业占用的系统中的资源数。最后,将作业的结 果输出到外设之中。 操作系统 第1章
37、计算机操作系统概论 2.2.2 作业调度 作业调度就是按一定的算法从后备队列中选择一个作业送 入内存执行,并在作业完成后处理善后工作的过程。 (1) 作业调度程序的功能。记录进入系统的各个作业情况,作 业一旦进入系统,系统即为该作业分配作业控制块JCB。 (2)按规定的调度策略从后备作业中挑选一些作业投入运行。 (3) 为选中的作业做执行准备。作业从后备状态进入执行状态, 需要建立相应的进程,分配进程所需的内存资源、外设资源, 这些都交给调度程序。 (4) 善后工作处理。当作业因某种原因退出或执行完毕后,作 业调度程序回收作业原先占用的资源,撤消进程及JCB,并输 出结果。 操作系统 第1章
38、计算机操作系统概论 (1)先来先服务(FCFS)算法 (2)短作业优先调度算法(SJF) (3)响应比高者优先调度算法 下一页 2.2.3 常用作业调度算法常用作业调度算法 操作系统 第1章 计算机操作系统概论 作业调度的性能指标作业调度的性能指标 作业调度的原则体现在一个指标,即各作业的平均周 转时间上,如设第i个作业的周转时间为Ti=Tci-Tsc;Tci, Tsc分别为作业的完成时间和作业的提交时间,则平均 周转时间为:T=(Ti)/n;对这个公式涉及的n个作 业,相对于长作业,对T值的影响大,而短作业对T值 的影响小。为了增加短作业对T值的影响,引入平均带 权周转时间的概念。平均带权周
39、转时间定义为:W= (Ti/tri)/n;tri作业的运行时间。一般认为T、W越小, 系统对作业的吞吐量越大,系统的性能越高。 下一页 操作系统 第1章 计算机操作系统概论 (1)作业平均周转时间T (Ti为每个作业的周转时间;tc作业完成时 刻;ts作业进入系统时刻) 操作系统 第1章 计算机操作系统概论 (2)(2)平均带权周转时间平均带权周转时间W W (Ti为每个作业的周转时间;tr为作业实 际运行时间) 操作系统 第1章 计算机操作系统概论 (1)先来先服务()先来先服务(FCFS)算法算法 先来先服务作业调度算法是一种较简单的作业 调度算法,即每次调度是从后备作业队列中选 择一个最
40、先进入该队列的作业,将它调入内存, 分配资源、创建相应的进程,放入进程就绪队 列准备运行。 FCFS算法利于长作业,不利于短作业。 下一页 2.2.3 常用作业调度算法 操作系统 第1章 计算机操作系统概论 (2)短作业优先调度算法()短作业优先调度算法(SJF) 短作业优先调度算法是指操作系统在进行作业调度时 以作业长短作为优先级进行调度。该调度算法可以照 顾到实际上占作业总数绝大部分的短作业,使它们能 比长作业优先调度执行。这时后备作业队列按作业优 先级由高到低顺序排列,当作业进入后备队列时要按 该作业优先级放置到后备队列相应的位置。 实践证明,该调度算法的性能是最好的,单位时间的 作业吞
41、吐量也最大,但也存在缺点:对长作业极为不 利。 。 下一页 操作系统 第1章 计算机操作系统概论 (3)(3)最高响应比优先(最高响应比优先(HRFHRF) 响应比= (作业等待时间+作业执行时间)/作业执行时间 响应比优先即算出的响应比最高的先执行。 操作系统 第1章 计算机操作系统概论 作作业业进进入入时时间间估估计计运运行行时时间间(分分钟钟) J JO OB B1 18 8: :0 00 0 1 12 20 0 J JO OB B2 28 8: :5 50 0 5 50 0 J JO OB B3 39 9: :0 00 0 1 10 0 J JO OB B4 49 9: :5 50 0
42、 2 20 0 例:单道环境下四个作业,它们进入系统的时间如下: (1)给出FCFS , SJF下的作业执行次序 (2)给出FCFS , SJF下的作业平均周转时间和带权平均周 转时间 操作系统 第1章 计算机操作系统概论 作作业业进进入入时时间间 估估计计运运行行时时间间 (分分钟钟) SJF完完成成时时 刻刻 FCFS完完成成时时 刻刻 JOB18:0012010:0010:00 JOB28:505011:2010:50 JOB39:001010:1011:00 JOB49:502010:3011:20 操作系统 第1章 计算机操作系统概论 FCFS : T= ( 120+120+120+
43、90 ) / 4 =112.5 SJF: T=(120+150+70+40)/4=95 FCFS: W=(120/120 + 120/50 +120/10 +90/20)/4=4.975 SJF: W=(120/120 + 150/50 + 70/10 +40/20) /4=3.25 操作系统 第1章 计算机操作系统概论 2.3 用户与操作系统的接口用户与操作系统的接口 2.3 .1 系统调用系统调用 每个操作系统都提供几百种系统调用,包括:外存文件与目 录的读写,各种I/O设备的使用,在程序中启动另一个程序, 查询和统计系统资源使用情况等等。 1. 系统调用的功能 1) 设备管理: 设备的读
44、写和控制; Ioctl设备配置 Open 设备打开 Close 设备关闭 Read 读设备 Write 写设备 2) 文件管理:文件读写和文件控制; Open 文件打开 Close 文件关闭 Read 读文件 Write 写文件 seek读写指针定位 Creat 文件创建 Stat读文件状态 Mount 安装文件系统 chmod修改文件属性 操作系统 第1章 计算机操作系统概论 3) 进程控制:创建、中止、暂停等控制; Fork创建进程 Exit进程自我终止 Wait阻塞当前进程 Sleep 进程睡眠 Getpid读父进程标识 4) 进程通信:消息队列、共享存储区、socket等通信渠道 的建
45、立、使用和删除; 5) 存储管理:内存的申请和释放; 6) 系统管理:设置和读取时间、读取用户和主机标识等; gtime 读取时间 Stime 设置时间 getuid 读取用户标识 操作系统 第1章 计算机操作系统概论 通过系统调用接口也可使用系统命令。 C语言里的system()函数可调用shell来完成命令 如 UNIX系统: system(cp -r doc /tmp) 操作系统 第1章 计算机操作系统概论 系统调用的实现过程系统调用的实现过程 实际上系统调用语句本身是硬件提供的(机器指令),但其 所调用的功能是操作系统提供的。每种机器的机器指令集中 都有一条系统调用指令。 陷入指令 系
46、统子程序 sub 0A0 sub 1A1 sub nAn sub iAi . . 陷入处理机构 1)保护处理 机现场 2)取系统调 用功能号并 寻找子程序 入口 3)恢复处理 机现场并返 回 入口地址表 A0 A2 Ai . . An . . . . 系统调用 . . . . 用户程序 操作系统 第1章 计算机操作系统概论 设置系统调用号和参数。 调用号作为指令的一部分(如早期调用号作为指令的一部分(如早期UNIX),),或装入到特定或装入到特定 寄存器里(如:寄存器里(如:DOS int 21h,AH=调用号。)调用号。) 参数装入到特定寄存器里,或以寄存器指针指向参数表(内参数装入到特定寄
47、存器里,或以寄存器指针指向参数表(内 存区域)。存区域)。 执行trap(int)指令:入口的一般性处理,查入口跳转表,跳转 到相应功能的过程。 保护保护CPU现场现场(将将PC与与PSW入栈入栈),改变,改变CPU执行状态(处执行状态(处 理机状态字理机状态字PSW切换,地址空间表切换)切换,地址空间表切换) 将参数取到核心空间将参数取到核心空间 执行操作系统内部代码; 执行iret指令:将执行结果装入适当位置(类似于参数带入), 恢复CPU现场(以栈顶内容置PSW和PC)。 操作系统 第1章 计算机操作系统概论 系统调用举例系统调用举例 1. 利用系统调用向打印机输出5个字符 方法1:调用
48、DOS功能向打印机输出 MOVE A,PARA1 MOVE B,PARA2 INT 21H 方法2:用OUT指令直接打印 L1:MOVE A,I IN ADDR1,B OR B,BS JNC L1 OUT ADDR2,A RET 操作系统 第1章 计算机操作系统概论 2.3.2 作业级的用户接口 1. 作业控制语言 2. 作业控制命令 3. 用户图形接口 操作系统 第1章 计算机操作系统概论 2.4 作 业 控 制 2.4.1 脱机控制方式 2.4.2 联机控制方式 操作系统 第1章 计算机操作系统概论 本章学习目标本章学习目标 在多道程序环境下,程序不能独立运行。作为资源分配和 独立运行的基
49、本单位是进程。操作系统所有的特征都是 基于进程而体现的。所以,本章的主要问题是: 进程的概念 进程的实体、状态及状态的演变 进程的控制与调度 进程之间的关系 进程的通信 线程 死锁问题及解决返回本章首页返回本章首页 第第3章章 处理机管理处理机管理 操作系统 第1章 计算机操作系统概论 3.1 进程的定义和特征进程的定义和特征 3.1.1 进程的引入 3.1.2 进程的定义 3.1.3 进程的特征 返回本章首页返回本章首页 操作系统 第1章 计算机操作系统概论 3.1.1 进程的引入进程的引入 在多道程序系统中,程序并不能独立运行。独立 运行和资源分配的基本单位是进程。用进程的观点 来研究操作
50、系统,可深入地了解和把握系统内部的 动态活动,这就是所谓研究操作系统进程的观点。 进程也是对操作系统进行设计的一个重要概念。 下一页下一页 操作系统 第1章 计算机操作系统概论 3.1.1 进程的引入进程的引入 1程序的顺序执行及其特性 2程序的并发执行和资源共享 3程序的并发执行特性 下一页下一页 操作系统 第1章 计算机操作系统概论 一个程序由若干个程序段组成,而这些程序段的 执行必须是顺序的,这种程序执行的方式就称为程 序的顺序执行。 例如: 下一页下一页 I1P1O1I2P2O2 1程序的顺序执行及其特性程序的顺序执行及其特性 操作系统 第1章 计算机操作系统概论 1.顺序性 处理机严