计算机操作系统教程第三版张尧学张高史美林著清华大学出版社第1章G

上传人:汽*** 文档编号:567466837 上传时间:2024-07-20 格式:PPT 页数:57 大小:528.02KB
返回 下载 相关 举报
计算机操作系统教程第三版张尧学张高史美林著清华大学出版社第1章G_第1页
第1页 / 共57页
计算机操作系统教程第三版张尧学张高史美林著清华大学出版社第1章G_第2页
第2页 / 共57页
计算机操作系统教程第三版张尧学张高史美林著清华大学出版社第1章G_第3页
第3页 / 共57页
计算机操作系统教程第三版张尧学张高史美林著清华大学出版社第1章G_第4页
第4页 / 共57页
计算机操作系统教程第三版张尧学张高史美林著清华大学出版社第1章G_第5页
第5页 / 共57页
点击查看更多>>
资源描述

《计算机操作系统教程第三版张尧学张高史美林著清华大学出版社第1章G》由会员分享,可在线阅读,更多相关《计算机操作系统教程第三版张尧学张高史美林著清华大学出版社第1章G(57页珍藏版)》请在金锄头文库上搜索。

1、计算机操作系统教程计算机操作系统教程( (第第3 3版版) )清华大学计算机系列教材张尧学 史美林 编著第第1章章 绪论绪论1.1 操作系统概念操作系统概念1.2 操作系统的历史操作系统的历史1.3 操作系统的基本类型操作系统的基本类型1.4 操作系统功能操作系统功能1.5 计算机硬件简介计算机硬件简介1.6 算法的描述算法的描述1.7 研究操作系统的几种观点研究操作系统的几种观点习题习题1.1 操作系统概念操作系统概念1.1.1 什么是操作系统什么是操作系统任何一个计算机系统都是由两部分组成:计算机硬件任何一个计算机系统都是由两部分组成:计算机硬件和计算机软件。计算机硬件通常是由中央处理机和

2、计算机软件。计算机硬件通常是由中央处理机(运算器和控制器)、存储器、输入设备和输出设(运算器和控制器)、存储器、输入设备和输出设备等部件组成。备等部件组成。计算机软件包括系统软件和应用软件。系统软件如操计算机软件包括系统软件和应用软件。系统软件如操作系统、多种语言处理程序作系统、多种语言处理程序( 汇编和编译程序等汇编和编译程序等 )、连接装配程序、系统实用程序、多种工具软件等连接装配程序、系统实用程序、多种工具软件等; 应用软件为多种应用目的而编制的程序。应用软件为多种应用目的而编制的程序。没有任何软件支持的计算机称为裸机没有任何软件支持的计算机称为裸机,它仅仅构成了它仅仅构成了计算机系统的

3、物质基础,而实际呈现在用户面前的计算机系统的物质基础,而实际呈现在用户面前的计算机系统是经过若干层软件改造的计算机。图计算机系统是经过若干层软件改造的计算机。图1.1展示了这种情形。展示了这种情形。图图1.1 操作系统与硬件软件的关系操作系统与硬件软件的关系综上所述,我们可以非形式地把操作系统定义为综上所述,我们可以非形式地把操作系统定义为:操作系统是计算机系统中的一个系统软件,它是这样操作系统是计算机系统中的一个系统软件,它是这样一些程序模块的集合一些程序模块的集合它们管理和控制计算机系它们管理和控制计算机系统中的硬件及软件资源,合理地组织计算机工作流统中的硬件及软件资源,合理地组织计算机工

4、作流程,以便有效地利用这些资源为用户提供一个功能程,以便有效地利用这些资源为用户提供一个功能强大、使用方便和可扩展的工作环境,从而在计算强大、使用方便和可扩展的工作环境,从而在计算机与其用户之间起到接口的作用。机与其用户之间起到接口的作用。1.2 操作系统的历史操作系统的历史人们通常按照器件工艺的演变把计算机发展过程分为人们通常按照器件工艺的演变把计算机发展过程分为四个阶段。四个阶段。1.2.1 手工操作阶段手工操作阶段在第一代计算机时期,构成计算机的主要元器件是电在第一代计算机时期,构成计算机的主要元器件是电子管,计算机运算速度慢,没有操作系统,甚至没子管,计算机运算速度慢,没有操作系统,甚

5、至没有任何软件。用户直接用机器语言编制程序,并在有任何软件。用户直接用机器语言编制程序,并在上机时独占全部计算机资源。上机完全是手工操作:上机时独占全部计算机资源。上机完全是手工操作:先把程序纸带先把程序纸带(或卡片或卡片)装上输入机,然后启动输入装上输入机,然后启动输入机把程序和数据送入计算机,接着通过控制台开关机把程序和数据送入计算机,接着通过控制台开关启动程序运行。计算完毕,打印机输出计算结果,启动程序运行。计算完毕,打印机输出计算结果,用户取走并卸下纸带用户取走并卸下纸带(或卡片或卡片)。1.2.2 早期批处理早期批处理(batch processing)如上所述,在计算机发展的早期阶

6、段,由于没有任何如上所述,在计算机发展的早期阶段,由于没有任何用于管理的软件,所有的运行管理和具体操作都由用于管理的软件,所有的运行管理和具体操作都由用户自己承担。作业由许多作业步组成,任何一步用户自己承担。作业由许多作业步组成,任何一步的错误操作都可能导致该作业从头开始。当时,计的错误操作都可能导致该作业从头开始。当时,计算机极其昂贵,计算机算机极其昂贵,计算机(CPU)的时间非常宝贵,尽的时间非常宝贵,尽可能提高可能提高CPU的利用率成为十分迫切的任务。的利用率成为十分迫切的任务。解决的途径有两个:首先配备专门的计算机操作员,解决的途径有两个:首先配备专门的计算机操作员,程序员不再直接操作

