课程名称计算机操作系统_第1页
课程名称计算机操作系统_第2页
课程名称计算机操作系统_第3页
课程名称计算机操作系统_第4页
课程名称计算机操作系统_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

课程名称:《计算机操作系统》天津大学管理学院Emailto:yuki@SchoolofManagement第二章:进程管理 第二章:进程管理2.1进程的基本概念(进程的引入)程序的顺序执行及其特征一个具有独立功能的程序独占处理机运行,直至得到最终结果的过程称为程序的顺序执行。例如,用户要求计算机完成一道程序的运行时,通常先输入用户的程序和数据,然后运行程序进行计算,最后将结果打印出来。

SchoolofManagement进程的基本概念示意图用圆结点表示各程序段的操作,其中I表示输入,C表示计算,P表示打印,用箭头指明操作间的先后次序。计算机处理完一道程序后再处理下一道程序。

顺序行、封闭性、可再现性SchoolofManagement进程的基本概念前趋图每个结点可以表示一个语句、一个程序段或是一个进程,结点间的有向边表示两个结点之间存在的前趋关系。若图中存在结点Pi指向结点Pj的有向边,则称结点Pi是结点Pj的直接前趋,而结点Pj是结点Pi的直接后继没有前趋的结点称为初始结点,没有后继的结点称终止结点SchoolofManagement进程的基本概念请指出上图中的前趋关系SchoolofManagement进程的基本概念程序的并发执行及其特征程序并发执行是有条件的。在程序并发执行时,是绝对不允许出现“与时间有关的错误的”。SchoolofManagement进程的基本概念程序并发执行的特征间断性相互制约导致并发程序具有“执行-暂停-执行”的活动规律失去封闭性由于多个程序共享系统中的资源,程序执行时必然收到其它程序的影响。不可再现性程序经过多次执行后,可能得到的结果各不相同注意:程序是不能并发执行的,引入“进程”SchoolofManagement进程的基本概念进程的特征与状态特征结构特征进程控制块PCB程序段、相关的数据、PCB三部分构成了进程实体动态性:进程实体一次执行过程并发性:多个进程在内存同时运行独立性:独立分配资源和接受调度异步性:不可预知的速度向前推进SchoolofManagement进程的基本概念[举例]我们举一个例子,比如在有一个用户程序notepad.exe(记事本),当它存放在磁盘上时,就是一个程序,在windows操作系统下运行它时,就会在内存中建立一个记事本程序的进程,而我们在记事本中编辑的当前文字就是这个进程的数据集,操作系统会为当前的进程设置一个进程控制块。如果我们再打开一个记事本程序的窗口,就会建立另一个进程,此时运行的是同一个程序,但存在两个进程,第二个窗口中的编辑内容就是第二个进程的数据集。SchoolofManagement进程的基本概念进程的定义进程是程序的一次执行进程是一个程序及其数据在处理机上顺序执行时所发生的活动进程是程序在一个数据集合上运行的过程,它是系统进行资源分配和调度的一个独立单位一个进程从创建而产生至撤销而消亡的整个生命周期,可用一组状态加以刻划,,按进程在执行过程中的状况至少定义三种不同的进程状态SchoolofManagement进程的基本概念•运行态(running):该进程已经获得CPU,正在执行•就绪态(ready):进程已经分配到除CPU以外所有的必需资源,只要获得CPU就可立即执行,这种状态成为就绪状态。处于就绪状态的进程通常排成一个队列,称为“就绪队列”•阻塞态(blocked):正在执行的进程由于发生事件而暂时无法继续执行,放弃CPU处于暂停的状态。比如:请求I/O操作等SchoolofManagement进程的基本概念时间片完运行态就绪态阻塞态进程调度出现等待事件等待事件结束进程的三种基本状态和转换SchoolofManagement进程的基本概念引起状态发生转换的具体原因:•运行态→阻塞态:等待使用资源或某事件发生;•阻塞态→就绪态:资源得到满足或事件发生;•运行态→就绪态:运行时间片到;出现有更高优先权进程。•就绪态→运行态:CPU空闲时选择一个就绪进程。SchoolofManagement进程的基本概念进程的挂起状态为什么要有“挂起”状态?由于进程的不断创建,系统资源已不能满足进程运行的要求,就必须把某些进程挂起(suspend),对换到磁盘镜像区中,暂时不参与进程调度,起到平滑系统操作负荷的目的。产生挂起状态的原因有:SchoolofManagement进程的基本概念(1)系统中的进程均处于等待状态,需要把一些阻塞进程对换出去,腾出足够内存装入就绪进程运行。(2)进程竞争资源,导致系统资源不足,负荷过重,需要挂起部分进程以调整系统负荷,保证系统的实时性或让系统正常运行。(3)定期执行的进程(如审计、监控、记账程序)对换出去,以减轻系统负荷。SchoolofManagement进程的基本概念(4)用户要求挂起自己的进程,以便进行某些调试、检查和改正。 (5)父进程要求挂起后代进程,以进行某些检查和改正。(6)操作系统需要挂起某些进程,检查运行中资源使用情况,以改善系统性能;或当系统出现故障或某些功能受到破坏时,需要挂起某些进程以排除故障。SchoolofManagement进程的基本概念进程增加了两个新状态静止就绪态(readysuspend)表明进程具备运行条件但目前在二级存储器中,当它被对换到主存才能被调度执行。静止阻塞态(blockedsuspend)表明进程正在等待某一个事件且在二级存储器中。SchoolofManagement进程的基本概念具有挂起状态的进程状态转换图SchoolofManagement进程的基本概念挂起进程特征:该进程不能立即被执行。挂起进程可能会等待事件,但所等待事件是独立于挂起条件的,事件结束并不能导致进程具备执行条件。进程进入挂起状态是由于操作系统、父进程或进程本身阻止它的运行。结束进程挂起状态的命令只能通过操作系统或父进程发出。SchoolofManagement进程的基本概念进程控制块进程控制块PCB,是操作系统用于记录和刻划进程状态及有关信息的数据结构。也是操作系统掌握进程的唯一资料结构,它包括了进程执行时的情况,以及进程让出处理器后所处的状态、断点等信息。OS是通过PCB来感知进程的存在。SchoolofManagement进程的基本概念进程控制块中的信息进程标志符:

