操作系统OS02进程管理课件.ppt
《操作系统OS02进程管理课件.ppt》由会员分享,可在线阅读,更多相关《操作系统OS02进程管理课件.ppt(161页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第二章 进 程 管 理 1第二章进程管理n 重点:n 进程的定义、进程控制的基本概念。n 进程PCB的基本结构,作用及进程的状态转换。n 进程同步与互斥的基本概念和解决方法。n 几个经典的进程同步与互斥问题及算法。n 线程的基本概念及状态。n 难点:n 进程的同步与互斥第二章 进 程 管 理 2第二章进程管理主要内容:2.1进程的基本概念2.2进程控制2.3进程同步2.4经典进程的同步问题2.5管程机制2.6进程通信2.7线程第二章 进 程 管 理 32.1.进程的基本概念2.1.1程序的顺序执行及其特征2.1.2前趋图2.1.3程序的并发执行及其特征2.1.4进程的特征与状态2.1.5进程控
2、制块第二章 进 程 管 理 42.1.1 程序的顺序执行及特征1、程序的顺序执行例1:数据计算时要经过I:输入操作C:计算操作P:打印操作:例2:如下三条语句的执行 S1:a:=x+y;S2:b:=a-5;S3:c:=b+1;2、特征n 顺序性、封闭性、可再现性I1C1P1I2C2P2语句 语句S1 S1语句 语句S2 S2语句 语句S3 S3第二章 进 程 管 理 52.1.2 前趋图1、前趋图(PrecedenceGraph)n 一个有向无循环图n 描述进程之间执行的前后关系2、前趋关系“”n=(Pi,Pj)|PimustcompletebeforePjmaystartn 如果:(Pi,P
3、j),也可以写成:Pi Pjn 则称:Pi是Pj的直接前趋,Pj是Pi的直接后继n 初始结点:没有前趋n 终止结点:没有后继n 每个结点还具有一个权或重量(Weight),表示该结点的程序量或执行时间。P1 P2P3P1 P2P3第二章 进 程 管 理 6 其前趋关系表示为:P=P1,P2,P3,P4,P5,P6,P7=(P1,P2),(P1,P3),(P1,P4),(P2,P5),(P3,P5),(P4,P6),(P5,P7),(P6,P7)P1P4P3P2P6P5P7具有7个结点的前驱图第二章 进 程 管 理 72.1.3 程序的并发执行及其特征I1C1P1I2C2P2I3C3P3I4C4
4、P4输入程序计算程序打印程序1、在对一批程序进行处理时,可以并发执行。例1:输入、计算、打印三个程序对一批作业进行处理时存在前趋关系:前驱关系:IiCi,IiIi+1,CiPi,CiCi+1,PiPi+1第二章 进 程 管 理 82.1.3程序的并发执行及其特征例2:对于下述四条语句的程序段:S1:a:=x+2;S2:b:=y+4;S3:c:=a+b;S4:d:=c+b;S2S1S3S4前驱关系第二章 进 程 管 理 9n 又如:三个程序的执行顺序如图:P1:a:=1P2:x:=a+1P3:y:=a+12.1.3程序的并发执行及其特征P1P2P3前驱关系第二章 进 程 管 理 10程序并发执行
5、条件(Bernstein条件)将任一语句划分为两个变量的集合R(Si)和W(Si):读集R(Si)=a1,a2,am写集W(Si)=b1,b2,bn如对语句S1和S2有:R(S1)W(S2)=W(S1)R(S2)=W(S1)W(S2)=成立,则语句S1和S2可并发执行。第二章 进 程 管 理 11程序并发执行条件(Bernstein条件)例1语句c=ab和w=c+1R(c=ab)=a,bW(c=ab)=cR(w=c+1)=cW(w=c+1)=wR(w=c+1)W(c=ab)=c语句c=ab和w=c+1不能并发执行。第二章 进 程 管 理 122、程序并发执行时的特征n 间断(异步)性:“执行暂
6、停执行”,一个程序可能走到中途停下来,失去原有的时序关系。n 失去封闭性:共享资源,受其他程序的控制逻辑的影响。如:一个程序写到存储器中的数据可能被另一个程序修改,失去原有的不变特征。n 不可再现性:失去封闭性失去可再现性;外界环境在程序的两次执行期间发生变化,失去原有的可重复特征。第二章 进 程 管 理 13程序并发执行时的不可再现性例如:有两个循环程序A和B,共享一个变量N。程序A每执行一次时,都要做N:=N+1;程序B每执行一次时,都要执行print(N),然后将N置成0。程序A和B以不同的速度运行。可能出现的情况如下(某时刻变量N的值为n):1、N:=N+1在print(N)和N:=0
7、之前,2、N:=N+1在print(N)和N:=0之后,3、N:=N+1在print(N)和N:=0之间,得到的N值为n+1,n+1,0得到的N值为n,0,1得到的N值为n,n+1,0第二章 进 程 管 理 142.1.4进程的特征与状态1.进程的特征与定义2.进程的三种基本状态3.挂起状态4.创建状态和终止状态第二章 进 程 管 理 15进程特征n 结构特性(PCB-ProcessControlBlock)n 进程实体程序段相关的数据段PCBn 动态性n 由创建而产生,由调度而执行,由撤销而消亡n 并发性n 独立性n 独立运行、独立分配资源、独立接受调度n 异步性第二章 进 程 管 理 16
8、进程定义n 进程的典型定义:(1)进程是程序的一次执行(2)进程是一个程序及其数据在处理机上顺序执行时所发生的活动(3)进程是程序在一个数据集合上运行的过程,它是系统进行资源分配和调度的一个独立单位。n 传统OS中进程定义:进程是进程实体的运行过程,是系统进行资源分配和调度的一个独立单位。第二章 进 程 管 理 17进程与程序的区别:(如同“演出”与“剧本”)进程是动态的,程序是静态的:程序是有序代码的集合;进程是程序的执行。进程更能真实地描述并发执行,可以揭示OS的内部特征,而程序不能。进程是暂时的,程序是永久的:进程是一个状态变化的过程,程序可长久保存。进程与程序的组成不同:进程的组成包括
9、程序、数据和进程控制块(即进程状态信息);程序仅是代码的有序集合。进程与程序的对应关系:通过多次执行,一个程序可对应多个进程;通过调用关系,一个进程可涉及到多个程序的执行。进程具有创建其他进程的功能,父进程创建子进程而形成进程树,而程序不能。第二章 进 程 管 理 18进程的基本状态n 三种基本状态:n 就绪状态n 执行状态n 阻塞状态进程状态转换阻塞状态就绪状态执行状态调度I/O请求进程唤醒时间片到第二章 进 程 管 理 19第二章 进 程 管 理 20挂起状态n 引入挂起状态的原因:n 终端用户请求n 父进程请求:考查、修改或协调各子进程时;n 负荷调节的需要:缓和内存紧张的情况;n 操作
10、系统的需要:改善系统运行性能,调节负荷;n 增加的状态:n 挂起状态(静止状态)n 非挂起状态(活动状态)第二章 进 程 管 理 21具有挂起状态的进程状态图活动阻塞执行状态活动就绪静止就绪静止阻塞调度唤醒I/O请求激活激活挂起挂起挂起唤醒第二章 进 程 管 理 22创建状态和终止状态n创建状态n创建一个进程过程:1.为一个新进程创建PCB,并填写必要的管理信息2.把该进程转入就绪状态并插入就绪队列之中n引入创建状态,为了保证进程的调度必须在创建工作完成后进行,以确保对进程控制块操作的完整性。第二章 进 程 管 理 23创建状态和终止状态n 终止状态n 进程终止过程n 首先,等待操作系统进行善
11、后处理n 然后,将其PCB清零,并将PCB空间返还系统n 当一个进程到达了自然结束点,或是出现了无法克服的错误,或是被操作系统所终结,或是被其它有终止权的进程所终结,它将进入终止状态。第二章 进 程 管 理 24创建状态和终止状态时间片完许可释放进程调度I/O完成I/O请求创建 终止就绪 执行阻塞进程的五种基本状态及转换第二章 进 程 管 理 25创建状态和终止状态(续)激活许可挂起调度挂起释放释放I/O请求激活挂起静止就绪静止阻塞活动就绪执行活动阻塞创建终止许可具有创建、终止和挂起状态的进程状态图第二章 进 程 管 理 262.1.5 进程控制块(PCB)1.PCB的作用2.PCB中的信息3
12、.PCB的组织方式第二章 进 程 管 理 271.PCB的作用n PCB中记录了操作系统所需的、用于描述进程的当前情况以及控制进程运行的全部信息。是进程存在的唯一标志。n 作用:使一个在多道程序环境下不能独立运行的程序,成为一个能独立运行的基本单位,一个能与其他进程并发执行的进程。n PCB常驻内存,系统将所有的PCB组成若干链表或队列,存放在OS中专门开辟的PCB区内第二章 进 程 管 理 28 2.PCB中的信息l 进程标识符:唯一的标识一个进程 内部标识(方便系统使用)外部标识(由创建者提供,由字母数字组成)l 处理机状态:由CPU的各种寄存器中的内容组成 通用寄存器;指令计数器;程序状
13、态字PSW;用户栈指针进程控制信息pid status schedual control处理机状态信息进程标识符进程调度信息第二章 进 程 管 理 29n 进程调度信息:进程状态;进程优先级;其它信息;等待事件(阻塞原因)n 进程控制信息:程序和数据的地址;同步和通信机制;资源清单;链接指针;进程控制信息pid status schedual control处理机状态信息进程标识符进程调度信息2.PCB中的信息第二章 进 程 管 理 303.PCB的组织方式n PCB数目n 一个系统中的PCB数目可为数十个、数百个甚至数千个n 链接方式n 把具有同一状态的PCB,用其链接字链接成一个队列n 就
14、绪队列、若干个阻塞队列、空队列n 索引方式n 系统根据所有进程的状态建立相应的索引表n 就绪索引表、阻塞索引表等,索引表在内存的首地址记录在内存的一些专用单元中。第二章 进 程 管 理 313、PCB的组织方式(续)执行指针就绪队列指针阻塞队列指针空闲队列指针PCB14 PCB14PCB23 PCB23PCB30 PCB30PCB48 PCB48PCB5 PCB5PCB67 PCB67PCB79 PCB79PCB80 PCB80PCB911 PCB911 PCB1 PCB1PCB2 PCB2PCB3 PCB3PCB4 PCB4PCB5 PCB5PCB6 PCB6PCB7 PCB7PCB8 PC
15、B8PCB9 PCB9 执行指针就绪队列指针阻塞队列指针3572496PCB链接队列示意图按索引方式组织PCB就绪索引表阻塞索引表第二章 进 程 管 理 32思考题1如果系统中有N个进程,运行的进程最多几个,最少几个;就绪进程最多几个最少几个;等待进程最多几个,最少几个?解答:在单处理机系统中,处于运行状态的进程最多为1个,最少为0个;处于就绪进程最多为N-1个,最少为0个;处于等待的进程最多为N个,最少为0个。第二章 进 程 管 理 33思考题2.有没有这样的状态转换,为什么?等待运行;就绪等待第二章 进 程 管 理 342.2进程控制主要内容:1.进程创建2.进程撤消3.进程阻塞4.进程唤
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 操作系统 OS02 进程 管理 课件
限制150内