《进程和处理机管理》PPT课件.ppt
《《进程和处理机管理》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《进程和处理机管理》PPT课件.ppt(104页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第3章章 进程和处理机管理进程和处理机管理 目录目录 3 31 1 进程的概念和定义进程的概念和定义进程的概念和定义进程的概念和定义 3 32 2 进程的状态和进程控制块进程的状态和进程控制块进程的状态和进程控制块进程的状态和进程控制块 3.3 3.3 进程控制进程控制 3 34 4 进程的互斥与同步进程的互斥与同步 3.5 3.5 进程通信进程通信 3 36 6 进程调度进程调度 3 37 7 死锁死锁 3 38 8 线程线程31 进程的概念和定义进程的概念和定义 操作系统是一个动态系统,在持续的运动过程中完操作系统是一个动态系统,在持续的运动过程中完成各种使命、实现各项功能。因此,要了解
2、操作系成各种使命、实现各项功能。因此,要了解操作系统各模块间的动态连接关系和相互制约关系就不能统各模块间的动态连接关系和相互制约关系就不能用静态的程序概念来刻画操作系统。因此引进一个用静态的程序概念来刻画操作系统。因此引进一个新的观点新的观点进程观点,以便钻进操作系统内部去进程观点,以便钻进操作系统内部去观察操作系统各模块的动态变化情况观察操作系统各模块的动态变化情况。3 31 11 1 为什么引入进程为什么引入进程3 31 12 2 进程的定义进程的定义311 为什么引入进程n n应该说,组织用户使用计算机的机制是随着计算机操作系应该说,组织用户使用计算机的机制是随着计算机操作系统的发展而进
3、化的。在监督程序时代是以作业形势表示程统的发展而进化的。在监督程序时代是以作业形势表示程序运行的。那时,作业以同步方式串行地运行每个作业步。序运行的。那时,作业以同步方式串行地运行每个作业步。当操作系统发展到分时系统时,为了开发同一个作业中不当操作系统发展到分时系统时,为了开发同一个作业中不同作业步之间的并发,作业机制已不能满足需要,因而引同作业步之间的并发,作业机制已不能满足需要,因而引进了进程机制,让进程来实现作业步的执行。但随着多处进了进程机制,让进程来实现作业步的执行。但随着多处理机计算机的出现,用户希望一个作业步中的程序还能够理机计算机的出现,用户希望一个作业步中的程序还能够同时在多
4、个处理机上运行,因此进程的机制得到了进一步同时在多个处理机上运行,因此进程的机制得到了进一步发展,让一个进程同时拥有多个线程,让多个线程在不同发展,让一个进程同时拥有多个线程,让多个线程在不同处理机上运行。处理机上运行。n n1.算法算法n n我们可以把算法定义为:问题求解步骤我们可以把算法定义为:问题求解步骤的精确描述。算法具有如下性质:的精确描述。算法具有如下性质:n n解题算法是一个有穷动作序列;解题算法是一个有穷动作序列;n n动作序列仅有一个初始动作;动作序列仅有一个初始动作;n n序列中每一个动作仅有一个后继动作;序列中每一个动作仅有一个后继动作;n n序列终止表示问题解决还是没有
5、得到解序列终止表示问题解决还是没有得到解决。决。n n2.2.程序程序程序程序n n程序是对一个复杂的计算(问题)用一种形程序是对一个复杂的计算(问题)用一种形程序是对一个复杂的计算(问题)用一种形程序是对一个复杂的计算(问题)用一种形式化的语言对其初始数据与操作进行形式化式化的语言对其初始数据与操作进行形式化式化的语言对其初始数据与操作进行形式化式化的语言对其初始数据与操作进行形式化描述的一个算法。描述的一个算法。描述的一个算法。描述的一个算法。n n当一个程序在运行之际,可以区分出三个不当一个程序在运行之际,可以区分出三个不同的实体。同的实体。n n(1)(1)用来描述过程的一组指令,即用
6、来描述过程的一组指令,即“过程过程”;n n(2)(2)处理机,即执行该过程的机构;处理机,即执行该过程的机构;n n(3)(3)环境,即处理机能够直接感知或能够加以环境,即处理机能够直接感知或能够加以改造的那个外部世界。改造的那个外部世界。“一切听从程序的指一切听从程序的指挥挥”。2.程序n n因此因此,程序的主要特点是:程序的主要特点是:n n(1)(1)按按“过程过程”所规定的操作,以严格顺序来执行,每所规定的操作,以严格顺序来执行,每一步都应在下一步开始之前完成(不存在并行)。这一步都应在下一步开始之前完成(不存在并行)。这一特点就是我们所说的程序的顺序性。一特点就是我们所说的程序的顺
7、序性。n n(2)(2)环境处在环境处在“程序程序”的完全控制之下,它决不以任何的完全控制之下,它决不以任何方式变化,除非这种变化是程序所采取的步骤导致的方式变化,除非这种变化是程序所采取的步骤导致的结果。这个特点被称为程序的封闭性。结果。这个特点被称为程序的封闭性。n n(3)(3)除了要求在合理的时间内获得结果外,任一操作所除了要求在合理的时间内获得结果外,任一操作所花费的时间对程序的运行而言是无关紧要的,即使在花费的时间对程序的运行而言是无关紧要的,即使在任一操作之间有一暂时间歇也没有关系。程序所产生任一操作之间有一暂时间歇也没有关系。程序所产生的结果是其输入数据的函数而与时间无关。只要
8、程序的结果是其输入数据的函数而与时间无关。只要程序执行的初始条件相同,其结果是可以再现的执行的初始条件相同,其结果是可以再现的 。3.程序的并行执行和资源的共享n n为了合理地使用系统资源,充分发挥各种资源的为了合理地使用系统资源,充分发挥各种资源的作用,最大限度地提高系统的效率,引进多道程作用,最大限度地提高系统的效率,引进多道程序设计技术。又由于计算机技术的不断发展而出序设计技术。又由于计算机技术的不断发展而出现了中断技术、分时处理和各种新型结构,如多现了中断技术、分时处理和各种新型结构,如多CPUCPU系统的出现,导致现代操作系统出现了许多系统的出现,导致现代操作系统出现了许多诸如并发性
9、、资源共享性等许多新的特征。诸如并发性、资源共享性等许多新的特征。n n(1 1)并行操作)并行操作 n n(2 2)资源共享)资源共享4.程序并行执行的特征n n程序的并行执行虽然增加了系统的处理能力和机器的利用率,但也产生了与顺序程序不同的新特征。n n(1)失去了程序的封闭性n n(2)程序并行执行时的相互制约关系312 进程的定义n n通过上述分析可知,程序在并行执行时已不能通过上述分析可知,程序在并行执行时已不能通过上述分析可知,程序在并行执行时已不能通过上述分析可知,程序在并行执行时已不能描述不封闭性和描述不封闭性和描述不封闭性和描述不封闭性和“执行执行执行执行-暂停暂停暂停暂停-
10、执行执行执行执行”活动规律,活动规律,活动规律,活动规律,需要有一种新的概念工具来描述下列特征:需要有一种新的概念工具来描述下列特征:需要有一种新的概念工具来描述下列特征:需要有一种新的概念工具来描述下列特征:n n能描述能描述能描述能描述“计算计算计算计算”这一现象;这一现象;这一现象;这一现象;n n能描述能描述能描述能描述“执行执行执行执行-暂停暂停暂停暂停-再执行再执行再执行再执行”这一活动规律;这一活动规律;这一活动规律;这一活动规律;n n能为并行执行的能为并行执行的能为并行执行的能为并行执行的“计算计算计算计算”的制约关系提供协调的制约关系提供协调的制约关系提供协调的制约关系提供
11、协调和共享资源的机构。和共享资源的机构。和共享资源的机构。和共享资源的机构。n n这样的新概念称为进程或任务。这样的新概念称为进程或任务。这样的新概念称为进程或任务。这样的新概念称为进程或任务。2.进程与程序的主要区别n n(1)(1)程序只是指令的有序集合,是静态的描述,没有运程序只是指令的有序集合,是静态的描述,没有运行的含义,所以程序是静止的;进程是程序的一次运行的含义,所以程序是静止的;进程是程序的一次运行活动,是动态的概念。行活动,是动态的概念。n n(2)(2)进程是一个独立运行的单位,共享资源的实体,能进程是一个独立运行的单位,共享资源的实体,能与其他进程并发执行,而程序则不然。
12、操作系统中以与其他进程并发执行,而程序则不然。操作系统中以资源管理的中心思想来看,进程可以看成是资源的顾资源管理的中心思想来看,进程可以看成是资源的顾客和使用者。客和使用者。n n(3)(3)一个程序可以对应多个进程,反过来,一个进程至一个程序可以对应多个进程,反过来,一个进程至少对应一段程序。逻辑上,每个进程有自己的处理机少对应一段程序。逻辑上,每个进程有自己的处理机和程序,实际上两个进程可以共享同一段程序或同一和程序,实际上两个进程可以共享同一段程序或同一个处理机,所以进程不等价于程序,也不等价于处理个处理机,所以进程不等价于程序,也不等价于处理机,它是执行期间的机,它是执行期间的 对。对
13、。n n(4)(4)静态地观察进程,其实体是由程序和数据两部分构静态地观察进程,其实体是由程序和数据两部分构成,与程序没有什么区别。成,与程序没有什么区别。3.进程的特征n n进程具有如下的特征:进程具有如下的特征:n n(1 1)动态特征)动态特征n n进程的实质是并行程序的一次执行过程,因此,动态特征是进程进程的实质是并行程序的一次执行过程,因此,动态特征是进程的最基本的特征。其动态性表现在它可以由创建而产生、由调度的最基本的特征。其动态性表现在它可以由创建而产生、由调度而执行、由于得不到资源而暂停,由撤消而消亡。进程存在一个而执行、由于得不到资源而暂停,由撤消而消亡。进程存在一个生命周期
14、。生命周期。n n(2 2)并行特征)并行特征n n引入进程的目的是使程序能并行执行,以提高资源的利用率。引入进程的目的是使程序能并行执行,以提高资源的利用率。n n(3 3)独立特征)独立特征n n进程是独立运行的单位,也是系统进行资源分配和调度的独立单进程是独立运行的单位,也是系统进行资源分配和调度的独立单位。位。n n(4 4)异步特征)异步特征n n进程按照各自独立的,不可预知的速度向前推进,所以要求系统进程按照各自独立的,不可预知的速度向前推进,所以要求系统提供某种设施使进程间能协调操作和共享资源,保证它们协调运提供某种设施使进程间能协调操作和共享资源,保证它们协调运行。行。n n(
15、5 5)结构特征)结构特征n n进程是有结构的,体现在每个进程有一个记录进程当前信息的进进程是有结构的,体现在每个进程有一个记录进程当前信息的进程控制块(程控制块(PCB Process Control BlockPCB Process Control Block)。每个进程都是由一个程)。每个进程都是由一个程序段和相应数据集以及进程控制块三部分组成。在序段和相应数据集以及进程控制块三部分组成。在UNIXUNIX操作系统操作系统中将这三部分称为中将这三部分称为“进程映象进程映象”,它把进程定义为:进程映象的,它把进程定义为:进程映象的执行。执行。n n引入进程这一概念后,就可以很方便地动态地引
16、入进程这一概念后,就可以很方便地动态地描述操作系统了,但引入进程也有不利之处:描述操作系统了,但引入进程也有不利之处:n n(1)(1)必须为设置进程付出一定的空间开销,因为必须为设置进程付出一定的空间开销,因为并行执行的操作系统本身就复杂,如,必须设并行执行的操作系统本身就复杂,如,必须设置进程管理并为并行执行的各进程之间的同步置进程管理并为并行执行的各进程之间的同步和协调建立某些机构,由于并行执行就必须考和协调建立某些机构,由于并行执行就必须考虑避免死锁等问题而使系统复杂化。另外,每虑避免死锁等问题而使系统复杂化。另外,每个进程都必须有一个进程控制块(个进程都必须有一个进程控制块(PCBP
17、CB),它),它也占用了一部分内存空间。也占用了一部分内存空间。n n(2)(2)必须为设置进程付出一定的时间开销,因为必须为设置进程付出一定的时间开销,因为运行一个复杂的系统软件将花费更多的处理机运行一个复杂的系统软件将花费更多的处理机时间。时间。32 进程的状态和进程控制块进程的状态和进程控制块n n3 32 21 1 进程的状态进程的状态进程的状态进程的状态n n进程是动态的,它存在着生命周期。它有诞生进程是动态的,它存在着生命周期。它有诞生(创建)和灭亡(撤消)过程,在它的生命周期(创建)和灭亡(撤消)过程,在它的生命周期中又反映出它的执行中又反映出它的执行-暂停暂停-再执行的活动规律
18、,进再执行的活动规律,进程最主要的特征是具有状态。进程在其活动期间程最主要的特征是具有状态。进程在其活动期间具有两种状态:自由状态和等待状态。任一进程具有两种状态:自由状态和等待状态。任一进程在任一时刻有且只有这两种状态之一。自由状态在任一时刻有且只有这两种状态之一。自由状态又可分为:运行状态和就绪状态。又可分为:运行状态和就绪状态。321 进程的状态n n就绪状态(Ready)该进程已经获得了除了处理机以外的全部资源并准备好运行,但由于进程数多于处理机数目,所以此进程不能占用处理机执行,一旦为其分配到处理机该进程便立即执行。321 进程的状态n n执行状态(Executive)进程获得了处理
19、机等必要的资源,该进程已占用处理机,其程序正在处理机上执行。321 进程的状态n n阻塞状态(Block)正在执行中的进程,由于发生了某一事件而使之暂时无法执行下去(如,等待I/O操作完成,或由于同步、互斥而等待)而处于暂停状态,即该进程的运行受到了阻塞(即等待状态或睡眠状态)。进程的三种不同状态进程的三种不同状态 就 绪阻 塞执 行 进程的状态322 进程的状态演变n进程的状态不是一成不变的,它是随着自身的推进和外界条件的变化而变化的。下图为简单的进程状态演变图及演变事由。进程调度执 行就 绪阻 塞事件结束时间片到图3-5 简单的进程状态演变图n n应该说明的是应该说明的是:n n(1 1)
20、在在进进程程的的生生命命周周期期中中,处处于于执执行行状状态态的的进进程程因因为为某某一一事事件件(如如I/OI/O请请求求等等事事件件)出出现现而而变变成成阻阻塞塞状状态态,当当该该事事件件消消除除后后,被被阻阻塞塞的的进进程程并并不不恢恢复复到到执执行行状状态态,而而转转变变为为就就绪绪状状态态等等待待再再一一次次重重新新被被进进程程调调度度程程序序调调度度。这这是是因因为为当当该该进进程程被被阻阻塞塞时时,为为了了使使处处理理机机不不空空闲闲,进进程程调调度度程程序序立立即即将将处处理理机机分配给另一个处于就绪状态的进程。分配给另一个处于就绪状态的进程。n n(2 2)当当进进程程从从运
21、运行行状状态态变变为为就就绪绪或或阻阻塞塞状状态态时时,必须保留它的运行的现场信息,以便将来恢复运行。必须保留它的运行的现场信息,以便将来恢复运行。n n(3 3)处于同一状态的进程可以构成队列,系统中)处于同一状态的进程可以构成队列,系统中可以有一个运行队列、但是在只有一个处理机的情可以有一个运行队列、但是在只有一个处理机的情况下,任一时刻处于运行状态的进程只能有一个。况下,任一时刻处于运行状态的进程只能有一个。系统中可以有一个或多个就绪队列和若干个等待队系统中可以有一个或多个就绪队列和若干个等待队列,由于同一个原因而等待的进程应该属于同一个列,由于同一个原因而等待的进程应该属于同一个等待队
22、列,相应每个队列设有指针,指向相应队列等待队列,相应每个队列设有指针,指向相应队列的首部。的首部。相应队列指针名称状态现场优先数指针Proc2Run870Proc3Block785Proc4Block750Proc5Block650Proc6Ready518Proc7Block449Proc8Ready37nProc9Block290ProcnReady1026137runningreadyC1C2C3CmProc1Block894 进程队列 时间片到进程调度事件结束某一事件用户提交收容就绪阻塞完成用户执行进程状态模型进程调度发生某一事件时间片到挂起唤醒执 行活动就绪静止就绪活动阻塞激活挂起唤
23、醒激活挂起静止阻塞创建具有挂起状态的进程状态转换图323 进程控制块(Process control block)n n在进程的生命周期中,进程可以处于各种不同的状态,如何描述进程及其状态?进程控制块是表示进程存在的唯一实体。当创建一个进程时,必须为其设置一个进程控制块(PCB),由它对进程进行管理和控制。n n不同系统的进程控制块所包含的信息不尽相同,大体上都包括以下几项:n n(1)进程标识符(Identification)n n(2)现行状态(Status)n n(3)CPU状态保护区n n(4)进程程序的起始地址n n(5)资源清单n n(6)进程优先数n n(7)队列指针或队列表n
24、n(8)进程的家族信息3.3 进程控制进程控制 进程控制的功能是对系统中的全部进程实施有效的管理,它有创建进程和撤消进程的能力。1.进程家族与分类 2.进程控制的基本操作331 进程家族与分类n n1.进程家族进程家族n n进程的家族结构有两种:一种是非结构系进程的家族结构有两种:一种是非结构系统;另一种是树型结构系统统;另一种是树型结构系统。n n在非结构系统中管理程序直接对全部进程实施管理,它可以实施创建进程和撤消进程等操作。各进程之间的关系也是“平等”的。n n在树型结构的进程家族中,一个父进程可以创建一个子进程而形成一个进程家族。如图3-9(a)给出了非结构系统进程家族示意图;图3-9
25、(b)给出了树型结构的进程家族的示意图。进程A进程n进程B管理程序(a)ABCDEFHGIJK(b)进程家族的结构1.进程家族n n进程的家族结构有两种:一种是非结构系统;另一种是树型结构系统。在非结构系统中管理程序直接对全部进程实施管理,它可以实施创建进程和撤消进程等操作。各进程之间的关系也是“平等”的,如图3-9(a)所示。在树型结构的进程家族中,一个父进程可以创建一个子进程而形成一个进程家族。图3-9(b)给出了树型结构的进程家族的示意图。1.进程家族进程A进程n进程B管理程序(a)ABCDEFBHGIJK(b)图3-9 进程家族的结构1.进程家族n n树型结构的优点是:树型结构的优点是
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 进程和处理机管理 进程 处理机 管理 PPT 课件
限制150内