•用于唯一地标识一个进程,分由用户使用的外部标识符和被系统使用的内部标识号。•常用的标识信息有进程标识符、父进程的标识符、用户进程名、用户组名等。SchoolofManagement进程的基本概念处理机状态保留进程运行时存放在处理器现场中的各种信息,进程让出处理器时必须把处理器现场信息保存到PCB中,当该进程重新恢复运行时也应恢复处理器现场。现场信息包括通用寄存器内容、控制寄存器内容、用户堆栈指针、系统堆栈指针等。SchoolofManagement进程的基本概念进程调度信息进程调度相关信息,如进程状态、等待事件和等待原因、进程优先级、队列指引元等;进程控制信息程序和数据的地址进程通信机制,如消息队列指针,信号量资源清单,包括进程所需全部资源、已经分得资源,如主存资源、I/O设备、打开文件表等。链接指针,给出本进程所在队列的下一个进程的PCB首地址SchoolofManagement进程的基本概念进程控制块的组织方式处于同一状态的所有PCB链接在一起的数据结构称为进程队列(ProcessQueues)。同一状态进程的PCB既可按先来先到的原则排成队列;也可按优先数或其它原则排成队列链接方式 系统为每个队列设置一个队列标志:单向链接时,队列标志指引元指向队列中第一个进程的队列指引元的位置;SchoolofManagement进程的基本概念执行指针就绪队列指针阻塞队列指针空闲队列指针PCB1PCB2PCB3PCB4PCB5PCB6PCB7PCB8PCB94308

