全套课件·《操作系统原理教程(第二版).ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《全套课件·《操作系统原理教程(第二版).ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 全套 课件 操作系统 原理 教程 第二
- 资源描述:
-
1、第1章 操作系统概述1.1 计算机系统1.2 操作系统的目标、作用和模型1.3 操作系统的形成与发展1.4 操作系统的特征与功能本章结束!1.1 计算机系统1.1.1 计算机硬件 计算机硬件是指组成计算机系统的设备或机器,它是组成计算机系统的基础。计算机硬件一般包括中央处理器(CPU)、主存储器、外存储器、输入设备和输出设备,其中CPU与主存储器合称为主机,外存储器、输入设备和输出设备合称为外部设备。第1章 操作系统概述1.1 计算机系统1.1.1 计算机硬件 计算机硬件之间的关系如图1-1所示。第1章 操作系统概述1.1 计算机系统第1章 操作系统概述1.1 计算机系统1.1.2 计算机软件
2、 软件的作用如图1-2所示。计算机用户通过应用软件让计算机为自己服务,而应用软件又是通过系统软件来管理和使用计算机硬件。第1章 操作系统概述1.1 计算机系统1.1.2 计算机软件 系统软件包括操作系统、数据库管理系统、计算机编译语言和各种系统服务性程序。应用软件包括计算机源程序和应用软件包。所有这些软件,操作系统是基础,它是其他软件的平台。没有操作系统,其他软件就无法工作。第1章 操作系统概述返回1.2 操作系统的作用、目标与模型1.2.1 操作系统的作用 1.作用作用:操作系统是在计算机硬件上加载的第一层软件,是对计算机硬件功能的首次扩充。其他软件只有在操作系统的支持下,才能对计算机硬件工
3、作。操作系统的作用如图1-4所示。第1章 操作系统概述1.2 操作系统的作用、目标与模型1.2.1 操作系统的作用 2.四种作用形式四种作用形式:用户通过编写的源程序,在数据库管理系统(DBMS)或编译系统的作用下,由操作系统控制和解释给硬件去执行;用户通过服务性程序(也称工具软件),经操作系统的作用,来完成对计算机的操作;用户通过可执行程序,经操作系统的作用来实现对硬件的操作;用户通过操作系统提供的命令来实现对硬件的操作。第1章 操作系统概述1.2 操作系统的作用、目标与模型第1章 操作系统概述1.2 操作系统的作用、目标与模型1.2.3 操作系统的层次模型 操作系统可以看成是一个层次结构,
4、其最底层为操作系统的操作对象,中间层为管理操作对象的软件集合,最高层为提供给用户的系统接口,如图1-5所示。第1章 操作系统概述1.2 操作系统的作用、目标与模型第1章 操作系统概述返回1.3 操作系统的形成与发展第1章 操作系统概述1.3 操作系统的形成与发展1.3.2 操作系统的发展 1无操作系统无操作系统:其资源管理和控制由人工负责,它采用两种方式:人工操作方式和脱机输入输出方式。(1)人工操作方式人工操作方式:计算机资源的管理是由操作员采用人工方式直接控制的。其特点是:一个用户独占计算机系统的全部资源,计算机主机要等待人工操作,系统资源的利用率低。(2)脱机输入输出方式脱机输入输出方式
5、:是指程序和数据的输入输出是在外围机的控制下,而不是在主机的控制下完成的。其特点是:它减少了计算机主机的空闲等待时间,提高了I/O设备的处理速度。第1章 操作系统概述1.3 操作系统的形成与发展1.3.2 操作系统的发展 2批处理系统批处理系统:批处理系统主要采用了批处理技术。批处理技术是计算机系统同时对一批作业自动进行处理的一种技术。批处理系统有单道批处理系统和多道批处理系统两种形式。(1)单道批处理系统单道批处理系统:其工作流程是:首先操作员将若干个待处理的作业合成一批输入并传输到外存,然后将它们逐个送入主存并投入运行,当一个作业执行结束后自动转入下一个作业执行。其特点是:其特点是:大大减
6、少了人工操作的时间,提高了机器的利用率。但是,在单道批处理作业运行时,主存中仅存放了一道程序,每当程序发出I/O请求时,CPU便处于等待I/O完成状态,致使CPU空闲,特别是I/O设备的低速性,使CPU的利用率降低。第1章 操作系统概述1.3 操作系统的形成与发展第1章 操作系统概述1.3 操作系统的形成与发展第1章 操作系统概述1.3 操作系统的形成与发展第1章 操作系统概述1.3 操作系统的形成与发展1.3.2 操作系统的发展 3分时操作系统分时操作系统:(2)具有)具有“前台前台”和和“后台后台”的分时系统的分时系统 在单道分时系统中,作业调入/调出时,CPU处于“空闲”状态;主存中的作
7、业在执行I/O请求时,CPU也处于“空闲”状态。为了充分利用CPU而引入了“前台”和“后台”的概念。在具有“前台”和“后台”的分时系统中,主存被固定地划分为“前台区”和“后台区”两部分。“前台区”存放按时间片“调入”和“调出”的作业流,“后台区”存放批处理作业,仅当前台调入/调出时(或前台无作业可运行时),才能运行“后台区”中的作业,并且给它分配更长的时间片。第1章 操作系统概述1.3 操作系统的形成与发展1.3.2 操作系统的发展 3分时操作系统:分时操作系统:(3)多道分时系统)多道分时系统 为了进一步改善系统的性能,在分时系统中引入了多道程序设计技术。在主存中可以同时装入多道程序,每道程
8、序无固定位置,对小作业可以装入几道程序,对一些较大的作业则少装入几道程序。系统把所有具备运行条件的作业排成一个队列,使它们依次获得一个时间片来运行。在系统中,既有终端用户作业,又有批处理作业时,应赋予终端作业较高的优先权,并且将它们排成一个高优先权队列;而将批处理作业另外排成一个队列。平时轮转运行高优先权队列的作业,以保证终端用户请求能获得及时响应。仅当该队列为空时,才能运行批处理队列中的作业。由于切换的作业在主存中,不用花费调入、调出的开销,故多道分时系统具有较好的系统性能。现代的分时系统都属于多道分时系统。第1章 操作系统概述1.3 操作系统的形成与发展第1章 操作系统概述1.3 操作系统
9、的形成与发展第1章 操作系统概述1.3 操作系统的形成与发展第1章 操作系统概述1.3 操作系统的形成与发展第1章 操作系统概述1.3 操作系统的形成与发展第1章 操作系统概述1.3 操作系统的形成与发展第1章 操作系统概述1.3 操作系统的形成与发展第1章 操作系统概述1.3 操作系统的形成与发展第1章 操作系统概述1.3 操作系统的形成与发展第1章 操作系统概述1.3 操作系统的形成与发展1.3.2 操作系统的发展 8分布式操作系统分布式操作系统:分布式处理系统是指由多个分散的处理单元经互联网的连接而形成的系统。系统的处理和控制功能,都分散在系统的各个处理单元上。系统的所有任务,也可以动态
10、地分配到各个处理单元上,并且使它们并行执行,实现分布处理。第1章 操作系统概述1.3 操作系统的形成与发展第1章 操作系统概述1.3 操作系统的形成与发展1.3.2 操作系统的发展 8分布式操作系统分布式操作系统:分布式操作系统与网络操作系统的主要区别:分布式操作系统与网络操作系统的主要区别:一是,能否适用不同的操作系统一是,能否适用不同的操作系统。网络操作系统可以构架于不同的操作系统之上,也就是说,它可以在不同的本机操作系统上,通过网络协议实现网络资源的统一配置,在大范围内构成网络操作系统;而分布式操作系统是由一种操作系统构架的。二是,对资源的访问方式不同。二是,对资源的访问方式不同。网络操
11、作系统在访问系统资源时,需要指明资源的位置和类型,对本地资源和异地资源的访问要区别对待;而分布式操作系统对所有资源,包括本地资源和异地资源,都用同一方式进行管理和访问,用户不必关心资源在哪里,或资源是怎样存储的。第1章 操作系统概述1.3 操作系统的形成与发展第1章 操作系统概述返回1.4 操作系统的特征与功能第1章 操作系统概述1.4 操作系统的特征与功能第1章 操作系统概述1.4 操作系统的特征与功能第1章 操作系统概述1.4 操作系统的特征与功能改造为能同时供多个进程使用的设备,从而提高设备的利用率。第1章 操作系统概述1.4 操作系统的特征与功能第1章 操作系统概述1.4 操作系统的特
12、征与功能第1章 操作系统概述1.4 操作系统的特征与功能第1章 操作系统概述返回第2章 处理器管理2.1 处理器管理概述2.2 进程描述2.3 进程控制2.4 进程同步与互斥2.5 进程通信2.6 进程调度2.7 进程死锁2.8 线程、超线程和双核的基本概念本章结束!2.1 处理器管理概述2.1.1 处理器管理的功能 处理器管理的主要任务是对处理器进行分配,并对其运行进行有效的控制和管理。在现代操作系统中,处理器的分配和运行都是以进程为基本单位的,因而对处理器的管理也可以视为对进程的管理。进程是程序的一次执行过程。处理器管理包括以下功能:1.进程控制。进程控制。在并发运行环境中,要使程序运行,
13、必须先为它创建一个或几个进程,并给它分配必要的资源。程序运行结束时,要撤消这些进程,并回收这些进程所占用的各类资源。进程控制的主要任务就是为程序创建进程,撤消已结束的进程,以及控制进程在运行过程中的状态转换。第2章 处理器管理2.1 处理器管理概述2.1.1 处理器管理的功能 2.进程同步。进程同步。在并发环境中,进程是以异步方式工作的,并且以不可预知的速度向前推进。为了使多个进程能有条不紊地运行,系统中必须设置进程同步机制。进程同步的主要任务是对众多的进程运行进行协调。协调方式有两种:(1)进程互斥方式。进程在对临界资源访问时,应采用互斥方式,也就是当一个进程访问临界资源时,另一个要访问该临
14、界资源的进程必须等待;当获取临界资源的进程释放临界资源后,其他进程才能获取临界资源。这种进程之间的相互制约关系称为互斥。简单地说,互斥就是“有我就没你,有你就没我”。临界资源是指一次只能被一个进程使用的资源。第2章 处理器管理2.1 处理器管理概述2.1.1 处理器管理的功能 2.进程同步。进程同步。(2)进程同步方式。相互合作的进程,由同步机构对它们的执行次序加以协调。也就是前一个进程结束,后一个进程才能开始;前一个进程没有结束,后一个进程就不能开始。这种进程之间的相互合作关系称为同步。简单地说,同步就是“有你才有我,没你就没我”。第2章 处理器管理2.1 处理器管理概述2.1.1 处理器管
15、理的功能 3.进程通信。进程通信。在系统中,经常会有多个进程需要相互配合去完成一个共同的任务,而在这些进程之间,往往需要相互交换信息。进程通信的任务就是用来实现相互合作进程之间的信息交换。进程的通信方式有:(1)当相互合作的进程处于同一台计算机系统时,通常采用直接通信方式。由源进程利用发送命令直接将消息发送到目标进程的消息队列上,然后由目标进程利用接收命令从其消息队列中取出消息。(2)当相互合作的进程处于不同计算机系统时,通常采用间接通信方式。由源进程利用发送命令将信息发送到一个专门存放消息的中间实体中,然后由目标进程利用接收命令从中间实体中取出消息。这个中间实体通常称为“邮箱”,相应的通信系
16、统称为电子邮件系统。第2章 处理器管理2.1 处理器管理概述2.1.1 处理器管理的功能 4.处理器调度。处理器调度。等待在后备队列上的作业,通常要经过处理器调度才能执行。处理器调度包括作业调度(也称为高级调度)、进程调度(也称为低级调度)和中级调度。(1)作业调度的基本任务是从后备队列中按照一定的算法,选择出若干个作业,为它们分配必要的资源,将它们调入主存,然后为它们建立进程,使之成为可能获得处理器的就绪进程,并按照一定的算法将其插入到就绪队列。作业调度将在第6章作业管理与系统接口中介绍。(2)进程调度的基本任务是从进程的就绪队列中,按照一定的调度算法选出一个进程,把处理器分配给它,并为它设
17、置运行现场,使进程投入运行。本章主要介绍进程调度。第2章 处理器管理2.1 处理器管理概述2.1.1 处理器管理的功能 4.进程调度。进程调度。(3)中级调度的基本任务是把那些暂时不能运行的进程从主存移到外存上,释放其所占有的宝贵资源,让其他进程运行。当移到外存上的进程具备运行条件时,再由中级调度把它们重新调入主存,等待运行。中级调度将在第3章存储器管理的对换技术中详细介绍,也可以参考本章2.2.4的内容。第2章 处理器管理2.1 处理器管理概述2.1.2 程序的执行 程序执行是指程序在计算机中的运行过程。程序的执行可以用前趋图表示,程序的执行方式有顺序执行和并发执行。1.前趋图。它是一个有向
18、无循环图。图中的每个结点可用于表示一条语句、一个程序段等;结点间的有向边表示在两个结点之间存在的前趋关系。如Pi Pj,称Pi是Pj的前趋,而Pj是Pi的后继。在前趋图中,没有前趋的结点称为初始结点,没有后继的结点称为终止结点。应当注意的是,前趋图中不能存在循环。第2章 处理器管理2.1 处理器管理概述2.1.2 程序的执行 1.前趋图。图2-1所示的前趋图。在图2-1所示的前趋图中存在下述前趋关系:P1 P2,P1 P3,P2 P5,P3 P4,P4 P5,P5 P6第2章 处理器管理2.1 处理器管理概述2.1.2 程序的执行 2.程序的顺序执行。程序在执行时,必须按照某种先后次序逐个执行
19、操作,只有当前一个操作执行完后,才能执行后一个操作。例如:在进行计算时,总是先输入需要的数据,然后才能进行计算,计算完成后再将结果输出。如果用I代表输入,C代表计算,P代表打印,则上述情况可用图2-2所示的前趋图表示。第2章 处理器管理2.1 处理器管理概述2.1.2 程序的执行 2.程序的顺序执行。程序的顺序执行通常表现出如下特征:顺序性。严格按照程序所规定的顺序执行。封闭性。程序在封闭的环境下执行。程序在运行时独占所有资源,其执行结果不受外界因素的影响。可再现性。只要程序执行的环境和初始条件相同,程序无论重复执行多少次,按照何种方式执行,都将获得相同的结果。第2章 处理器管理2.1 处理器
20、管理概述2.1.2 程序的执行 3.程序的并发执行。是指在一个时间段内执行多个程序。程序在并发执行的特征:间断性。在程序并发执行时,由于它们之间共享资源或相互合作,致使它们之间形成了相互制约的关系,导致并发程序在执行中因为受到影响,表现为“执行暂停执行执行”的间断性活动规律。失去封闭性。程序并发执行时,多个程序共享系统中的各种资源,因而这些资源的状态将由多个程序来改变,致使程序的运行失去了封闭性。这样,程序在执行时,必然会受到其他程序的影响。不可再现性。由于程序执行时失去了封闭性,也将导致失去可再现性。既使并发程序执行的环境和初始条件相同,程序的多次执行或以不同的方式执行,可能获得不相同的结果
21、。第2章 处理器管理2.1 处理器管理概述2.1.2 程序的执行 3.程序的并发执行。【例2-1】程序A和程序B为并发执行,它们共享变量M,假设M初值为3;程序A执行M=M+1;程序B执行print M;M=1。程序A和程序B执行的顺序若不相同,M的结果将产生不同的变化。顺序1M=M+1;print M;M=1。M值依次为4、4、1。顺序2print M;M=M+1;M=1。M值依次为3、4、1。顺序3print M;M=1;M=M+1。M值依次为3、1、2。按照顺序1执行,M的输出结果为4;按照顺序2执行,M的输出结果为3;按照顺序3执行,M的输出结果为3。所以,当执行的条件不同时,并发程序
22、有可能产生不同的执行顺序,也就会得到不同的执行结果。这样并发程序就形成了结果的不可再现性。第2章 处理器管理2.1 处理器管理概述2.1.2 程序的执行 3.程序的并发执行。判断程序并发执行的方法有两种:Bernstein条件和前趋图。(1)Bernstein条件。即不同运算(或程序)的读集与写集的交集和写集与写集的交集的并集为空集时,这几个运算(或程序)可以并发执行。运算的读集是指在运算执行期间引用的所有变量的集合,运算的写集是指在运算执行期间要改变的所有变量的集合。例如运算w=x+y,其读集是x,y,其写集是w。第2章 处理器管理2.1 处理器管理概述2.1.2 程序的执行(1)Berns
23、tein条件。【例2-2】有四条语句,哪些语句可以并发执行?s1:a=x+y;s2:b=z+1;s3:c=a-b;s4:d=c+1;【解】要先确定运算,然后写出每个运算的读集与写集,最后两两判断运算的读集与写集,写集与写集的交集的并集是否是空集;若是,则可以并发,若不是空集,则不能并发。对于本题,四条语句的读集与写集分别是:读集:R(s1)=x,y,R(s2)=z,R(s3)=a,b,R(s4)=c;写集:W(s1)=a,W(s2)=b,W(s3)=c,W(s4)=d。由Bernstein条件可知s1与s2可以并发执行,s1与s3,s2与s3,s3与s4不能并发执行。第2章 处理器管理2.1
24、处理器管理概述2.1.2 程序的执行 3.程序的并发执行。(2)利用前趋图。画出程序执行的前趋图,根据该程序或运算在前趋图中的位置关系,可以判断其能否并发执行。即在程序或运算的先后顺序上,只有前后相邻的程序或运算不能并发执行,其余程序和运算都可以并发执行。【例2-3】已知一个求值公式(a2+3b)/(b+5a),若a、b已赋值,试画出该公式求值过程的前趋图,并判断哪些求值过程可以并发执行。第2章 处理器管理2.1 处理器管理概述2.1.2 程序的执行 3.程序的并发执行。【解】把公式(a2+3b)/(b+5a)按照运算顺序分解,可以产生如下运算步骤:s1s6,如图2-4(a)所示;根据分解的运
25、算顺序画出它的前趋图,如图2-4(b)所示。第2章 处理器管理2.1 处理器管理概述2.1.2 程序的执行 3.程序的并发执行。根据前趋图,可以看出能够并发执行的运算是:s1与s2、s1与s3、s2与s3、s1与s5、s2与s5、s3与s4、s4与s5,其余运算不能并发执行。第2章 处理器管理返回2.2 进程描述2.2.1 进程的概念 1进程的定义。“进程”这一术语,在20世纪60年代初期,首先出现在麻省理工学院的MULTICS系统和IBM公司的CTSS/360系统中。其后,人们对它不断加以改进,从不同的方面对它进行描述。关于进程的定义有以下一些描述:进程是程序的一次执行。进程可以定义为一个数
展开阅读全文