




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第二章进度管理2.试画出下边4条语句的前趋图:S1:a:=x+y;S1S2:b:=z+1;S3S4S3:c:=a-b;S2S4:w:=c+1;3.为何程序并发履行会产生中断性特点?程序在并发履行时,因为它们共享系统资源,以及为达成同一项任务而互相合作,以致在这些并发履行的进度之间,形成了互相限制的关系,进而也就使得进度在履行时期出现中断性。4.程序并发履行时为何会失掉关闭性和可再现性?因为程序并发履行时,是多个程序共享系统中的各样资源,因此这些资源的状态是由多个程序来改变,以致程序的运转失掉了关闭性。而程序一旦失掉了关闭性也会以致其再失掉可再现性。5.在操作系统中为何要引入进度观点?它会产生什么样的影响?为了使程序在多道程序环境下能并发履行,并能对并发履行的程序加以控制和描绘,进而在操作系统中引入了进度观点。影响:使程序的并发履行得以推行。6.试从动向性,并发性和独立性上比较进度和程序?1/11a.动向性是进度最基本的特征,可表现为由创立而产生,由调动而履行,因得不到资源而暂停履行,以及由撤除而消亡,因此进度由必定的生命期;而程序不过一组有序指令的会合,是静态实体。b.并发性是进度的重要特点,同时也是OS的重要特点。引入进度的目的正是为了使其程序能和其余成立了进度的程序并发履行,而程序自己是不可以并发履行的。c.独立性是指进度实体是一个能独立运转的基本单位,同时也是系统中独立获取资源和独立调动的基本单位。而关于未成立任何进度的程序,都不可以作为一个独立的单位来运转。7.试说明PCB的作用?为何说PCB是进度存在的独一标记?a.PCB是进度实体的一部分,是操作系统中最重要的记录型数据构造。PCB中记录了操作系统所需的用于描绘进度状况及控制进度运转所需的所有信息。因此它的作用是使一个在多道程序环境下不可以独立运转的程序(含数据),成为一个能独立运转的基本单位,一个能和其余进度并发履行的进度。b.在进度的整个生命周期中,系统老是经过其PCB对进度进行控制,系统是依据进度的PCB而不是任何其余什么而感知到该进度的存在的,所以说,PCB是进度存在的独一标记。8.试说明进度在三个基本状态之间变换的典型原由.a.处于就绪状态的进度,当进度调动程序为之分派了办理机后,该进度便由就绪状态变成履行状态。b.目行进度因发生某事件而没法履行,如接见已被占用的临界资源,就会使进度由履行状态转变成堵塞状态。c.目行进度因时间片用完而被暂停履行,该进度便由履行状态转变成就绪状态。9.为何要引入挂起状态?该状态有哪些性质?a.引入挂起状态主假如出于4种需要(即惹起挂起的原由):2/11终端用户的恳求,父进度恳求,负荷调理的需要,操作系统的需要。b.被挂起的进度是处于静止状态,并且不可以直接被办理机调动。17.为何进度在进入临界区以前应先履行“进入区”代码?而在退出前又要履行“退出区”代码?为了实现多个进度对临界资源的互斥接见,一定在临界区以前加一段用于检查临界资源能否正在被接见的代码,如未被接见,该进度可进入临界区对此临界资源进行接见;如正被接见,则该进度不可以进入临界区接见临界资源。在退出临界区后,履行恢复接见标记的代码为“退出区”,而在退出前履行“退出区”代码主假如为了使其余进度能再接见此临界资源。18.同步机构应按照哪些基本准则?为何?a.安闲让进、忙则等候、有限等候、让权等候四条准则b.为实现进度能互斥地进入到自己的临界区19.试从物理观点上说明记录型信号量wait和signal。Wait(S):当S.value>0时,表示目前系统中这种资源还有可用的,履行一次wait操作,意味着进度恳求一个单位的该类资源,是系统中可供分派的该类资源减少一个,所以描绘为S.value:=S.value-1;当S.value<0时,表示该类资源已分派完成,所以进度应调用block原语,进行自我堵塞,放弃办理机,并插入到信号量链表S.L中。Signal(S):履行一次signal操作,意味着开释一个单位的可用资源,使系统中可供分派的该类资源数增添一个,故履行S.value:=S.value+1操作。若加1后S.value≤0,则表示在该信号量链表中,仍有等候该资源的进度被堵塞,所以应调用wakeup原语,将S.L链表中的第一个等候进度唤醒。3/1122.试写出相应的程序来描绘图2-17所示的前驱图。a.Vara,b,c,d,e,f,g,h;semaphore:0,0,0,0,0,0,0,0;beginparbeginbeginS1;signal(a);signal(b);end;beginwait(a);S2;signal(c);signal(d);end;beginwait(b);S3;signal(e);end;beginwait(c);S4;signal(f);end;beginwait(d);S5;signal(g);end;beginwait(e);S6;signal(h);end;beginwait(f);wait(g);wait(h);S7;end;parendend23.在生产者—花费者问题中,假如缺乏了signal(full)或signal(empty),对履行结果将会有何影响?假如缺乏了signal(full),那么表示从第一个生产者进度开始就没有对信号量full值改变,即便缓冲池寄存的产品已满了,但full的值仍是0,这样花费者进度在履行wait(full)时会以为缓冲池是空的而取不到产品,那么花费者进度则会向来处于等候状态。假如缺乏了signal(empty),比如在生产者进度向n个缓冲区投满产品后花费者进度才开始从中取产品,这时empty=0,full=n,那么每当花费者进度取走一个产品时empty并无被改变,直到缓冲池中的产品都取走了,empty的值也向来是0,即便目前缓冲池有n个空缓冲区,生产者进度要想再往缓冲池中投4/11放产品会因申请不到空缓冲区而被堵塞。24.在生产者—花费者问题中,假如将两个wait操作即wait(full)和wait(mutex)交换地点,或许将signal(mutex)和signal(full)交换地点,结果会怎样?在生产者—花费者问题中,假如将两个wait操作,即wait(full)和wait(mutex)交换地点后,可能惹起死锁。考虑系统中缓冲区全满时,若一世产者进度先履行了wait(mutex)操作并获取成功,则当再履行wait(empty)操作时,它将因失败而进入堵塞状态,它期望花费者进度履行signal(empty)来唤醒自己,在此以前,它不行能履行signal(mutex)操作,进而使试图经过履行wait(mutex)操作而进入自己的临界区的其余生产者和所有花费者进度所有进入堵塞状态,这样简单惹起系统死锁。若signal(mutex)和signal(full)交换地点后不过影响进度对临界资源的开释序次,而不会惹起系统死锁,所以能够交换地点。25.我们为某临界资源设置一把锁W,当W=1时表示关锁;当W=0时表示锁已翻开,试写出开锁和关锁原语,并利用它们去实现互斥。整型信号量:lock(W):whileW=1dono-opW:=1;unlock(W):W:=0;记录型信号量:lock(W):W:5/11=W+1;if(W>1)thenblock(W.L)unlock(W):W:=W-1;if(W>0)thenwakeup(W.L)例子:VarW:semaphore:=0;beginrepeatlock(W);criticalsectionunlock(W);remaindersectionuntilfalse;end26.试改正下边生产者——花费者问题解法中的错误:producer:end6/11beginrepeatconsumer:begin,,produceaniteminnextp;repeatwait(mutex);,,wait(full);wait(mutex);wait(empty);buffer(in):=nextp;,,signal(mutex);nextc:=buffer(out);untilfalse;out:=out+1;signal(mutex);untilfalse;consumeiteminnextc;end27.试利用记录型信号量写出一个不会出现死锁的哲学家进餐问题的算法。三种解决方法中的随意一种即可(略)。PPT6228.在丈量控制系统中的数据收集任务时,把所收集的数据送往一单缓冲区;计算任务从该单缓冲区中拿出数据进行计算。试写出利用信号量体制实现两任务共享单缓冲区的同步算法。7/11a.Varmutex,empty,full:semaphore:=1,1,0;gather:beginrepeat,,gatherdatainnextp;wait(empty);wait(mutex);buffer:=nextp;signal(mutex);signal(full);untilfalse;endb.Varempty,full:semaphore:=1,0;gather:8/11beginrepeat,,gatherdatainnextp;wait(empty);buffer:=nextp;signal(full);untilfalse;endbeginrepeat,,wait(full);nextc:=buffer;signal(empty);untilfalse;end31.参照ppt76页9/1132.参照ppt91页beginrepeat,,wait(full);wait(mutex);nextc:=buffer;signal(mutex);signal(empty);untilfalse;end33.试比较进度间的初级通讯工具与高级通讯工具.用户用初级通讯工具实现进度通讯很不方便,因为其效率低,通讯对用户不透明,所有的操作都一定由程序员来实现,而高级通讯工具则可填补这些缺点,用户可直接利用操作系统所供给的一组通讯命令,高效地传递大批的数据。36.为何要在OSxx引入线程?在OS中引入进度的目的,是为了使多个程序能并发履行,以提升资源利用率和系统吞吐量。在OS中再引入线程,则是为了减少程序在并发履行时所付出的时空开支,使OS拥有更好的并发性。38.试从调动性,并发性,拥有资源及系统开支方面对进度和线程进行比较.10/11a.调动性。在传统的操作系统中,拥有资源的基本单位和独立调动、分派的基本单位都是进度,在引入线程的OS中,则把线程作为调动和分派的基本单位,而把进度作为资源拥有的基本单位;b.并发性。在引入线程的OS中,不单进度之间能够并发履行,并且在一
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年中国抗菌产品行业市场全景分析及前景机遇研判报告
- 智能网联汽车技术概论(含实训任务书)教案全套 第1-7章 概述、智能网联汽车技术原理-智能网联汽车软件系统
- 2025年中国睫毛延伸行业市场全景分析及前景机遇研判报告
- 2025年中国家用椭圆机行业市场全景分析及前景机遇研判报告
- 中国中药饮片行业发展趋势预测及投资规划研究报告
- 2023-2028年中国红木木材行业市场深度分析及未来发展趋势预测报告
- 2025年中国家用电烤箱市场供需现状及投资战略研究报告
- 2025年 西藏行测考试笔试试题附答案
- 锦纶行业深度研究分析报告(2024-2030版)
- 中国装修施工服务行业市场深度研究及投资战略规划报告
- 物业小饭桌管理制度
- 2025年湖南省普通高中学业水平考试合格性考试模拟试题(长郡版高一生物)(原卷版)
- 2025春国家开放大学《思想道德与法治》终考大作业答案
- 2025年广东省广州市白云区中考语文二模试卷
- 【英语(新高考Ⅰ卷)】2025年普通高等学校招生全国统一考试
- 2025年天津市河西区中考二模数学试题(含部分答案)
- 医院培训课件:《药品不良反应报告和监测工作简介》
- 广东省东莞市2025届九年级下学期中考三模语文试卷(含答案)
- 2025 届九年级初三毕业典礼校长讲话:星河长明共赴新程
- 高中英语必背3500单词表完整版
- GM/T 0009-2023SM2密码算法使用规范
评论
0/150
提交评论