7、机器,减少操作机器的错误。程序员不再直接操作机器,减少操作机器的错误。另一个重要措施是进行批处理,操作员把用户提交另一个重要措施是进行批处理,操作员把用户提交的作业分类,把一批中的作业编成一个作业执行序的作业分类,把一批中的作业编成一个作业执行序列。每一批作业将有专门编制的监督程序列。每一批作业将有专门编制的监督程序(monitor)自动依次处理。自动依次处理。早期的批处理可分为两种方式。早期的批处理可分为两种方式。1. 联机批处理联机批处理慢速的输入输出慢速的输入输出(I/O)设备是和主机直接相连。作业设备是和主机直接相连。作业的执行过程为的执行过程为:(1) 用户提交作业:作业程序、数据,

8、用作业控制语用户提交作业:作业程序、数据,用作业控制语言编写的作业说明书言编写的作业说明书;(2) 作业被作成穿孔纸带或卡片作业被作成穿孔纸带或卡片;(3) 操作员有选择地把若干作业合成一批,通过输入操作员有选择地把若干作业合成一批,通过输入设备设备(纸带输入机或读卡机纸带输入机或读卡机) 把它们存入磁带把它们存入磁带;(4) 监督程序读入一个作业监督程序读入一个作业(若系统资源能满足该作若系统资源能满足该作业要求业要求);(5) 从磁带调入汇编程序或编译程序,将用户作业源从磁带调入汇编程序或编译程序,将用户作业源程序翻译成目标代码程序翻译成目标代码;(6) 连接装配程序把编译后的目标代码及所

9、需的子程连接装配程序把编译后的目标代码及所需的子程序装配成一个可执行程序序装配成一个可执行程序;(7) 启动执行启动执行;(8) 执行完毕,由善后处理程序输出计算结果执行完毕,由善后处理程序输出计算结果;(9) 再读入一个作业,重复再读入一个作业,重复(5)(9)各步;各步;(10) 一批作业完成,返回到一批作业完成,返回到(3),处理下一批作业。,处理下一批作业。这种联机批处理方式解决了作业自动转接,从而减少这种联机批处理方式解决了作业自动转接,从而减少作业建立和人工操作时间。但是在作业的输入和执作业建立和人工操作时间。但是在作业的输入和执行结果的输出过程中,主机行结果的输出过程中,主机CP

10、U仍处在停止等待状仍处在停止等待状态,这样慢速的输入输出设备和快速主机之间仍处态,这样慢速的输入输出设备和快速主机之间仍处于串行工作,于串行工作,CPU的时间仍有很大的浪费。的时间仍有很大的浪费。2. 脱机批处理脱机批处理这种方式的显著特征是增加一台不与主机直接相连而这种方式的显著特征是增加一台不与主机直接相连而专门用于与输入输出设备打交道的卫星机。如图专门用于与输入输出设备打交道的卫星机。如图1.2所示。所示。卫星机的功能是:卫星机的功能是:(1) 输入设备通过它把作业输入到输入磁带;输入设备通过它把作业输入到输入磁带;(2) 输出磁带将作业执行结果输出到输出设备。输出磁带将作业执行结果输出

11、到输出设备。这样,主机不是直接与慢速的输入输出设备打交道,这样,主机不是直接与慢速的输入输出设备打交道,而是与速度相对较快的磁带机发生关系。主机与卫而是与速度相对较快的磁带机发生关系。主机与卫星机可以并行工作,二者分工明确,以充分发挥主星机可以并行工作,二者分工明确,以充分发挥主机的高速度计算能力。因此脱机批处理和早期联机机的高速度计算能力。因此脱机批处理和早期联机批处理相比大大提高了系统的处理能力。批处理相比大大提高了系统的处理能力。图图1.2 早期脱机批处理模型早期脱机批处理模型图图1.3 监督程序管理下的解题过程监督程序管理下的解题过程借助于通道、中断技术和输入输出可在主机控制下完借助于

12、通道、中断技术和输入输出可在主机控制下完成批处理。这时,原来的监督程序的功能扩大了,成批处理。这时,原来的监督程序的功能扩大了,它不仅要负责作业运行的自动调度,而且还要提供它不仅要负责作业运行的自动调度,而且还要提供输入输出控制功能。这个发展了的监督程序常驻内输入输出控制功能。这个发展了的监督程序常驻内存称为执行系统存称为执行系统。执行系统实现的也是输入输出联执行系统实现的也是输入输出联机操作,和早期批处理系统不同的是:输入输出工机操作,和早期批处理系统不同的是:输入输出工作是由在主机控制下的通道完成的。主机和通道、作是由在主机控制下的通道完成的。主机和通道、主机和输入输出设备都可以并行操作。

13、主机和输入输出设备都可以并行操作。1.2.3 多道程序系统多道程序系统上述批处理系统,每次只调用一个用户作业程序进入上述批处理系统,每次只调用一个用户作业程序进入内存并运行,称为单道运行。图内存并运行,称为单道运行。图1.4(a)给出了单道给出了单道程序工作示例。程序工作示例。而图而图1.4(b)给出了多道程序工作示例。在单处理机系给出了多道程序工作示例。在单处理机系统中,多道程序运行的特点是统中,多道程序运行的特点是:(1) 多道:计算机内存中同时存放几道相互独立的程多道:计算机内存中同时存放几道相互独立的程序。序。(2) 宏观上并行:同时进入系统的几道程序都处于运宏观上并行:同时进入系统的

14、几道程序都处于运行过程中,即它们先后开始了各自的运行,但都未行过程中,即它们先后开始了各自的运行,但都未运行完毕。运行完毕。(3) 微观上串行:实际上,各道程序轮流使用微观上串行:实际上,各道程序轮流使用CPU,交替执行。交替执行。(a) 单道程序工作示例单道程序工作示例 (b) 多道程序工作示多道程序工作示例例 图图 1.4在批处理系统中采用多道程序设计技术,就形成了多在批处理系统中采用多道程序设计技术,就形成了多道批处理系统。要处理的许多作业存放在外部存储道批处理系统。要处理的许多作业存放在外部存储器中,形成作业队列,等待运行。当需要调入作业器中,形成作业队列,等待运行。当需要调入作业时,

