计算机处理器管理.ppt

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

第2章处理器管理程序的顺序执行程序的并发执行程序并发执行的条件BernsteinBernstein条件——例2进程是动态的,程序是静态的进程由创建而产生,由调度而执行,因得不到资源而暂停执行,因撤消而消亡。程序是一组有序指令的集合,存放在某种介质上。进程具有并发性,程序具有顺序性进程是一个独立运行的实体,能够进行独立调度和并发执行。程序中的语句顺序执行。进程是暂时的,程序是永久的进程是程序的一次执行过程程序是一个被存储的实体结构不同进程:程序,数据,栈和进程控制块程序与进程不是一一对应关系一个进程可以执行多个程序一个程序可以对应多个进程就绪状态(readystate)进程已获得运行所需的除处理器之外的所有资源,只等处理器空闲。所有就绪状态进程按照一定的规则排列在就绪队列中。运行状态(runningstate)进程正在占用CPU运行。阻塞状态(waitingstate)等待外部事件发生,暂停运行,无法竞争使用CPU。系统可按等待原因不同,分成多个阻塞队列。创建状态(newstate)分配PCB结构,填写相关内容分配所需资源建立地址空间,填写内存管理的相关表格加载程序等待进入就绪队列退出状态(terminatedstate)进程正常结束或异常结束,释放资源。进程释放资源后会暂留内存,等待其它进程收集PCB模块中的相关信息。如:CPU使用时间,使用资源类型等。五种状态的进程状态转换图进程状态转换图进程与PCB的关系系统中所有进程都有自己的PCB。操作系统利用PCB实现进程的动态管理和并发执行。PCB是进程存在的唯一标志。进程切换线程和进程的关系一个进程可以有多个线程,但至少要有一个线程(主线程);一个线程只能在一个进程的地址空间内活动。同一进程的所有线程共享该进程的所有资源。线程与进程的关系小结习题1.填空(1)计算机处于____态时,不能执行特权指令。(2)单道程序顺序执行时,具有_____、_____和可再现性的特点。(3)多道程序并发执行时,具有间断性,将失去____和_____的特点。(4)进程的三种基本状态是_____、______和______。(5)进程是一个_____的概念,而程序是一个______的概念。(1)用户(2)顺序性、封闭性(3)封闭性、可再现性(4)运行状态、就绪状态、阻塞状态(5)动态、静态习题2.假如有以下程序段,回答下面问题。S1:a=3-x;S2:b=2*a;S3:c=5+a;(1)并发程序执行的Bernstein条件是什么?(2)试画图表示它们执行时的先后次序。(3)利用Bernstain条件证明,S1、S2和S3哪两个可以并发执行,哪两个不能。习题(1)Bernstain提出的程序并发执行的条件如下:R(Pi)={a1,a2,……am}表示程序Pi在执行期间所要参考的所有变量的集合,称为“读集”;W(Pi)={b1,b2,……bn}表示程序Pi在执行期间要改变的所有变量的集合,称为“写集”。两个程序P1和P2并发执行的条件是,当且仅当R(P1)∩W(P2)∪R(P2)∩W(P1)∪W(P1)∩W(P2)={}习题(2)三个程序段对应的三个进程的先后执行次序是,S1先于S2和S3运行,如下图所示。习题(3)R(S1)={x},W(S1)={a}R(S2)={a},W(S2)={b}R(S3)={a},W(S3)={c}所以W(S1)∩R(S2)={a},因此S1和S2不能并发执行。W(S1)∩R(S3)={a},因此S1和S3也不能并发执行。而R(S2)∩W(S3)∪R(S3)∩W(S2)∪W(S2)∩W(S3)={},因此S2和S3可以并发执行。习题3.(1)若系统中没有运行进程,是否一定没有就绪进程?为什么?答:是。若系统中没有运行进程,系统会马上选择一个就绪进程队列中的进程投入运行。只有在就绪队列为空时,CPU才会空闲。习题(2)若系统中既没有运行进程,也没有就绪进程,系统中是否就没有阻塞进程?请解释。答:不一定,当系统中所有进程分别等待各自希望发生的事件时,它们都处于阻塞状态,此时系统中既没有运行进程,也没有就绪进程。这种情况出现时,如果各个进程没有相互等待关系,只要等待的事件发生了,进程就会从阻塞状态转化为就绪状态。但如果处于阻塞状态的进程相互等待彼此占有的资源,系统就可能发生死锁。习题(3)如果系

文档评论(0)

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

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

1亿VIP精品文档

相关文档