7901……可根据阻塞原因不同把处于阻塞状态的进程PCB排成不同队列SchoolofManagement进程的基本概念处理器指派提交完成超时事件1等待队列事件2等待队列事件n等待队列就绪队列……等待事件1等待事件2等待事件n事件1出现事件2出现事件n出现SchoolofManagement进程的基本概念索引组织方式SchoolofManagement进程控制2.2进程控制进程的创建 进程图-用于描述一个进程家族关系的有向图子进程可以继承父进程的所有资源,当子进程被撤消时,应将从父进程那里获得的资源归还给父进程。撤消父进程时也必须同时撤消其所有的子进程。SchoolofManagement进程控制

进程创建来源于以下事件:•提交一个批处理作业•在终端上交互式的登录•操作系统创建一个服务进程•应用请求ABCDMEIJHGFLKSchoolofManagement进程控制进程的创建(create原语)申请空白的PCB-为新进程分配唯一的数字标识符,并从PCB集合中索取一个空白的PCB为新进程分配资源-为新进程的程序和数据以及内存空间初始化进程控制块-PCB的初始化包括:初始化标志信息,将系统中分配的标识符、父进程标识符填入新PCB中;初始化处理机状态信息,是程序计数器指向程序的入口地址,栈指针指向栈顶;初始化处理机控制信息,将进程的状态设置为就绪状态将新进程插到就绪队列SchoolofManagement进程控制入口查PCB链表有空PCB?PCB(I)入进程家族或进程链PCB(I)入就绪队列将有关参数填入PCB(I)相应项取空表PCB(I)返回创建失败无创建原语流程图有SchoolofManagement进程控制进程的终止(撤销进程)引起进程终止的事件进程正常运行结束。进程执行了非法指令。进程在常态下执行了特权指令。进程运行时间超越了分给的最大时间段。进程等待时间超越了设定的最大等待时间。SchoolofManagement进程控制进程申请的内存超过了系统能提供最大量。越界错误。算术错误,如除零和操作数溢出。严重的输入输出错误。操作员或操作系统干预。父进程撤销其子进程。父进程撤销。操作系统终止。SchoolofManagement进程控制进程的终止过程1根据撤销进程标识号,从相应队列中找到它的PCB;从中读出该进程的状态2若被终止进程处于执行态,应立即终止该进程的执行,并设置调度标志为真(用于指示该进程被终止后应重新调度),然后再选择一个进程,分配处理机给它。3如果该进程还有子孙进程,还应将它的所有子孙进程进行终止,以防它们称为不可控的。SchoolofManagement进程控制4将该进程所拥有的全部资源,或者归还给它的父进程,或者归还给系统。5将被终止进程(PCB)从所在队列(链表)中移出,等待其它程序来搜索信息。进程的阻塞与唤醒引起进程阻塞和唤醒的事件请求系统服务:例如,进程请求使用某种资源启动某种操作:启动I/O操作SchoolofManagement进程控制新数据尚未到达:合作进程无新工作可作:特殊服务的系统进程进程的阻塞过程当有阻塞事件发生时,进程便调用阻塞原语block把自己阻塞。停止进程执行,保存现场信息到PCB。修改PCB的有关内容,如进程状态由运行改为等待等。把修改状态后的PCB加入相应等待进程队列。SchoolofManagement进程控制进程的唤醒过程当阻塞进程所期待的事件出现时。则调用唤醒原语wakeup(),将等待事件的进程唤醒。唤醒原语执行的过程是:首先把被阻塞进程从等待该事件的阻塞队列中移出,将其PCB中的阻塞状态改为就绪状态,然后把该进程插入到就绪队列中。SchoolofManagement进程控制进程的挂起与激活当出现了引起进程挂起的事件时,用户请求将自己挂起,或者父进程请求挂起自己的子进程,应该利用挂起原语sus

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论