15、将由操作系统中的作业调度程序对外存中的一时,将由操作系统中的作业调度程序对外存中的一批作业,根据其对资源的要求和一定的调度原则,批作业,根据其对资源的要求和一定的调度原则,调几个作业进入内存,让它们交替运行。当某个作调几个作业进入内存,让它们交替运行。当某个作业完成,然后再调入一个或几个作业。这种处理方业完成,然后再调入一个或几个作业。这种处理方式,在内存中总是同时存在几道程序,系统资源得式,在内存中总是同时存在几道程序,系统资源得到比较充分的利用。到比较充分的利用。1.2.4 分时操作系统分时操作系统批处理方式下,用户以脱机操作方式使用计算机,只批处理方式下,用户以脱机操作方式使用计算机,只

16、有等该批作业处理结束,用户才能得到计算结果。有等该批作业处理结束,用户才能得到计算结果。根据结果再作下一步处理。它的好处是计算机效率根据结果再作下一步处理。它的好处是计算机效率高。不过,用户十分留恋手工操作阶段的联机工作高。不过,用户十分留恋手工操作阶段的联机工作方式,独占计算机,并直接控制程序运行。但独占方式,独占计算机,并直接控制程序运行。但独占计算机方式会造成资源效率低。既能保证计算机效计算机方式会造成资源效率低。既能保证计算机效率,又能方便用户使用,成为一种新的追求目标。率,又能方便用户使用,成为一种新的追求目标。20世纪世纪60年代中期,计算机技术和软件技术的发展年代中期,计算机技术

17、和软件技术的发展使这种追求成为可能。由于使这种追求成为可能。由于CPU速度不断提高和采速度不断提高和采用分时技术,一台计算机可同时连接多个用户终端,用分时技术,一台计算机可同时连接多个用户终端,而每个用户可在自己的终端上联机使用计算机,好而每个用户可在自己的终端上联机使用计算机,好像自己独占机器一样。像自己独占机器一样。所谓分时技术,就是把处理机的运行时间分成很短的所谓分时技术,就是把处理机的运行时间分成很短的时间片,按时间片轮流把处理机分配给各联机作业时间片,按时间片轮流把处理机分配给各联机作业使用。若某个作业在分配给它的时间片内不能完成使用。若某个作业在分配给它的时间片内不能完成其计算,则

18、该作业暂时中断,把处理机让给另一作其计算,则该作业暂时中断,把处理机让给另一作业使用,等待下一轮时再继续其运行。由于计算机业使用,等待下一轮时再继续其运行。由于计算机速度很快,作业运行轮转得很快,给每个用户的印速度很快,作业运行轮转得很快,给每个用户的印象是好像他独占了一台计算机。而每个用户可以通象是好像他独占了一台计算机。而每个用户可以通过自己终端向系统发出各种操作控制命令,完成作过自己终端向系统发出各种操作控制命令,完成作业的运行。业的运行。多用户分时操作系统是当今计算机操作系统中最普遍多用户分时操作系统是当今计算机操作系统中最普遍使用的一类操作系统。使用的一类操作系统。1.2.5 实时操

19、作系统实时操作系统20世纪世纪60年代中期计算机进入第三代,计算机的性能年代中期计算机进入第三代,计算机的性能和可靠性有了很大提高,造价亦大幅度下降,导致和可靠性有了很大提高,造价亦大幅度下降,导致计算机应用越来越广泛。计算机由于用于工业过程计算机应用越来越广泛。计算机由于用于工业过程控制、军事实时控制等形成了各种实时处理系统。控制、军事实时控制等形成了各种实时处理系统。针对实时处理的实时操作系统是以在允许时间范围针对实时处理的实时操作系统是以在允许时间范围之内做出响应为特征的。它要求计算机对于外来信之内做出响应为特征的。它要求计算机对于外来信息能以足够快的速度进行处理,并在被控对象允许息能以

20、足够快的速度进行处理,并在被控对象允许时间范围内作出快速响应,其响应时间要求在秒级、时间范围内作出快速响应,其响应时间要求在秒级、毫秒级甚至微秒级或更小。近年来,实时操作系统毫秒级甚至微秒级或更小。近年来,实时操作系统正得到越来越广泛的应用。特别是非正得到越来越广泛的应用。特别是非PC机和机和PDA(个人数字助理)等新设备的出现,更加强了个人数字助理)等新设备的出现,更加强了这一趋势。这一趋势。1.2.6 通用操作系统通用操作系统多道批处理系统和分时系统的不断改进、实时系统的多道批处理系统和分时系统的不断改进、实时系统的出现及其应用日益广泛,致使操作系统日益完善。出现及其应用日益广泛,致使操作

21、系统日益完善。在此基础上,出现了通用操作系统。它可以同时兼在此基础上,出现了通用操作系统。它可以同时兼有多道批处理、分时、实时处理的功能,或其中两有多道批处理、分时、实时处理的功能,或其中两种以上的功能。例如,将实时处理和批处理相结合种以上的功能。例如,将实时处理和批处理相结合构成实时批处理系统。在这样的系统中,它首先保构成实时批处理系统。在这样的系统中,它首先保证优先处理任务,插空进行批作业处理。通常把实证优先处理任务,插空进行批作业处理。通常把实时任务称为前台作业,批作业称为后台作业。将批时任务称为前台作业,批作业称为后台作业。将批处理和分时处理相结合可构成分时批处理系统。在处理和分时处理

