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

2—A进程的概念.ppt

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

* 1 引起进程阻塞和唤醒的事件 1) 请求系统服务:正在执行的程序请求操作系统服务,但是由于某种原因操作系统没有立即满足该进程的要求,该进程只能转变为阻塞状态来等待。 2) 启动某操作:当进程启动某种操作后,如果该进程必须在该操作完成之后才能继续执行,则必须先使进程阻塞。 3) 新数据尚未到达 4) 无新工作可做:系统往往设置一些具有某特定功能的系统进程,每当这种进程完成任务以后便把自己阻塞起来等待新任务的到来。(发送进程) 进程的阻塞与唤醒 * 当有阻塞事件发生时,进程便调用阻塞原语block() 把自己阻塞。 进入block后,应先立即停止执行,把PCB中的执行状态改为阻塞状态,并把它插入阻塞队列。 进程阻塞过程 * 入口 将现行进程的CPU信息送 该进程的PCE现场保护区 置该进程状态为“等待” 把该进程插入相应的等待队列 转进程调度 阻塞原语执行过程 * 当阻塞进程所期待的事件出现时。则调用唤醒原语wakeup( ),将等待事件的进程唤醒。 唤醒原语执行的过程是:首先把被阻塞进程从等待该事件的阻塞队列中移出,将其PCB中的阻塞状态改为就绪状态,然后把该进程插入到就绪队列中。 Block 和 wakeup是一对作用刚好相反的原语。 进程唤醒过程 * 入口 将被唤醒进程从相 应的等待队列中移出 将被唤醒进程置为就绪状态 将被唤醒进程送入就绪队列 转进程调度 唤醒原语执行过程 * 阻塞原语 唤醒原语 入口 将现行进程的CPU信息送 该进程的PCE现场保护区 置该进程状态为“等待” 把该进程插入相应的等待队列 转进程调度 入口 将被唤醒进程从相 应的等待队列中移出 将被唤醒进程置为就绪状态 将被唤醒进程送入就绪队列 转进程调度 * 当出现了引起进程挂起的事件时,进程请求将自己挂起,或者父进程请求挂起自己的子进程,应该利用挂起原语suspend( )。 挂起原语的执行过程:检查被挂起进程的状态;如果处于活动就绪状态,就将它改为静止就绪;如果处于活动阻塞,则改为静止阻塞。 进程的激活过程:当发生激活事件后,系统利用激活原语Active( )将指定进程激活。激活原语先将进程从外存调入内存,然后检查进程的状态。 静止就绪 活动就绪 静止阻塞 活动阻塞 进程的挂起和激活 * 为使进程由活动就绪转变为静止就绪,应利用___原语; 为使进程由执行状态变为阻塞状态,应利用____原语; 为使进程由静止就绪变为活动就绪,应利用____原语; 为使进程由阻塞状态变为就绪状态,应利用____原语。 ⑴-⑷:A. create B.suspend C.active D. block E.wakeup 练习: B D C E * 横须 * 创 建 就绪 事件 动作 许可 进入就绪队列 就绪 执行 进程调度 分配CPU 执行 终止 释放 释放资源 执行 阻塞 时间片到时 高优先中断 系统剥夺CPU 执行 就绪 I/O请求 等待某事件 进程放弃CPU 进入阻塞等待队列 阻塞 就绪 阻塞事件释放 进程进入就绪队列 * 4.挂起状态 1.挂起状态的引入 1)终端用户的需要 当终端用户在自己的程序运行期间,发现有可疑问题时,往往希望暂时使自己的进程静止下来。也就是说,如果进程处于执行状态,则暂停执行;如果进程处于就绪状态,则暂时不接受调度,以便研究其执行情况或对程序进行修改。我们把这种静止状态称为挂起状态。 * 2)父进程的需求 父进程常常希望考察和修改子进程,或者当要协调各子进程间的活动时,要挂起自己的子进程。 3)负荷调节的需要 当实时系统中的工作负荷较重,可能影响到对实时任务的控制时,可由系统把一些不重要或不紧迫的进程挂起,以保证系统仍然能正常运行。 4)操作系统的需要 操作系统有时需要挂起某些进程,检查运行中资源的使用情况及进行记帐,以便改善系统的运行性能。 * 2.进程状态的转换 在引入挂起状态后,又将增加从挂起状态(又称静止状态)到非挂起状态(又称活动状态)的转换。或者相反,可以有以下几种情况: 1) 活动就绪 静止就绪 当进程处于未被挂起的就绪状态时,称此为活动就绪状态,表示为Readya。当用挂起原语Suspend将该进程挂起后,该进程便转变为静止就绪状态。表示为Readys(处在Readys状态的进程,不再被调度执行。) * 2) 活动阻塞 静止阻塞 当进程处于未被挂起的阻塞状态时,称为它处在活动阻塞状态(表示为Blockeda)。当Suspend原语将它挂起后

文档评论(0)

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

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

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档