1、1第第1 1章章 操作系统概论操作系统概论 本章学习目标本章学习目标 本章主要讲解操作系统的基本知识。本章主要讲解操作系统的基本知识。通过本章学习,我们应该掌握以下内容:通过本章学习,我们应该掌握以下内容:操作系统的功能和地位操作系统的功能和地位 操作系统的发展过程(分类)操作系统的发展过程(分类)操作系统的特征操作系统的特征 操作系统的结构操作系统的结构21.1 1.1 计算机系统计算机系统1.1.11.1.1硬件与软件硬件与软件 一个完整的计算机系统由硬件系统和软件一个完整的计算机系统由硬件系统和软件系统两大部分组成。系统两大部分组成。计算机硬件是各种物理设备的总称,是完计算机硬件是各种物
2、理设备的总称,是完成工作任务的物质基础。如图成工作任务的物质基础。如图1-11-1所示。所示。3图图1-1 1-1 计算机硬件的组成计算机硬件的组成4计算机软件计算机软件 计算机软件是指程序和与程序相关的文档的计算机软件是指程序和与程序相关的文档的集合,按功能划分,软件可分为系统软件和应集合,按功能划分,软件可分为系统软件和应用软件用软件。软件通过对硬件基本功能的控制与组合实现软件通过对硬件基本功能的控制与组合实现人们所需的高级功能,如学习、游戏、娱乐、人们所需的高级功能,如学习、游戏、娱乐、办公等。人们在高层通过软件来使用计算机系办公等。人们在高层通过软件来使用计算机系统完成各种功能。统完成
3、各种功能。软件是计算机系统的灵魂软件是计算机系统的灵魂51.1.2 1.1.2 操作系统的形成操作系统的形成 通常,把未配置任何软件的计算机称为“裸机”。第一代计算机:19461958,电子管计算机,无操作系统 6电子体管计算机使用方式(全手工方式)电子体管计算机使用方式(全手工方式)u程序首先从纸带或卡片输入机上装入输入机u然后输入机把程序和数据输入计算机存储器,用户利用控制台开关启动程序开始执行。u计算结束,用户取走打印结果。u特点:使用计算的全过程 需要人工装卸纸带、人工控制运行。u手工操作时间长,计算机运行时间所占比例较小,资源利用率很低。7第二代计算机:晶体管计算机(19581964
4、年)特点:仍然没有操作系统。由于计算机的运算速度不断提高,因此加剧了“人-机矛盾”。严重制约了计算机系统的工作效率。改进办法:减少手工操作,让计算机自动控制用户作业的启动、运行,废除上、下机手工交接。具体实现:让计算系统一次集中处理一批用户作业,故被称为“批处理系统”,其管理程序就是现今操作系统的雏形。如图1-2所示。8 依次 1,2,n 依次 1,2,n 作业 n 说明书 图图1-2 1-2 批处理系统示意图批处理系统示意图9第三代计算机:第三代计算机:集成电路和大规模集成电路(集成电路和大规模集成电路(1964年以后)年以后)人们开始把人们开始把CPU、存储器、外部设备以及各、存储器、外部
5、设备以及各种软件都视为计算机系统的种软件都视为计算机系统的“资源资源”,在软件,在软件设计上提出了设计上提出了“多道程序设计多道程序设计”的技术。的技术。在计算机内存中同时存放几个相互独立的程在计算机内存中同时存放几个相互独立的程序,让它们去序,让它们去“共享共享”、去、去“竞争竞争”系统中的系统中的这些资源,具有这种功能的软件就是这些资源,具有这种功能的软件就是“操作系操作系统统”。101.1.3 1.1.3 操作系统的基本观点操作系统的基本观点u操作系统是在裸机上加载的第一层软件,是操作系统是在裸机上加载的第一层软件,是对计算机硬件系统功能的首次扩充,它直接控对计算机硬件系统功能的首次扩充
6、,它直接控制、管理各种硬件资源。制、管理各种硬件资源。u操作系统为用户提供作业控制接口,使用户能够通过终端输入一定命令来控制作业流程。u操作系统为应用开发人员提供系统功能调用,提高应用开发效率。u统一管理系统资源,使并发进程能够按照一定原则合理共享系统资源,提高资源利用率。111.1.3 1.1.3 操作系统的观点操作系统的观点操作系统为用户提供了一台功能经过扩展了操作系统为用户提供了一台功能经过扩展了的机器或的机器或“虚拟机虚拟机”,因为现实生活中并不存,因为现实生活中并不存在具有这种功能的真实机器,它只是用户的一在具有这种功能的真实机器,它只是用户的一种感觉而已。种感觉而已。如图如图1-3
7、 操作系统提供了一台虚拟机操作系统提供了一台虚拟机12 我的机器有 复制功能!复制一个 文件真难 图图1-3 1-3 操作系统提供了一台虚拟机操作系统提供了一台虚拟机131.1.4 Operating System,OS定义 操作系统:是计算机系统中的核心系统软件,负责管理和控制计算机系统中的硬件和软件资源、合理地组织计算机工作流程和有效利用资源,在计算机与用户之间起接口的作用,以方便用户使用计算机的大型系统程序。141.1.5 1.1.5 操作系统地位操作系统地位 计算机系统是分层次的,最低层是未计算机系统是分层次的,最低层是未配置任何软件的硬件裸机,硬件之上是软配置任何软件的硬件裸机,硬件
8、之上是软件,软件又分为若干层次,最低层是操作件,软件又分为若干层次,最低层是操作系统。系统。操作系统是覆盖在裸机之上的第一层操作系统是覆盖在裸机之上的第一层软件,它直接控制、管理各种硬件资源。软件,它直接控制、管理各种硬件资源。所以操作系统是整个计算机系统的控制管所以操作系统是整个计算机系统的控制管理中心。理中心。15图 14 操作系统与软件硬件之间的关系16裸机裸机操作系统操作系统系统工具系统工具应用软件应用软件应用用户应用用户应用开发人员应用开发人员操作系统开发人员操作系统开发人员计算机系统计算机系统图图1 15 5计算机系统层次结构计算机系统层次结构171.2 1.2 操作系统的功能操作
9、系统的功能操作系统的目的:操作系统的目的:方便用户使用计算机系统方便用户使用计算机系统提高计算机系统资源利用率提高计算机系统资源利用率操作系统的功能可以从三个方面来考虑操作系统的功能可以从三个方面来考虑u资源管理资源管理管理计算机系统的软硬件资源管理计算机系统的软硬件资源u虚拟计算实现虚拟计算实现实现计算机软件方面的功能实现计算机软件方面的功能u提供人机接口提供人机接口用户通过人机接口来使用计算机用户通过人机接口来使用计算机18u处理机管理处理机管理u存储管理存储管理u设备管理设备管理u文件管理文件管理u作业管理作业管理1.2.11.2.1从资源管理的角度来理解操作系统的功能从资源管理的角度来
10、理解操作系统的功能19u多用户:计算机系统中有多个用户同时联机多用户:计算机系统中有多个用户同时联机使用。使用。u多任务:同一用户可能同时运行多道程序和多任务:同一用户可能同时运行多道程序和多个任务。如我们在进行数据处理的同时可以多个任务。如我们在进行数据处理的同时可以上网聊天、听音乐。上网聊天、听音乐。u并发执行:由于有多道程序处于运行状态,并发执行:由于有多道程序处于运行状态,使得计算机资源不是由一个程序在运行时独占使得计算机资源不是由一个程序在运行时独占使用,而是由多个并发运行的程序共享使用。使用,而是由多个并发运行的程序共享使用。现代计算机系统面临的系统环境现代计算机系统面临的系统环境
11、20u由于多用户、多任务、并发执行使得资源由于多用户、多任务、并发执行使得资源管理与分配与程序能否正确执行以及系统管理与分配与程序能否正确执行以及系统资源利用率紧密相关。资源利用率紧密相关。u因此,操作系统的目标之一就是统一管理因此,操作系统的目标之一就是统一管理分配计算机系统资源,在保证并发执行的分配计算机系统资源,在保证并发执行的应用程序顺利运行的前提下提高资源利用应用程序顺利运行的前提下提高资源利用率。率。多用户、多任务、并发执行带来的问题:多用户、多任务、并发执行带来的问题:21一、管理计算机资源一、管理计算机资源1.2.1.1 1.2.1.1 处理机管理处理机管理处理机的任务是运行的
12、程序,程序在某个数据对处理机的任务是运行的程序,程序在某个数据对象上的一次运行过程称为进程,所以处理机管理象上的一次运行过程称为进程,所以处理机管理又叫进程管理。又叫进程管理。单处理机系统中的程序运行方式:单处理机系统中的程序运行方式:u单道程序顺序执行单道程序顺序执行u多道程序并发运行多道程序并发运行22单处理机系统:单道程序顺序执行单处理机系统:单道程序顺序执行要执行的多道程序顺序依次执行,一个程序运行完毕要执行的多道程序顺序依次执行,一个程序运行完毕才能运行下一个程序,即在一个程序运行期间不插入才能运行下一个程序,即在一个程序运行期间不插入运行其他程序。运行其他程序。优点:优点:实现简单
13、,不需要在多个进程之间进行转换。实现简单,不需要在多个进程之间进行转换。缺点:缺点:资源利用率低,因为在系统运行的整个过程中,资源利用率低,因为在系统运行的整个过程中,始终是一道程序独占系统全部资源,一般一道程序不始终是一道程序独占系统全部资源,一般一道程序不会同时进行计算和输入输出操作,使得处理机与外部会同时进行计算和输入输出操作,使得处理机与外部设备不能并行工作。设备不能并行工作。23单处理机系统:多道程序并发执行单处理机系统:多道程序并发执行 在内存中同时存放多道程序,按一定调度策略在内存中同时存放多道程序,按一定调度策略多道程序交叉运行,形成多道程序交叉运行,形成“微观上串行,宏观上微
14、观上串行,宏观上并行并行”的情况,使得处理机和外部设备可以并行的情况,使得处理机和外部设备可以并行工作。工作。优点优点:(1)多道程序并发执行资源利用率高多道程序并发执行资源利用率高(2)多道程序可以提供多个用户同时联机操作,多道程序可以提供多个用户同时联机操作,一台主机可以同时连接若干用户终端,同时若一台主机可以同时连接若干用户终端,同时若干用户可以分别通过自己的终端使用主机。干用户可以分别通过自己的终端使用主机。24单处理机单处理机系统中系统中多道程序多道程序并发执行的并发执行的处理机管理处理机管理:单处理机系统中并发运行多道程序,必:单处理机系统中并发运行多道程序,必须按照一定策略对处理
15、机进行调度,决定在某个时刻把须按照一定策略对处理机进行调度,决定在某个时刻把处理机分配给哪个进程进行计算操作,这是处理机管理处理机分配给哪个进程进行计算操作,这是处理机管理的核心任务。的核心任务。:操作系统提供了一些原语对进程状态的转:操作系统提供了一些原语对进程状态的转换进行控制。(原语在运行过程中不可中断)换进行控制。(原语在运行过程中不可中断):操作系统提供了一系列的通信原语供应用:操作系统提供了一系列的通信原语供应用程序调用。程序调用。:操作系统采取一定的策略来处理并发进程:操作系统采取一定的策略来处理并发进程之间的制约关系,即进程同步协调运行。之间的制约关系,即进程同步协调运行。25
16、1.2.1.2 存储器管理存储器管理u计算机系统采用了冯计算机系统采用了冯诺依曼提出的诺依曼提出的,即把要运行的程序先一次性存放在存储,即把要运行的程序先一次性存放在存储器中,然后由处理机自动从存储器中依次取出器中,然后由处理机自动从存储器中依次取出程序指令运行,处理机的运行过程就是不断地程序指令运行,处理机的运行过程就是不断地取指令、执行指令循环往复的过程,每次取一取指令、执行指令循环往复的过程,每次取一条指令,执行一条指令。条指令,执行一条指令。u存储器是计算机系统中的重要资源,与处理存储器是计算机系统中的重要资源,与处理机称为计算机系统中的主机机称为计算机系统中的主机u多道程序环境中,要
17、在内存中同时存放多道多道程序环境中,要在内存中同时存放多道程序,必须对内存进行合理的管理,以保证程程序,必须对内存进行合理的管理,以保证程序顺利运行,并提高内存的利用率。序顺利运行,并提高内存的利用率。约翰约翰冯冯诺依曼诺依曼(John Von Nouma,19031957),美藉),美藉匈牙利人,匈牙利人,20世纪最世纪最杰出的数学家之一,杰出的数学家之一,计算机之父,博弈论计算机之父,博弈论之父之父,犹太人。与,犹太人。与同为犹太人的哈耶克同为犹太人的哈耶克一样,是上世纪最伟一样,是上世纪最伟大的全才之一大的全才之一 26存储管理功能存储管理功能:内存分配的任务是为每道程序:内存分配的任务
18、是为每道程序分配一定的存储空间。分配一定的存储空间。u在内存分配过程中会出现内存需求总和超在内存分配过程中会出现内存需求总和超过实际内存空间,因此,制定分配策略时应过实际内存空间,因此,制定分配策略时应以提高内存利用率为目标。以提高内存利用率为目标。:编写程序时使用的是逻辑地址:编写程序时使用的是逻辑地址空间,程序调入内存运行时使用的是物理地址空间,程序调入内存运行时使用的是物理地址空间,为了确保能正确访问数据和指令,必须空间,为了确保能正确访问数据和指令,必须在程序装入内存时把逻辑地址转换成物理地址,在程序装入内存时把逻辑地址转换成物理地址,这一操作称为地址转换,也称这一操作称为地址转换,也
19、称。27:内存保护的任务是确保每道程:内存保护的任务是确保每道程序都在自己的内存空间中运行,互不干扰,即不序都在自己的内存空间中运行,互不干扰,即不允许访问(存取)其他程序的存储空间。允许访问(存取)其他程序的存储空间。u用户程序访问操作系统只能通过系统调用才能用户程序访问操作系统只能通过系统调用才能实现。操作系统提供的内存保护机制,当进程访实现。操作系统提供的内存保护机制,当进程访问内存越界时能及时发现并进行处理。问内存越界时能及时发现并进行处理。采用扩充技术为多道程序提供。采用扩充技术为多道程序提供充足的内存空间。物理上并不增加内存,逻辑上充足的内存空间。物理上并不增加内存,逻辑上扩充内存
20、。扩充内存。(1 1)进程整体交换;)进程整体交换;(2 2)部分装入内存,边装入边运行。)部分装入内存,边装入边运行。存储管理功能存储管理功能281.2.1.3 设备管理设备管理设备管理的任务是:设备管理的任务是:u接受用户程序提出的接受用户程序提出的I/OI/O请求,为用户程序分配请求,为用户程序分配I/OI/O设备设备u使使CPUCPU和和I/OI/O设备并行操作,提高设备并行操作,提高CPUCPU和和I/OI/O设备的利设备的利用率用率u提高提高I/OI/O速度速度u方便用户程序使用方便用户程序使用I/OI/O设备设备 :设备分配、缓冲:设备分配、缓冲管理、设备驱动、设备无关性等功能。
21、管理、设备驱动、设备无关性等功能。29:根据用户程序的:根据用户程序的I/OI/O请求,分配所需请求,分配所需设备。设备。:主要是因为进程数据存储区与:主要是因为进程数据存储区与I/OI/O设设备控制器之间直接传输数据速度不匹配与效率很低的备控制器之间直接传输数据速度不匹配与效率很低的问题。问题。u缓冲管理的任务是解决缓冲管理的任务是解决CPUCPU和外设速度不匹配的和外设速度不匹配的矛盾,使他们能够充分并行工作,从而提高矛盾,使他们能够充分并行工作,从而提高CPUCPU和和I/OI/O设备的利用率,最提高系统吞吐量。设备的利用率,最提高系统吞吐量。:设备驱动程序实现:设备驱动程序实现CPUC
22、PU与设备控制器与设备控制器之间的通信。之间的通信。设备管理设备管理30(4 4)设备无关性:设备无关性又称设备独立性。即用)设备无关性:设备无关性又称设备独立性。即用户编写的应用程序与实际使用的物理设备无关。户编写的应用程序与实际使用的物理设备无关。u用户编写的应用程序中不直接指定使用哪台具体用户编写的应用程序中不直接指定使用哪台具体的物理设备,而是使用操作系统提供的逻辑设备,的物理设备,而是使用操作系统提供的逻辑设备,然后由操作系统把用户程序中使用的逻辑设备映射然后由操作系统把用户程序中使用的逻辑设备映射到具体的物理设备,实施具体的到具体的物理设备,实施具体的I/OI/O操作。操作。:是用
23、户应用进程的运行与某台具体物理设:是用户应用进程的运行与某台具体物理设备的状态无关,而由操作系统为其分配一台合适的备的状态无关,而由操作系统为其分配一台合适的设备完成设备完成I/OI/O操作。这样会避免出现有设备可用但进操作。这样会避免出现有设备可用但进程却无法运行的情况。程却无法运行的情况。设备管理设备管理311.2.1.4 文件管理文件管理?u由于计算机中的程序和数据需要长期保存和由于计算机中的程序和数据需要长期保存和反复使用,促成了文件管理的发展。反复使用,促成了文件管理的发展。:银行中的存贷款数据、学校的学籍管银行中的存贷款数据、学校的学籍管理软件、学籍数据等。理软件、学籍数据等。u操
24、作系统等软件资源也都需要以文件的形式操作系统等软件资源也都需要以文件的形式存放在外部存储介质中,供用户反复使用。存放在外部存储介质中,供用户反复使用。32:操作系统中对文件进行管理的子系:操作系统中对文件进行管理的子系统称为文件系统。统称为文件系统。:为用户提供一种简便的、统一的存取:为用户提供一种简便的、统一的存取和管理文件的方法,对用户而言,和管理文件的方法,对用户而言,是是一种简便的存取文件的手段一种简便的存取文件的手段u实现文件的共享实现文件的共享u维护文件的秘密和安全(维护文件的秘密和安全()1.2.1.4 文件管理文件管理33文件管理功能文件管理功能:为新文件:为新文件所需的外所需
25、的外部存储空间,部存储空间,释放的文件存储空间。分配与回收释放的文件存储空间。分配与回收时应该考虑到提高外存空间的利用率以及文件存取速时应该考虑到提高外存空间的利用率以及文件存取速度。度。:为方便在外存中找到所需文件,应:为方便在外存中找到所需文件,应该在外存中建立目录,每一个文件对应一个目录项。该在外存中建立目录,每一个文件对应一个目录项。u任务:建立外存中文件的目录结构,实现用户程任务:建立外存中文件的目录结构,实现用户程序对文件的序对文件的“”。:如,创建、删除、打开、关闭等:如,创建、删除、打开、关闭等:为防止文件被非授权使:为防止文件被非授权使用,操作系统提供了文件存取权限控制。用,
26、操作系统提供了文件存取权限控制。341.2.2 提供人机接口提供人机接口用户是通过操作系统提供的人机接口来使用计算。用户是通过操作系统提供的人机接口来使用计算。操作系统为用户提供了两种接口。操作系统为用户提供了两种接口。u作业控制级接口作业控制级接口u程序级接口程序级接口1.2.2.1 1.2.2.1 作业控制级接口作业控制级接口u作业是用户在机器上所作的一系列相关的工作。作业是用户在机器上所作的一系列相关的工作。一道作业由若干顺序相关的作业步构成。一道作业由若干顺序相关的作业步构成。35作业步骤:编辑作业步骤:编辑编译编译连接连接运行运行作业步骤之间的关系:作业步骤之间的关系:(1)每个作业
27、步运行的结果是产生下一个作业)每个作业步运行的结果是产生下一个作业步所需的文件。步所需的文件。(2)一个作业步能否开始执行依赖于前一个作)一个作业步能否开始执行依赖于前一个作业步是否顺利完成。业步是否顺利完成。(3)各作业步之间的关系不一定是单向的,而)各作业步之间的关系不一定是单向的,而可以从当前作业返回上一作业步。可以从当前作业返回上一作业步。用户作业实例(用户作业实例(Turbo C编程实例)编程实例)36编编 辑辑编编 译译连连 接接运运 行行源程序源程序目标程序目标程序可执行程序可执行程序图图1 15 5 作业示例作业示例37主要是指操作系统应该向用户提供作业工主要是指操作系统应该向
28、用户提供作业工作流程控制的手段。作流程控制的手段。:和和。u例如,在例如,在DOS系统中有内部命令、外系统中有内部命令、外部命令、命令解释器(部命令、命令解释器():和和38u由一组键盘字符命令(或鼠标命令)和命令解释器由一组键盘字符命令(或鼠标命令)和命令解释器组成,使用户可以联机交互方式使用计算机。组成,使用户可以联机交互方式使用计算机。u用户每次键入一个合法命令(解释器能执行的命用户每次键入一个合法命令(解释器能执行的命令),启动一个作业步;一个作业步运行完毕后,再令),启动一个作业步;一个作业步运行完毕后,再键入下一个命令名,启动下一个作业步。键入下一个命令名,启动下一个作业步。u在一
29、个作业步结束后,若发现错误,可以由用户修在一个作业步结束后,若发现错误,可以由用户修正错误,然后重新启动该作业步。用户可根据作业运正错误,然后重新启动该作业步。用户可根据作业运行情况随时进行作业步的调整。行情况随时进行作业步的调整。39:和和(A A)键盘命令:要求用户能熟记命令名字和格)键盘命令:要求用户能熟记命令名字和格式,并严格按照规定的格式输入命令。式,并严格按照规定的格式输入命令。(B B)图形接口:采用图形化的操作界面)图形接口:采用图形化的操作界面(GUIGUI)。)。常见操作系统有:常见操作系统有:IBMIBM公司公司OS/2OS/2、AppleApple公司公司的的Macin
30、toshMacintosh、MicrosoftMicrosoft公司的公司的WindowsWindows40(2 2)脱机用户接口)脱机用户接口u操作命令的形式为操作命令的形式为,用户以脱机批处,用户以脱机批处理方式使用计算机。理方式使用计算机。u用户对作业流程的控制意图是利用作业控制语言书用户对作业流程的控制意图是利用作业控制语言书写成一份作业说明书来表达的。用户将作业控制说明写成一份作业说明书来表达的。用户将作业控制说明书交给系统,系统逐条解释执行说明书中的命令。书交给系统,系统逐条解释执行说明书中的命令。u用户一旦提交了作业,作业流程就由操作系统根据用户一旦提交了作业,作业流程就由操作系
31、统根据作业控制说明书自动控制,用户无法干预该作业的运作业控制说明书自动控制,用户无法干预该作业的运行。行。u用户必须事先设计好作业流程,还要预测作业运行用户必须事先设计好作业流程,还要预测作业运行过程中可能出现的错误,并给出发生错误时的处理方过程中可能出现的错误,并给出发生错误时的处理方法。法。41联机用户接口与脱机用户接口比较联机用户接口与脱机用户接口比较u联机用户接口可以灵活方便地控制作业联机用户接口可以灵活方便地控制作业流程,及时处理作业运行过程中出现的错流程,及时处理作业运行过程中出现的错误,系统运行效率比较低,作业运行过程误,系统运行效率比较低,作业运行过程中作业步衔接依靠人工干预控
32、制,操作速中作业步衔接依靠人工干预控制,操作速度比较慢。度比较慢。u脱机用户接口使作业自动运行,没有人脱机用户接口使作业自动运行,没有人工干预,提高高了系统运行效率;缺点是工干预,提高高了系统运行效率;缺点是用户不能灵活地控制作业流程。用户不能灵活地控制作业流程。421.2.2.2 1.2.2.2 程序级接口程序级接口操作系统提供的程序级接口由一组系统功能调操作系统提供的程序级接口由一组系统功能调用命令以及完成这些命令的程序模块组成。用命令以及完成这些命令的程序模块组成。例如,例如,DOSDOS系统的功能调用,系统的功能调用,INT 21HINT 21H Windows Windows系统的系
33、统的APIAPI(Application Application Programming InterfaceProgramming Interface)431.31.3操作系统的发展过程操作系统的发展过程1.3.1 1.3.1 推动操作系统发展的主要动力推动操作系统发展的主要动力(1 1)不断提高计算机资源利用率的需要。)不断提高计算机资源利用率的需要。发展初期,计算机系统特别昂贵,人们迫发展初期,计算机系统特别昂贵,人们迫切需要提高计算机系统中的资源利用率。切需要提高计算机系统中的资源利用率。(2 2)方便用户。)方便用户。提供友好的界面;提供丰富实用的系统功提供友好的界面;提供丰富实用的系
34、统功能调用;提供人机交互操作方式。能调用;提供人机交互操作方式。441.3.1 1.3.1 推动操作系统发展的主要动力推动操作系统发展的主要动力(3 3)计算机硬件不断更新换代。)计算机硬件不断更新换代。操作系统是基于硬件系统的,直接对硬件进行操作系统是基于硬件系统的,直接对硬件进行管理和控制,所以计算机系统硬件的发展必然管理和控制,所以计算机系统硬件的发展必然推动系统的发展。推动系统的发展。(4 4)计算体系结构不断发展)计算体系结构不断发展硬件体系结构的发展必然推动操作系统的发展。硬件体系结构的发展必然推动操作系统的发展。例如,单处理机系统发展为多处理机系统时,例如,单处理机系统发展为多处
35、理机系统时,操作系统由单处理机系统发展为多处理机系统;操作系统由单处理机系统发展为多处理机系统;有计算网络,就有网络操作系统。有计算网络,就有网络操作系统。451.3.2 1.3.2 单道批处理系统单道批处理系统 依次1,2,n 依次1,2,n 作业n 说明书 461.3.2 1.3.2 单道批处理系统单道批处理系统u单道批处理系统也称监督程序,是操作系统单道批处理系统也称监督程序,是操作系统的雏形。的雏形。u监督程序常驻内存,在它的控制下,实现了监督程序常驻内存,在它的控制下,实现了作业的自动过渡,从而减少了手工操作。作业的自动过渡,从而减少了手工操作。u这一时期出现了汇编语言、高级语言编程
36、工这一时期出现了汇编语言、高级语言编程工具,每一种语言编译程序(如汇编语言或某种具,每一种语言编译程序(如汇编语言或某种高级语言的编译程序)、实用程序(如连接程高级语言的编译程序)、实用程序(如连接程序)都作为监督程序的子例程,当需要用到它序)都作为监督程序的子例程,当需要用到它们时由监督程序进行调用。们时由监督程序进行调用。471.3.2 1.3.2 单道批处理系统单道批处理系统批处理系统分类:单道批处理和多道批处理批处理系统分类:单道批处理和多道批处理1.3.2.1 1.3.2.1 联机批处理(联机批处理(P10,P10,图示)图示)操作员把一批作业装到输入设备上(纸带输入机操作员把一批作
37、业装到输入设备上(纸带输入机/卡片卡片阅读机),然后由监督程序控制把这批作业输入到磁阅读机),然后由监督程序控制把这批作业输入到磁带上,然后在监督程序的控制下,使这批作业一个接带上,然后在监督程序的控制下,使这批作业一个接一个的连续执行,直至磁带上的所有作业运行完毕。一个的连续执行,直至磁带上的所有作业运行完毕。特点:作业从输入机到磁带,从磁带调入内存,输出特点:作业从输入机到磁带,从磁带调入内存,输出打印结果,都是在中央处理机直接控制下完成。打印结果,都是在中央处理机直接控制下完成。缺点:缺点:CUPCUP参与输入输出,参与输入输出,CPUCPU与与I/OI/O设备不能并行运行,设备不能并行
38、运行,处理机利用率比较低。处理机利用率比较低。481.3.2 1.3.2 单道批处理系统单道批处理系统输输出出带带输输入入带带主主 机机读 卡读 卡机机打 印打 印机机输输出出带带卫卫星星机机卡卡片片图图1 16 6 脱机批处理脱机批处理1.3.2.2 脱机批处理脱机批处理491.3.2.2 脱机批处理脱机批处理u脱机批处理系统构成:主机和卫星机脱机批处理系统构成:主机和卫星机u卫星机也称外围处理机,不与主机直接连接,卫星机也称外围处理机,不与主机直接连接,只与外部设备打交道。只与外部设备打交道。u脱机批处理工作方式脱机批处理工作方式:卫星机把纸带卫星机把纸带/卡片上的卡片上的作业输入到磁带上
39、,当主机需要执行作业时把输作业输入到磁带上,当主机需要执行作业时把输入带连接到主机上,主机从输入带上把作业调入入带连接到主机上,主机从输入带上把作业调入内存执行,作业完成后主机把计算结果送到输出内存执行,作业完成后主机把计算结果送到输出磁带上,然后由卫星机负责把输出磁带上的数据磁带上,然后由卫星机负责把输出磁带上的数据输出打印输出打印501.3.2.2 脱机批处理脱机批处理脱机批处理优点:脱机批处理优点:u主机不直接对慢速设备(纸带主机不直接对慢速设备(纸带/卡片输卡片输入机、打印机)进行控制,可以用更多入机、打印机)进行控制,可以用更多的时间进行有效的计算工作,能更充分的时间进行有效的计算工
40、作,能更充分发挥高速计算能力。发挥高速计算能力。u脱机批处理系统处理能力大大提高,脱机批处理系统处理能力大大提高,资源利用率和系统吞吐量明显改善。资源利用率和系统吞吐量明显改善。511.3.3 多道批处理系统多道批处理系统1.3.3.1 1.3.3.1 引入多道批处理的动因?引入多道批处理的动因?在单道批处理系统中内存中只有一道作业,作业运行过在单道批处理系统中内存中只有一道作业,作业运行过程中,输入、输出和计算操作是串行工作,系统始终存程中,输入、输出和计算操作是串行工作,系统始终存在空闲资源。为了进一步提高资源利用率和系统的吞吐在空闲资源。为了进一步提高资源利用率和系统的吞吐量,在量,在2
41、0世纪世纪60年代中期引入了多道程序并发执行技术,年代中期引入了多道程序并发执行技术,从而形成了多道批处理系统。从而形成了多道批处理系统。1.3.3.2 1.3.3.2 多道程序并发执行基本思想:多道程序并发执行基本思想:u内存中同时存放多道程序,在操作系统的控制下交替内存中同时存放多道程序,在操作系统的控制下交替执行。执行。521.3.3.2 多道程序并发执行基本思想多道程序并发执行基本思想u在多道批处理系统中,用户提交的作业放在在多道批处理系统中,用户提交的作业放在外存中,并排成一个队列,称为后备作业。外存中,并排成一个队列,称为后备作业。u作业调度程序按一定策略从后备队列中选择作业调度程
42、序按一定策略从后备队列中选择若干作业调入内存,使他们并发运行,从而共若干作业调入内存,使他们并发运行,从而共享系统中的资源,提高资源利用率和系统吞吐享系统中的资源,提高资源利用率和系统吞吐量。量。u虽然产生于上个世纪虽然产生于上个世纪60年代,但目前许多大、年代,但目前许多大、中型机器上都配置了这种操作系统。中型机器上都配置了这种操作系统。531.3.3.3 多道程序并发执行系统的特征多道程序并发执行系统的特征(1 1)多道性。在内存中同时驻留多道程序,分别为它)多道性。在内存中同时驻留多道程序,分别为它们创建进程。们创建进程。(2 2)调度性。单处理机系统中,每个时刻只能运行一)调度性。单处
43、理机系统中,每个时刻只能运行一道程序指令,所以同时在内存中的多道程序不能同时道程序指令,所以同时在内存中的多道程序不能同时在一个在一个CPUCPU上运行,必须进行调度。所谓调度,即采用上运行,必须进行调度。所谓调度,即采用合理的调度策略使多道程序并发执行。合理的调度策略使多道程序并发执行。(3 3)宏观上并行,微观上串行。在单处理机系统中,)宏观上并行,微观上串行。在单处理机系统中,同时处于内存中的多道程序在微观上交替占用同时处于内存中的多道程序在微观上交替占用CPUCPU运行,运行,是串行的,而在操作系统的调度下,用户感觉多道程是串行的,而在操作系统的调度下,用户感觉多道程序在并行运行。序在
44、并行运行。541.3.3.3 多道程序并发执行系统的特征(4)(4)异步性。内存中的多道程序各自开始执行异步性。内存中的多道程序各自开始执行的时间、结束时间不由其进入内存的次序决定,的时间、结束时间不由其进入内存的次序决定,在操作系统的统一调度下,多道程序以不可预在操作系统的统一调度下,多道程序以不可预知的时间开始运行,并以不可预知的速度运行,知的时间开始运行,并以不可预知的速度运行,不可预知其结束时间。不可预知其结束时间。(5 5)多道批处理的优缺点:)多道批处理的优缺点:u优点:缩短作业之间的交接时间,减少处理优点:缩短作业之间的交接时间,减少处理机的空闲等待时间,提高系统的吞吐量。机的空
45、闲等待时间,提高系统的吞吐量。u缺点:用户响应时间较长。用户既不能了解缺点:用户响应时间较长。用户既不能了解自己程序的运行情况,也不能控制计算机自己程序的运行情况,也不能控制计算机。551.3.3.31.3.3.3单道程序与多道程序并发执行比较单道程序与多道程序并发执行比较561.3.3.31.3.3.3单道程序与多道程序并发执行比较单道程序与多道程序并发执行比较571.3.3 1.3.3 分时系统分时系统分时系统发展的动因?分时系统发展的动因?多道批处理系统充分地提高了计算机资源利用率和系多道批处理系统充分地提高了计算机资源利用率和系统吞吐量,但缺少人机交互能力,用户把作业提交给统吞吐量,但
46、缺少人机交互能力,用户把作业提交给计算机后,就完全脱离了自己的作业,不能干预作业计算机后,就完全脱离了自己的作业,不能干预作业的运行,因此希望能够进行人机交互以便控制用户作的运行,因此希望能够进行人机交互以便控制用户作业运行流程。业运行流程。1.3.3.1 1.3.3.1 分时系统分时系统u在分时系统中,一台主机可以连接若干终端,每个在分时系统中,一台主机可以连接若干终端,每个用户可以通过终端与主机交互。用户可以通过终端与主机交互。581.3.3 1.3.3 分时系统分时系统图图 1 17 7 分时系统示意图分时系统示意图591.3.3 1.3.3 分时系统分时系统图图 1 17 7 分时系统
47、示意图分时系统示意图601.3.3 1.3.3 分时系统分时系统1.3.3.1 分时系统分时系统u分时技术:分时技术:CPU速度不断提高和中断技术的使用,使得一台速度不断提高和中断技术的使用,使得一台计算机可同时连接多个用户终端,而每个用户可在自己的终端计算机可同时连接多个用户终端,而每个用户可在自己的终端上联机使用计算机,好像自己独占机器一样。上联机使用计算机,好像自己独占机器一样。u分时处理:用户与应用程序随时可以交互,控制程序运行,分时处理:用户与应用程序随时可以交互,控制程序运行,适于商业和办公事务处理。适于商业和办公事务处理。u时间片:把处理机的响应时间(时间片:把处理机的响应时间(
48、CPU周期,周期,100毫秒)分成若毫秒)分成若于个大小相等(或不相等)的时间单位,称为时间片(如于个大小相等(或不相等)的时间单位,称为时间片(如20毫毫秒),每个终端用户获得规定时间单位秒),每个终端用户获得规定时间单位CPU,就可以运行,否,就可以运行,否则等待。则等待。u工作原理:高速的主机按一定次序轮流为各终端用户服务,工作原理:高速的主机按一定次序轮流为各终端用户服务,每一个用户一次仅使用主机很短的一段时间(称为时间片),每一个用户一次仅使用主机很短的一段时间(称为时间片),在分得的时间片内没有完成工作则暂时中断,将处理机分配给在分得的时间片内没有完成工作则暂时中断,将处理机分配给
49、下一个用户。下一个用户。611.3.3 1.3.3 分时系统分时系统 分时系统工作示意图分时系统工作示意图621.3.3 1.3.3 分时系统分时系统1.3.3.1 分时系统具有的特征分时系统具有的特征u多个用户同时联机操作,即多路性。同一台主机同多个用户同时联机操作,即多路性。同一台主机同时连接多个终端,各用户独占一个终端,通过终端使时连接多个终端,各用户独占一个终端,通过终端使用主机。用主机。u各用户独立。一台主机同时为若干用户服务,而各各用户独立。一台主机同时为若干用户服务,而各用户独立操作,互不干涉,对每个用户而言好像独占用户独立操作,互不干涉,对每个用户而言好像独占主机。主机。u交互
50、性。各用户通过终端联机以交互方式使用主机。交互性。各用户通过终端联机以交互方式使用主机。即用户可以通过操作系统提供一组人机交互命令,如即用户可以通过操作系统提供一组人机交互命令,如UNIX/Linux中的中的Shell命令来随意干预和控制作业的运命令来随意干预和控制作业的运行流程。行流程。631.3.3 1.3.3 时实系统(时实系统(Real-Time OSReal-Time OS)1 1 引入实时操作系统的动因?引入实时操作系统的动因?(1 1)计算计算机应用技术的发展)计算计算机应用技术的发展u早期计算机系统主要用于科学与工程方面的数值计早期计算机系统主要用于科学与工程方面的数值计算,如