22、相结合可构成分时批处理系统。在保证分时用户的前提下,没有分时用户时可进行批保证分时用户的前提下,没有分时用户时可进行批量作业的处理。同样,分时用户和批处理作业可按量作业的处理。同样,分时用户和批处理作业可按前后台方式处理。前后台方式处理。20世纪世纪60年代中期开始,国际上开始研制大型通用操年代中期开始,国际上开始研制大型通用操作系统。这些系统在解决其可靠性、可维护性、可作系统。这些系统在解决其可靠性、可维护性、可理解性和开放性等方面都遇到很大的困难。相比之理解性和开放性等方面都遇到很大的困难。相比之下下UNIX操作系统却是一个例外。这是一个通用的操作系统却是一个例外。这是一个通用的多用户分时

23、交互型的操作系统。它首先建立的是一多用户分时交互型的操作系统。它首先建立的是一个精干的核心,而其功能却足以与许多大型的操作个精干的核心,而其功能却足以与许多大型的操作系统相媲美,在核心层以外可以支持庞大的软件系系统相媲美,在核心层以外可以支持庞大的软件系统。目前广泛使用的各种工作站级的操作系统如统。目前广泛使用的各种工作站级的操作系统如SUN公司的公司的Solaris,IBM公司的公司的AIX等都是基于等都是基于UNIX的操作系统。的操作系统。Windows系列操作系统,其主系列操作系统,其主要原理也是基于要原理也是基于UNIX系统的。系统的。linux系统也是从系统也是从UNIX演变而成的。

24、演变而成的。至此,操作系统的基本概念、功能、基本结构和组成至此,操作系统的基本概念、功能、基本结构和组成都已形成并渐趋完善。都已形成并渐趋完善。1.2.7 操作系统的进一步发展操作系统的进一步发展进入进入20世纪世纪80年代,一方面迎来了个人计算机的时代,年代,一方面迎来了个人计算机的时代,同时又向计算机网络、分布式处理、巨型计算机和同时又向计算机网络、分布式处理、巨型计算机和智能化方向发展。操作系统有了进一步的发展:智能化方向发展。操作系统有了进一步的发展: 个人计算机上的操作系统,例如个人计算机上的操作系统,例如Window系统。系统。 嵌入式操作系统。嵌入式操作系统。 网络操作系统。网络

25、操作系统。 分布式操作系统。分布式操作系统。 智能化操作系统。智能化操作系统。1.3 操作系统的基本类型操作系统的基本类型根据其使用环境和对作业处理方式,操作系统的基本根据其使用环境和对作业处理方式,操作系统的基本类型有:类型有:(1) 批处理操作系统批处理操作系统(batch processing operating system)(2) 分时操作系统分时操作系统(time sharing operating system)(3) 实时操作系统实时操作系统(real time operating system)(4) 个人计算机操作系统个人计算机操作系统(personal computer

26、operating system)(5) 网络操作系统网络操作系统(network operating system)(6) 分布式操作系统分布式操作系统(distributed operating system)1.3.1 批处理操作系统批处理操作系统现代操作系统大都具有批处理功能。图现代操作系统大都具有批处理功能。图1.5给出了批给出了批处理系统中作业处理步骤及状态。处理系统中作业处理步骤及状态。图图1.5 批处理系统中作业处理及状态批处理系统中作业处理及状态1.3.2 分时系统分时系统分时系统一般采用时间片轮转的方式,使一台计算机分时系统一般采用时间片轮转的方式,使一台计算机为多个终端用

27、户服务。对每个用户能保证足够快的为多个终端用户服务。对每个用户能保证足够快的响应时间,并提供交互会话能力。具有下述特点。响应时间,并提供交互会话能力。具有下述特点。(1) 交互性:首先,交互性:首先, 用户可以在程序动态运行情况下用户可以在程序动态运行情况下对其加以控制。其次,用户上机提交作业方便。第对其加以控制。其次,用户上机提交作业方便。第三,分时系统还为用户之间进行合作提供方便。三,分时系统还为用户之间进行合作提供方便。(2) 多用户同时性:多个用户同时在自己的终端上上多用户同时性:多个用户同时在自己的终端上上机,共享机,共享CPU和其他资源,充分发挥系统的效率。和其他资源,充分发挥系统

28、的效率。(3) 独立性:客观效果上用户彼此间感觉不到有别人独立性:客观效果上用户彼此间感觉不到有别人也在使用该台计算机,如同自己独占计算机一样。也在使用该台计算机,如同自己独占计算机一样。分时操作系统是一个联机的多用户交互式的操作系统。分时操作系统是一个联机的多用户交互式的操作系统。UNIX是最流行的一种多用户分时操作系统。是最流行的一种多用户分时操作系统。1.3.3 实时系统实时系统实时系统主要随着计算机应用于实时控制和实时信息实时系统主要随着计算机应用于实时控制和实时信息处理领域中而发展起来。处理领域中而发展起来。实时系统的主要特点是提供即时响应和高可靠性。系实时系统的主要特点是提供即时响

29、应和高可靠性。系统必须保证对实时信息的分析和处理的速度比其进统必须保证对实时信息的分析和处理的速度比其进入系统的速度要快,而且系统本身要安全可靠。实入系统的速度要快,而且系统本身要安全可靠。实时系统往往具有一定的专用性。大多数用于嵌入式时系统往往具有一定的专用性。大多数用于嵌入式计算中。与批处理系统、分时系统相比,实时系统计算中。与批处理系统、分时系统相比,实时系统的资源利用率可能较低。的资源利用率可能较低。1.3.4 通用操作系统通用操作系统批处理系统、分时系统和实时系统是操作系统的三种批处理系统、分时系统和实时系统是操作系统的三种基本类型,在此基础上又发展了具有多种类型操作基本类型,在此基

30、础上又发展了具有多种类型操作特征的操作系统,称为通用操作系统。它可以同时特征的操作系统,称为通用操作系统。它可以同时兼有批处理、分时、实时处理和多重处理的功能,兼有批处理、分时、实时处理和多重处理的功能,或其中两种以上的功能。或其中两种以上的功能。1.3.5 个人计算机上的操作系统个人计算机上的操作系统个人计算机上的操作系统是一联机的交互式的单用户个人计算机上的操作系统是一联机的交互式的单用户操作系统,它提供的联机交互功能与通用分时系统操作系统,它提供的联机交互功能与通用分时系统所提供的很相似。由于是个人专用,因此在多用户所提供的很相似。由于是个人专用,因此在多用户和分时所要求的对处理机调度、

