网站大量收购独家精品文档,联系QQ:2885784924

chapter2进程管理1的.ppt

  1. 1、本文档共39页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
chapter2进程管理1的

第二章 进程管理;2.1 进程的基本概念;图 2-1 程序的顺序执行 ;2.1.1 程序的顺序执行及其特征;2.1.2 前趋图;2.1.3 程序的并发执行及其特征 ;程序并发执行结果不可再现的示例;程序并发执行的条件;引入进程的原因;2.1.4 进程的特征与状态;进程定义;试比较进程与程序的异同;试比较进程与程序的异同;2. 进程的三种基本状态;图 2-5 进程的三种基本状态及其转换 ;接收进程;3. 挂起状态;;图 2-6 具有挂起状态的进程状态图 ;2.1.5 进程控制块;2.1.5 进程控制块;2.1.5 进程控制块;2.1.5 进程控制块;2.1.5 进程控制块;2.1.5 进程控制块;3. 进程控制块的组织方式 ;2) 索引方式:系统根据所有进程的状态建立几张索引表。 ;2.2 进 程 控 制 ;2. 引起创建进程的事件 ;3. 进程的创建(Creation of Progress) ;2.2.2 进程的终止 ; 2) 异常结束 在进程运行期间,由于出现某些错误和故障而迫使进程终止。这类异常事件很多,常见的有:① 越界错误。这是指程序所访问的存储区,已越出该进程的区域; ② 保护错。进程试图去访问一个不允许访问的资源或文件,或者以不适当的方式进行访问,例如,进程试图去写一个只读文件; ③ 非法指令。程序试图去执行一条不存在的指令。出现该错误的原因,可能是程序错误地转移到数据区,把数据当成了指令;④ 特权指令错。用户进程试图去执行一条只允许OS执行的指令; ⑤ 运行超时。进程的执行时间超过了指定的最大值; ⑥ 等待超时。进程等待某事件的时间, 超过了规定的最大值;⑦ 算术运算错。进程试图去执行一个被禁止的运算,例如,被0除;⑧ I/O故障。这是指在I/O过程中发生了错误等。 ; 3) 外界干预 外界干预并非指在本进程运行中出现了异常事件,而是指进程应外界的请求而终止运行。这些干预有: ① 操作员或操作系统干预。 由于某种原因,例如,发生了死锁, 由操作员或操作系统终止该进程; ② 父进程请求。 由于父进程具有终止自己的任何子孙进程的权利, 因而当父进程提出请求时,系统将终止该进程; ③ 父进程终止。 当父进程终止时,OS也将他的所有子孙进程终止。 ; 2. 进程的终止过程 (1) 根据被终止进程的标识符,从PCB集合中检索出该进程的PCB,从中读出该进程的状态。 (2) 若被终止进程正处于执行状态,应立即终止该进程的执行,并置调度标志为真,用于指示该进程被终止后应重新进行调度。 (3) 若该进程还有子孙进程,还应将其所有子孙进程予以终止,以防他们成为不可控的进程。 (4) 将被终止进程所拥有的全部资源,或者归还给其父进程, 或者归还给系统。 (5) 将被终止进程(它的PCB)从所在队列(或链表)中移出, 等待其他程序来搜集信息。 ;2.2.3 进程的阻塞与唤醒; 2. 进程阻塞过程 正在执行的进程,当发现上述某事件时,由于无法继续执行,于是进程便通过调用阻塞原语block把自己阻塞。可见,进程的阻塞是进程自身的一种主动行为。进入block过程后,由于此时该进程还处于执行状态,所以应先立即停止执行,把进程控制块中的现行状态由“执行”改为阻塞,并将PCB插入阻塞队列。如果系统中设置了因不同事件而阻塞的多个阻塞队列,则应将本进程插入到具有相同事件的阻塞(等待)队列。 最后,转调度程序进行重新调度,将处理机分配给另一就绪进程,并进行切换,亦即,保留被阻塞进程的处理机状态(在PCB中),再按新进程的PCB中的处理机状态设置CPU的环境。 ; 3. 进程唤醒过程 当被阻塞进程所期待的事件出现时,如I/O完成或其所期待的数据已经到达,则由有关进程(比如,用完并释放了该I/O设备的进程)调用唤醒原语wakeup( ),将等待该事件的进程唤醒。唤醒原语执行的过程是:首先把被阻塞的进程从等待该事件的阻塞队列中移出,将其PCB中的现行状态由阻塞改为就绪,然后再将该PCB插入到就绪队列中。 ;2.2.4 进程的挂起与激活 ; 2. 进程的激活过程 当发生激活进程的事件时,例如,父进程或用户进程请求激活指定进程,若该进程驻留在外存而内存中已有足够的空间时,则可将在外存上处于静止就绪状态的进程换入内存。这时,系统将利用激活原语active( )将指定进程激活。 激活原语先将进程从外存调入内存,检查该进程的现行状态,若是静止就绪,便将之改为活动就绪;若为静止阻塞便将之改为活动阻塞。假如采用的是抢占调度策略,则每当

文档评论(0)

ayangjiayu3 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档