操作的系统原理教程(第3版)总结与例题.ppt

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

习题: 19。 答案: 假定用一个信号量表示一把叉子,由5个信号量组成一个信号量组:semaphore fork[5];所有的信号量初值为1,第i个哲学家的活动可描述为: P(fork[i])→ P(fork[(i+1)%5]) →进餐→ V(fork[i])→ V(fork[(i+1)%5]) →思考→ 这种算法可以避免两个相邻的哲学家同时进餐,但可能引起死锁。 避免死锁的解: 最多只允许四个哲学家同时坐在桌子上。 只有左右两只叉子都可用时才允许他拿起叉子(他必须在临界区内拿起两只叉子)。 使用非对称解决。奇数哲学家先拿起他左边的叉子,接着拿起他右边的叉子;偶数哲学家先拿起他右边的叉子,接着拿起他左边的叉子。 习题 21。 (1)当前系统是安全的。这是因为: 剩余资源向量:1502 剩余请求矩阵为: 已分配矩阵: 0 0 0 0 0 0 1 2 0 7 5 0 1 0 0 0 1 0 0 2 1 3 5 4 0 0 2 0 0 6 3 2 0 6 4 2 0 0 1 4 判断系统是否安全,只要检查系统剩余向量能否对各进程的剩余请求向量中能否找到一个进程完成序列,当按照这个序列为各进程分配资源时,各进程都能成功完成,若能找到,则系统是安全的,否则,为不安全。 先找到p0, 因为p0已满足最大资源请求,它可以完成,释放其占有的资源,使系统剩余资源向量为:1514 之后,系统剩余资源向量(1514),可满足进程p2, 使p2 可以完成,释放其占有的资源,使系统剩余资源向量为: 2868 之后无论选哪一个进程都可成功完成,故找到的进程序列可为:p0,p2,p4,p3,p1; 或p2, p0,p3,p1,p4 等,故系统是安全的。 (2)当p4提出(0302)请求时,因系统剩余可用向量为1502,同样应该按照要求,顺序检查,看能否找到一个进程完成序列。首先进行假分配,1502-0302=1200。由于p0不再申请资源,它最终释放资源,使系统变为1212。之后满足P2,。。。,故系统是安全的。 习题 22。同类资源10个,进程3个,分别申请的资源数量8,6,7。 (1)第5次分配后的各进程状态: ①p1申请3,可以满足,系统剩余7个;②p2申请2,可以满足,系统还剩5个; ③P3申请4个,不能满足,让其阻塞。因为如果满足它,就使系统处于不安全状态; ④P1申请2个,可以满足,系统还剩3个;⑤P2申请2个,不能满足,让其阻塞。 这时进程P1已经占有5个,在运行;P2已经占有2个,阻塞等待;P3没有占有,阻塞等待。 (2)⑥P1申请3个,可以满足。完成后释放资源,使系统的资源变为8个。之后唤醒P3,P2,并分配4个资源给P3,分配2个资源给P2。系统还剩2个。之后只能满足P2,R然后再满足P3,系统所有进程完成。由此可见,进程完成系列为P1,P2,P3。 补充习题 1。下列几种对进程的描述,( )最不符合操作系统对进程的理解。 A。进程是在多程序并行环境中的完整程序。 B.进程可以由程序、数据和进程控制块描述。 C.线程(thread)是一种特殊的进程。 D。进程是程序在一个数据集合上的运行过程,它是系统进行资源分配和调度的独立单位。 答案:A 补充习题 2。某进程被唤醒后立即投入运行,我们就说这个系统采用的是剥夺式调度方式,对吗? 答:不对,当进程被唤醒前,如果CPU处于空闲状态时,某进程被唤醒后系统会使他立即投入运行,但这不是剥夺式调度方式。仅当它被唤醒后,立即抢占当前正在运行的进程的CPU时,才说系统采用剥夺式调度方式。 补充习题 3。进程之间存在哪几种制约关系?各是什么原因引起的?下列活动各属于哪种制约关系? A。若干学生去图书馆借书 B。两个队进行篮球比赛 C。流水线生产的各道工序 D。商品生产和社会消费 答:进程之间存在的制约关系为:同步与互斥。同步是由于并发进程之间需要协调完成同一个任务时引起的一种关系,为一个进程等待令个进程向他直接发送消息或数据时的一种制约关系。互斥是由于并行进程之间竞争系统的临界资源引起的,为一个进程等待另一个进程已经占有的必须互斥使用的资源时发生的一种制约关系。 A,B是互斥关系C,D是同步关系 * * * char p_stat;

文档评论(0)

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

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

1亿VIP精品文档

相关文档