31、存储保护方面将会和分时所要求的对处理机调度、存储保护方面将会简单得多。然而,由于个人计算机的应用普及,对简单得多。然而,由于个人计算机的应用普及,对于提供更方便友好的用户接口的要求愈来愈迫切。于提供更方便友好的用户接口的要求愈来愈迫切。目前在个人计算机上使用的操作系统以目前在个人计算机上使用的操作系统以Windows系列系列和和linux系统为主。系统为主。1.3.6 网络操作系统网络操作系统计算机网络是通过通信设施将物理上分散的具有自治计算机网络是通过通信设施将物理上分散的具有自治功能的多个计算机系统互连起来的,实现信息交换、功能的多个计算机系统互连起来的,实现信息交换、资源共享、可互操作和

32、协作处理的系统。资源共享、可互操作和协作处理的系统。网络操作系统的研制开发是在原来各自计算机操作系网络操作系统的研制开发是在原来各自计算机操作系统的基础上进行的。按照网络体系结构的各个协议统的基础上进行的。按照网络体系结构的各个协议标准进行开发,包括网络管理、通信、资源共享、标准进行开发,包括网络管理、通信、资源共享、系统安全和多种网络应用服务等达到上述诸方面的系统安全和多种网络应用服务等达到上述诸方面的要求。要求。由于网络计算的出现和发展,现代操作系统的主要特由于网络计算的出现和发展,现代操作系统的主要特征之一就是具有上网功能,因此,除了在征之一就是具有上网功能,因此,除了在20世纪世纪90

33、年代初期时,年代初期时,Novell公司的公司的Netware等系统被称为等系统被称为网络操作系统之外,人们一般不再特指某个操作系网络操作系统之外,人们一般不再特指某个操作系统为网络操作系统。统为网络操作系统。1.3.7 分布式操作系统分布式操作系统粗看起来,分布式系统与计算机网络系统没有多大区粗看起来,分布式系统与计算机网络系统没有多大区别。分布系统也可以定义为通过通信网络将物理上别。分布系统也可以定义为通过通信网络将物理上分布的具有自治功能的数据处理系统或计算机系统分布的具有自治功能的数据处理系统或计算机系统互连起来,实现信息交换和资源共享,协作完成任互连起来,实现信息交换和资源共享,协作

34、完成任务。但是有这样一些明显的区别应予考虑:务。但是有这样一些明显的区别应予考虑:(1) 计算机网络的开发都遵循协议,而对于各种分布计算机网络的开发都遵循协议,而对于各种分布式系统并没有制定标准的协议。当然,计算机网络式系统并没有制定标准的协议。当然,计算机网络也可认为是一种分布式系统。也可认为是一种分布式系统。(2) 分布式系统要求一个统一的操作系统,实现系统分布式系统要求一个统一的操作系统,实现系统操作的统一性。操作的统一性。(3) 分布式操作系统对用户是透明的。但对计算机网分布式操作系统对用户是透明的。但对计算机网络,若一个计算机上的用户希望使用另一台计算机络,若一个计算机上的用户希望使

35、用另一台计算机上的资源,则必须明确指明是哪台计算机。上的资源,则必须明确指明是哪台计算机。(4) 分布式系统的基础是网络。分布式系统已不仅是分布式系统的基础是网络。分布式系统已不仅是一个物理上的松散耦合系统,同时还是一个逻辑上一个物理上的松散耦合系统,同时还是一个逻辑上紧密耦合的系统。紧密耦合的系统。(5) 分布式系统还处在研究阶段。而计算机网络已经分布式系统还处在研究阶段。而计算机网络已经在各个领域得到广泛的应用。在各个领域得到广泛的应用。1.4 操作系统功能操作系统功能下面我们从资源管理和用户接口的观点分五个方面来下面我们从资源管理和用户接口的观点分五个方面来说明操作系统的基本功能。说明操

36、作系统的基本功能。1.4.1 处理机管理处理机管理在多道程序或多用户的情况下,要组织多个作业同时在多道程序或多用户的情况下,要组织多个作业同时运行,就要解决对处理机分配调度策略、分配实施运行,就要解决对处理机分配调度策略、分配实施和资源回收等问题。这就是处理机管理功能。正是和资源回收等问题。这就是处理机管理功能。正是由于操作系统对处理机管理策略的不同,其提供的由于操作系统对处理机管理策略的不同,其提供的作业处理方式也就不同,例如成批处理方式、分时作业处理方式也就不同,例如成批处理方式、分时处理方式和实时处理方式。从而呈现在用户面前,处理方式和实时处理方式。从而呈现在用户面前,成为具有不同性质功

37、能的操作系统。成为具有不同性质功能的操作系统。1.4.2 存储管理存储管理存储管理的主要工作是对内部存储器进行分配、保护存储管理的主要工作是对内部存储器进行分配、保护和扩充。和扩充。(1) 内存分配。如何分配内存,以保证系统及各用户内存分配。如何分配内存,以保证系统及各用户程序的存储区互不冲突。程序的存储区互不冲突。(2) 存储保护。保证一道程序在执行过程中不会有意存储保护。保证一道程序在执行过程中不会有意或无意地破坏另一道程序,保证用户程序不会破坏或无意地破坏另一道程序,保证用户程序不会破坏系统程序。系统程序。(3) 内存扩充。当用户作业所需要的内存量超过计算内存扩充。当用户作业所需要的内存

