(2010年自学考试操作系统名词解释总结汇总.docVIP

(2010年自学考试操作系统名词解释总结汇总.doc

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
(2010年自学考试操作系统名词解释总结汇总

2010年自学考试操作系统名词解释总结 说法(2)正确。 参与死锁的进程至少有两个,设为p1,p2,p1占有资源r1而等待资源r2,p2占有资源r2而等待资源r1。 说法(3)错误。死锁也可能发生在相关进程之间,如p1和p2也可能是相关进程。 说法(4)正确,死锁既可能发生在相关进程之间,也可能发生在无关进程之间。即死锁可发生在任意进程之间。 ?2. 试证明当每个资源类中仅有一个资源实例时,资源分配图中的环路是死锁的充要条件。 证明:已知必要条件成立,即发生死锁必存在环路,下面只需证明充分条件,即在每类资源仅有一个实例的前提下,环路意味着死锁。假定环路上共有k个进程(k32),设这k个进程为p1,p2,…,pk。p1等待p2占有的资源r1,p2等待p3占有的资源r2,…,pk等待p1占有的资源rk。显然,这k个资源类中的所有资源实例均被环路上的进程所占有,环路外的进程有关资源的任何释放动作必不涉及这k类资源,因而无法使环路上的等待进程解除等待状态,因而这k个进程将无限期地等待下去,即发生死锁。证毕。 ?3.什么叫饥饿?什么叫饿死?什么叫活锁?举例说明之. 答:在一个动态系统中,资源请求与释放是经常性发生的进程行为。对于每类系统资源,操作系统需要确定一个分配策略,当多个进程同时申请某类资源时,由分配策略确定资源分配给进程的次序。资源分配策略可能是公平的(fair),能保证请求者在有限的时间内获得所需资源;资源分配策略也可能是不公平的(unfair),即不能保证等待时间上界的存在。在后一种情况下,即使系统没有发生死锁,某些进程也可能会长时间等待。当等待时间给进程推进和响应带来明显影响时,称发生了进程饥饿(starvation),当饥饿到一定程度的进程所赋予的任务即使完成也不再具有实际意义时称该进程被饿死(starve to death)。???考虑一台打印机分配的例子,当有多个进程需要打印文件时,系统按照短文件优先的策略排序,该策略具有平均等待时间短的优点,似乎非常合理,但当短文件打印任务源源不断时,长文件的打印任务将被无限期地推迟,导致饥饿以至饿死。 ????与饥饿相关的另外一个概念称为活锁(live lock),在忙式等待条件下发生的饥饿,称为活锁。例如不公平的互斥算法。 ?4. 死锁与饿死之间有何相同点和不同点? 答:饿死与死锁有一定联系:二者都是由于竞争资源而引起的,但又有明显差别,主要表现在如下几个方面: (1) 从进程状态考虑,死锁进程都处于等待状态,忙式等待(处于运行或就绪状态)的进程并非处于等待状态,但却可能被饿死; (2) 死锁进程等待永远不会被释放的资源,饿死进程等待会被释放但却不会分配给自己的资源,表现为等待时限没有上界(排队等待或忙式等待); (3) 死锁一定发生了循环等待,而饿死则不然。这也表明通过资源分配图可以检测死锁存在与否,但却不能检测是否有进程饿死; (4) 死锁一定涉及多个进程,而饥饿或被饿死的进程可能只有一个。 饥饿和饿死与资源分配策略(policy)有关,因而防止饥饿与饿死可从公平性考虑,确保所有进程不被忽视,如FCFS分配算法。 ?5. 何谓银行家算法的保守性? 举例说明之。 答:银行家算法的保守性是指银行家算法只给出了进程需要资源的最大量,而所需资源的具体申请和释放顺序仍是未知的,因而银行家只能往最坏处设想. 考虑资源集合R={A(1),B(1)},进程集合P={p1,p2},已知进程p1和进程p2的活动序列分别为:p1:a,b,,; p2:b,,b,a,,。显然p1和p2的资源最大需求量均为A(1),B(1)。假定某时刻系统状态如下: Claim AllocationNeed Available ABABABAB p1p2:110011 即此时p1的a被系统接受。 其后系统接收到的命令有两种可能,一是p1的请求b,二是p2的请求b。 假定为p2的请求b,因Request[2]=(0,1)£Need[2]=(1,1),故该请求是合法的。又Request[2]=(0,1)£Available=(0,1),故该请求系统当前能够满足。假定分配,系统状态变化如下: Claim AllocationNeed Available ABABABAB p1p2:110110 运行安全性检测算法发现此时系统处于不安全状态,因而取消分配,p2等待。实际上如果真正实施分配系统并不会进入死锁状态,因为分配后按照p2(),p1(b),p1(),p1(),p2 (b),p2(a),p2(),p2()的次序两个进程可以执行完,这是一个p1和p2交叉执行的次序,而不是一个顺序执行的次序,银行家算法不能判断。 ?6. 能否给出避免死锁的充要性算法? 为什么? 答:目前关于

文档评论(0)

saity3 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档