38、量超过计算机系统所提供的内存容量时,把内部存储器和外部机系统所提供的内存容量时,把内部存储器和外部存储器结合起来管理,为用户提供一个容量比实际存储器结合起来管理,为用户提供一个容量比实际内存大得多的虚拟存储器。内存大得多的虚拟存储器。1.4.3 设备管理设备管理(1) 通道、控制器、输入输出设备的分配和管理。设通道、控制器、输入输出设备的分配和管理。设备管理的任务就是根据一定的分配策略,把通道、备管理的任务就是根据一定的分配策略,把通道、控制器和输入输出设备分配给请求输入输出操作的控制器和输入输出设备分配给请求输入输出操作的程序,并启动设备完成实际的输入输出操作。为了程序,并启动设备完成实际的

39、输入输出操作。为了尽可能发挥设备和主机的并行工作能力,常需要采尽可能发挥设备和主机的并行工作能力,常需要采用虚拟技术和缓冲技术。用虚拟技术和缓冲技术。(2) 设备独立性。输入输出设备种类很多,使用方法设备独立性。输入输出设备种类很多,使用方法各不相同。设备管理应为用户提供一个良好的界面,各不相同。设备管理应为用户提供一个良好的界面,而不必去涉及具体的设备特性,以使用户能方便、而不必去涉及具体的设备特性,以使用户能方便、灵活地使用这些设备。灵活地使用这些设备。1.4.4 信息管理信息管理(文件系统管理文件系统管理)上述三种管理是针对计算机的硬件资源的管理。信息上述三种管理是针对计算机的硬件资源的

40、管理。信息管理管理(文件系统管理文件系统管理) 是对系统的软件资源的管理。是对系统的软件资源的管理。文件如不能很好管理,就会引起混乱,甚至遭受破坏。文件如不能很好管理,就会引起混乱,甚至遭受破坏。这就是管理信息文件需要解决的问题。这就是管理信息文件需要解决的问题。信息的共享、保密和保护,也是文件系统所要解决的。信息的共享、保密和保护,也是文件系统所要解决的。如果系统允许多个用户协同工作,那么就应该允许如果系统允许多个用户协同工作,那么就应该允许用户共享信息文件。但这种共享应该是受控制的,用户共享信息文件。但这种共享应该是受控制的,应该有授权和保密机制。还要有一定的保护机制以应该有授权和保密机制

41、。还要有一定的保护机制以免文件被非授权用户调用和修改,即使在意外情况免文件被非授权用户调用和修改,即使在意外情况下,如系统失效、用户对文件使用不当,也能尽量下,如系统失效、用户对文件使用不当,也能尽量保护信息免遭破坏。也就是说,系统是安全可靠的。保护信息免遭破坏。也就是说,系统是安全可靠的。1.4.5 用户接口用户接口前述的四项功能是操作系统对资源的管理。操作系统前述的四项功能是操作系统对资源的管理。操作系统还为用户提供一个友好的用户接口。一般来说,操还为用户提供一个友好的用户接口。一般来说,操作系统提供两种方式的接口来为用户服务。作系统提供两种方式的接口来为用户服务。一种用户接口是程序一级的

42、接口,即提供一组广义指一种用户接口是程序一级的接口,即提供一组广义指令令(或称系统调用、程序请求或称系统调用、程序请求)供用户程序和其他系供用户程序和其他系统程序调用。当这些程序要求进行数据传输、文件统程序调用。当这些程序要求进行数据传输、文件操作或有其他资源要求时,通过这些广义指令向操操作或有其他资源要求时,通过这些广义指令向操作系统提出申请,并由操作系统代为完成。作系统提出申请,并由操作系统代为完成。另一种接口是作业一级的接口,提供一组控制操作命另一种接口是作业一级的接口,提供一组控制操作命令令(或称作业控制语言,或像或称作业控制语言,或像UNIX中的中的Shell命令语命令语言言)供用户

43、去组织和控制自己作业的运行。作业控供用户去组织和控制自己作业的运行。作业控制方式分两大类:脱机控制和联机控制。操作系统制方式分两大类:脱机控制和联机控制。操作系统提供脱机控制作业语言和联机控制作业控制语言。提供脱机控制作业语言和联机控制作业控制语言。1.5 计算机硬件简介计算机硬件简介如前所述,操作系统管理和控制计算机系统中所有软如前所述,操作系统管理和控制计算机系统中所有软硬件资源。同时,因操作系统是一个运行于硬件之硬件资源。同时,因操作系统是一个运行于硬件之上的系统软件,我们还必须对操作系统运行的硬件上的系统软件,我们还必须对操作系统运行的硬件环境有所了解。本节简要介绍计算机硬件系统。环境

44、有所了解。本节简要介绍计算机硬件系统。1.5.1 计算机的基本硬件元素计算机的基本硬件元素构成计算机的基本硬件元素有以下构成计算机的基本硬件元素有以下4种:处理器、存种:处理器、存储器、输入输出控制与总线、外部设备等。这些基储器、输入输出控制与总线、外部设备等。这些基本元素的逻辑关系如图本元素的逻辑关系如图1.6所示。所示。图图1.6 计算机的基本硬件元素计算机的基本硬件元素1.5.2 与操作系统相关的几种主要寄存器与操作系统相关的几种主要寄存器1. 数据寄存器数据寄存器编程人员可以通过程序赋予数据寄存器众多的功能。编程人员可以通过程序赋予数据寄存器众多的功能。一般来说,对数据进行操作的任何机

45、器指令都被允一般来说,对数据进行操作的任何机器指令都被允许访问数据寄存器。不过,根据硬件设置的规定,许访问数据寄存器。不过,根据硬件设置的规定,这些寄存器也可能只被允许进行浮点运算或被其他这些寄存器也可能只被允许进行浮点运算或被其他某些规定所限制。某些规定所限制。2. 地址寄存器地址寄存器地址寄存器一般用来存放内存中某个数据或指令的地地址寄存器一般用来存放内存中某个数据或指令的地址,或者存放某段数据与指令的入口地址以及被用址,或者存放某段数据与指令的入口地址以及被用来进行更复杂的地址计算。下面几种寄存器都可被来进行更复杂的地址计算。下面几种寄存器都可被认为是地址寄存器:认为是地址寄存器:(1)

46、 地址标识位寄存器;地址标识位寄存器;(2) 内存管理用各种始地址寄存器;内存管理用各种始地址寄存器;(3) 堆栈指针;堆栈指针;(4) 设备地址寄存器等。设备地址寄存器等。3. 条件码寄存器条件码寄存器条件码寄存器也称标志寄存器。条件码寄存器的比特条件码寄存器也称标志寄存器。条件码寄存器的比特位由处理机硬件设置。位由处理机硬件设置。典型的控制与状态寄存器包括以下几种:典型的控制与状态寄存器包括以下几种:4. 程序计数器程序计数器PC程序计数器内装有下一周期被执行指令的地址。程序计数器内装有下一周期被执行指令的地址。5. 指令寄存器指令寄存器IR指令寄存器内装有待执行指令。指令寄存器内装有待执

47、行指令。6. 程序状态字程序状态字PSW程序状态字寄存器的各个比特位代表系统中当前的各程序状态字寄存器的各个比特位代表系统中当前的各种不同状态与信息。如执行模式是否允许中断等。种不同状态与信息。如执行模式是否允许中断等。7. 中断现场保护寄存器中断现场保护寄存器如果系统允许不同类型的中断存在,则会设置一组中如果系统允许不同类型的中断存在,则会设置一组中断现场保护寄存器以便保存被中断程序的现场和链断现场保护寄存器以便保存被中断程序的现场和链接中断恢复处。接中断恢复处。8. 过程调用用堆栈过程调用用堆栈堆栈被用来存放过程调用时的调用名、调用参数、以堆栈被用来存放过程调用时的调用名、调用参数、以及返

48、回地址等。及返回地址等。寄存器被广泛应用于计算机系统中,它们与操作系统寄存器被广泛应用于计算机系统中,它们与操作系统有着非常直接和密切的关系。操作系统设计人员只有着非常直接和密切的关系。操作系统设计人员只有在完全掌握和了解硬件厂商所提供的各种寄存器有在完全掌握和了解硬件厂商所提供的各种寄存器的功能和接口之后,才能进行操作系统设计。的功能和接口之后,才能进行操作系统设计。图图1.7 存储介质的访问速度存储介质的访问速度1.5.3 存储器的访问速度1.5.4 指令的执行与中断指令的执行与中断计算机提供的最基本功能是执行指令。任何应用程序计算机提供的最基本功能是执行指令。任何应用程序都只有通过指令的

49、执行才能得以完成。执行指令的都只有通过指令的执行才能得以完成。执行指令的基本过程分为两步,即处理机从内存把指令读入的基本过程分为两步,即处理机从内存把指令读入的过程和执行的过程。其中,读指令是根据程序计数过程和执行的过程。其中,读指令是根据程序计数器器PC所指的地址读入,而执行的指令则是指令寄所指的地址读入,而执行的指令则是指令寄存器存器IR中的指令。中的指令。我们把指令的读入和执行过程称为一个执行周期。如我们把指令的读入和执行过程称为一个执行周期。如图图1.8所示。所示。图图1.8 指令的执行周期指令的执行周期在指令的执行过程中或一条指令执行结束时,尽管指在指令的执行过程中或一条指令执行结束

50、时,尽管指令地址计数器中已指明了下一条被访问指令的地址,令地址计数器中已指明了下一条被访问指令的地址,但是,外部设备或计算机内部可能会发来亟须处理但是,外部设备或计算机内部可能会发来亟须处理的数据或其他紧急事件处理信号。这就需要处理机的数据或其他紧急事件处理信号。这就需要处理机暂停正在执行的程序,转去处理相应的紧急事件,暂停正在执行的程序,转去处理相应的紧急事件,待处理完毕后再返回原处继续执行,这一过程称为待处理完毕后再返回原处继续执行,这一过程称为中断,如图中断,如图1.9所示。所示。中断给操作系统设计带来许多好处,首先使得实时处中断给操作系统设计带来许多好处,首先使得实时处理许多紧急事件成

51、为可能;再者,中断可以增加处理许多紧急事件成为可能;再者,中断可以增加处理机的执行效率;另外,中断还可以简化操作系统理机的执行效率;另外,中断还可以简化操作系统的程序设计。的程序设计。图图1.9 中断执行过程中断执行过程具有中断处理时的指令执行过程如图具有中断处理时的指令执行过程如图1.10所示。所示。图图1.10 中断处理时的指令执行周期中断处理时的指令执行周期系统发生中断时,处理机收到中断信号,从而不能继系统发生中断时,处理机收到中断信号,从而不能继续执行程序计数器中所指的原程序。这时处理机将续执行程序计数器中所指的原程序。这时处理机将保存当前的执行现场(也就是各寄存器中的值)并保存当前的

52、执行现场(也就是各寄存器中的值)并调用新的程序到处理机上执行。调用新的程序到处理机上执行。1.6 算法的描述算法的描述操作系统设计和原理描述中涉及到许多算法。为了描操作系统设计和原理描述中涉及到许多算法。为了描述简单起见,本书定义下述关键词描述算法中有关述简单起见,本书定义下述关键词描述算法中有关过程。过程。beginend 分别表示算法的开头和结束。分别表示算法的开头和结束。Repeat操作操作Until 条件条件表示当表示当“条件条件”未被满足时重复所描述的未被满足时重复所描述的“操作操作”。While 条件条件do操作操作od表示当表示当“条件条件”满足时,进行相应的满足时,进行相应的“

53、操作操作”。关键。关键词词“ do” 和和“od”分别表示分别表示“操作操作”的开始和结束。的开始和结束。If 条件条件Then操作操作Else操作操作fi表示满足表示满足“if”所指的所指的“条件条件”时,进行时,进行“then”后后的相关的相关“操作操作”,否则完成,否则完成“else”后的相关操作。后的相关操作。关键词关键词“fi”表示条件判断的结束。表示条件判断的结束。例如,图例如,图1.8所示指令执行周期可被描述为:所示指令执行周期可被描述为:RepeatIRMPC;PCPC + 1;ExecuteIR;UntilCPU halt;其中,其中,MPC表示地址为表示地址为PC所示内存单

54、元中的指所示内存单元中的指令内容。令内容。另一个例子是:另一个例子是:令令p1:n为为1到到n(n1)的整数置换,的整数置换,设设i=1,2,3,4,5,6,7;pi=4,7,3,2,1,5,6;描述描述pi的巡回置换算法。(巡回置换指的巡回置换算法。(巡回置换指k1:n时,时,k=p.pk.的置换。)的置换。)解:解:beginlocal x, k;k1;while k=7 doxk;repeatprint(x);xpx;until x=k;kk+1;odend1.7 研究操作系统的几种观点研究操作系统的几种观点上面各节,我们讨论了几种操作系统的基本概念、操上面各节,我们讨论了几种操作系统的

55、基本概念、操作系统发展的历史和操作系统的分类和功能以及操作系统发展的历史和操作系统的分类和功能以及操作系统所依赖的硬件基础等问题,使我们认识到,作系统所依赖的硬件基础等问题,使我们认识到,操作系统是计算机资源有效使用的管理者和为用户操作系统是计算机资源有效使用的管理者和为用户提供友好的接口。这实质上代表了一种讨论操作系提供友好的接口。这实质上代表了一种讨论操作系统的观点。统的观点。这一节我们简单地讨论一下操作系统研究中的不同观这一节我们简单地讨论一下操作系统研究中的不同观点,这些观点彼此并不矛盾,只不过代表了对同一点,这些观点彼此并不矛盾,只不过代表了对同一事物事物(操作系统操作系统)站在不同

56、的角度来看待。每一种观站在不同的角度来看待。每一种观点都有助于理解、分析和设计操作系统。点都有助于理解、分析和设计操作系统。1.7.1 操作系统是计算机资源的管理者操作系统是计算机资源的管理者前面已经指出操作系统就是指用来管理和控制计算机前面已经指出操作系统就是指用来管理和控制计算机系统软硬资源的程序的集合,因此它提供了处理机系统软硬资源的程序的集合,因此它提供了处理机管理、存储管理、设备管理和信息文件的管理等功管理、存储管理、设备管理和信息文件的管理等功能。对于每种资源的管理都可以从资源情况记录、能。对于每种资源的管理都可以从资源情况记录、资源分配策略、资源分配和资源回收等几个方面来资源分配

57、策略、资源分配和资源回收等几个方面来加以讨论。加以讨论。1.7.2 用户界面的观点用户界面的观点对于用户来说,对操作系统的内部结构并没有多大的对于用户来说,对操作系统的内部结构并没有多大的兴趣,他们最关心的是如何利用操作系统提供的服兴趣,他们最关心的是如何利用操作系统提供的服务来有效地使用计算机。因此操作系统提供了什么务来有效地使用计算机。因此操作系统提供了什么样的用户界面成为关键问题,即上节中所提出的程样的用户界面成为关键问题,即上节中所提出的程序一级和作业一级的两种接口。序一级和作业一级的两种接口。1.7.3 进程管理观点进程管理观点操作系统调用当前程序运行是一个动态过程,特别是操作系统调

58、用当前程序运行是一个动态过程,特别是现代操作系统的一个重要特征是并发性。并发性是现代操作系统的一个重要特征是并发性。并发性是指操作系统控制很多能并发执行的程序段。并发执指操作系统控制很多能并发执行的程序段。并发执行的程序在多处理机系统中可能是真正并行执行的,行的程序在多处理机系统中可能是真正并行执行的,但在单处理机情况下则是宏观并行微观顺序执行的。但在单处理机情况下则是宏观并行微观顺序执行的。它们可以完全独立地运行,也可能以间接或直接方它们可以完全独立地运行,也可能以间接或直接方式互相依赖和制约。并发的程序段不仅会受到其他式互相依赖和制约。并发的程序段不仅会受到其他程序段活动的制约,也会受到系

59、统资源分配情况的程序段活动的制约,也会受到系统资源分配情况的制约。一个程序段可能在运行,也可能因等待某些制约。一个程序段可能在运行,也可能因等待某些资源或信息处于挂起状态等。因此只用资源或信息处于挂起状态等。因此只用“操作系统操作系统是资源管理程序是资源管理程序”这一概念不能揭示它们在系统中这一概念不能揭示它们在系统中活动联系及其状态变化,从而引进活动联系及其状态变化,从而引进“进程进程” 的概念的概念。所谓所谓“进程进程”是指并发程序的执行。是指并发程序的执行。用进程观点来研究操作系统就是围绕进程运行过程,用进程观点来研究操作系统就是围绕进程运行过程,即并发程序执行过程来讨论操作系统,那么我

60、们就即并发程序执行过程来讨论操作系统,那么我们就能讨论清楚能讨论清楚“这些资源管理程序在系统中进行活动这些资源管理程序在系统中进行活动的过程的过程”,对操作系统功能就能获得更多的认识。,对操作系统功能就能获得更多的认识。习题习题1.1 什么是操作系统的基本功能什么是操作系统的基本功能?1.2 什么是批处理、分时和实时系统什么是批处理、分时和实时系统?各有什么特征各有什么特征?1.3 多道程序设计多道程序设计(multiprogramming)和多重处理和多重处理(multi-processing)有何区别有何区别?1.4 讨论操作系统可以从哪些角度出发,如何把它们讨论操作系统可以从哪些角度出发,如何把它们统一起来统一起来?1.5 写出写出1.6节中巡回置换算法的执行结果。节中巡回置换算法的执行结果。1.6 设计计算机操作系统时与哪些硬件器件有关?设计计算机操作系统时与哪些硬件器件有关?

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号