版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、注意:1)“本章要点”部分,用红字标注的不是期末考试出题范围。2)“习题部分”用蓝字标注的是重点习题,期末考试50%的题目是这些习题的原题。红字标注的习题期末考试不考,仅供考研的同学参考。3)大部分习题答案只给出要点,同学们可以自行适当补充,但一定要简明扼要。4)如“本章要点”部分用红字标注的非考试内容,在“习题”部分有相关的重点习题,则对该部分内容只需做该习题即可。-第二章 要点这一章和第3章是本课程最重要的两章。2.1 进程的基本概念 本小节重点内容是进程的概念、进程的三种状态及转换(围绕P38图2-5理解)、进程控制块FCB的概念及作用、进程就绪队列和阻塞(等待)队列的概念。其它内容作一
2、般性的了解即可。2.2 进程控制掌握原语的概念。其它内容作一般性的了解即可。2.3 进程同步这一小节是至关重要的,也是相当难的。(1)P47-50,临界资源问题、临界区的概念、同步机制应遵循的规则。 (2)P50,整型信号量原语的含义,及其缺点。(3)P51,记录型信号量原语的含义,特点,及其优点(与整形信号量对比)。(4)P52-53 AND型信号量和信号量集,一般性了解。(5)P53 2.3.3 信号量的应用,一般性了解。(6)P55 管程,一般性了解。推荐精选2.4 经典进程的同步问题 熟练掌握用记录型信号量解生产者消费者、哲学家进餐、读者-写者问题。其它解法(AND信号量、信号量集、管
3、程等)可以不看。 2.5 进程通信:一般性了解。2.6 线程 概念性的掌握什么是线程、线程与进程主要的异同、线程的状态、内核线程、用户线程。对于软件班和数学班的同学,上述概念将结合实验考核,二学历班的同学无此要求。教材习题1 什么是前驱图?为什么要引入前驱图?答:P35。前驱图是一个有向无循环图,用于描述进程之间执行的前后关系。引入前驱图可以比较直观的描述多道程序进程之间的不确定(异步)关系。2 试画出下面四条语句的前驱图: S1: a=x+y; S2: b=z+1; S3: c=a-b; S4: w=c+1 答:参考P36图2-4。根据变量赋值的顺序,有 (S1 , S2)-S3-S43.
4、程序并发执行为什么会产生间断性特征?答:P36。因为程序在并发执行过程中存在相互制约性(同步要求),另外进程时而要求使用CPU、时而I/O也会造成进程间断。 4. 程序并发执行为何会失去封闭性和可再现性?推荐精选答:P37。多个进程共享系统中的各种共享资源(可以表示为共享变量或共享内存),一方面资源状态可由多个进程来改变,另一方面处置不当可能引起共享变量出错(需要互斥来解决),即存在资源共享性使程序失去封闭性;而失去了封闭性导致程序失去可再现性。 5. 在操作系统中为什么要引入进程概念?它会产生什么样的影响?a.为了使程序在多道程序环境下能并发执行,并能对并发执行的程序加以描述,而引入了进程概
5、念。b.影响:OS通过管理进程,使程序的并发执行得以实行. 6. 试从动态性,并发性和独立性上比较进程和程序?a 动态性是进程最基本的特性,程序是静态实体;b 并发性是进程的重要特征,程序是不能并发执行的.c 独立性是指进程实体是一个能独立运行的基本单位,同时也是系统中独立获得资源和独立调度的基本单位.而对于未建立任何进程的程序,都不能作为一个独立的单位参加运行. 7. 试说明PCB的作用?为什么说PCB是进程存在的唯一标志?答:P41a. PCB是进程实体的一部分(进程实体包括PCB、程序代码、数据),是操作系统中最重要的记录型数据结构,PCB中记录了操作系统所需的用于描述进程情况及控制进程
6、运行所需的全部信息.b在进程的整个生命周期中,系统总是通过其PCB对进程进行控制,系统是根据进程的PCB而感知到该进程的存在的,所以说,PCB是进程存在的唯一标志. 8试说明进程在三个状态之间转换的典型原因答:结合P38图2.5说明。主要原因是请求I/O和I/O完成、CPU调度。推荐精选9. 为什么要引入挂起状态?该状态具有哪些性质?答:P39。挂起是进程在就绪队列上等待,进程挂起时不接受CPU调度。a. 引入挂起状态是由于5种需要: 终端用户的需要,父进程的需要,操作系统的需要,对换的需要和负荷调节的需要.b. 处于挂起状态的进程虽在就绪队列中,但不能接收处理机调度。 10 在进行进程切换时
7、,所要保存的处理机状态信息主要有哪些?答:P42第一段。 11 试说明引起进程创建的主要事件.12 试说明引起进程撤消的主要事件.答:P44-45。13 在创建一个进程时,需完成的主要工作是什么?答:P44操作系统发现请求创建新进程事件后;1)申请空白PCB;2)为新进程分配资源;3)初始化进程控制块;4)将新进程插入就绪队列. 14 在撤消一个进程时,需完成的主要工作是什么?答:P45 “2进程的终止过程”15 试说明引起进程阻塞或被唤醒的主要事件是什么?答:P4616 进程在运行过程中存在哪两种形式的制约?试举例说明之推荐精选答:P48第1-2段。1)直接制约:进程共享独占式资源的互斥制约
8、(比如互斥使用打印机);2)间接制约:进程之间存在合作关系带来的同步制约(比如生产者消费者问题)3)互斥也可以看作是一种特殊的同步。补充习题:什么是临界资源和临界区?a. 一次仅允许一个进程使用的资源成为临界资源,这种资源可以用共享变量代表,这种资源必须是互斥使用的。b. 在每个进程中,访问临界资源的那段程序称为临界区。 17. 为什么进程在进入临界区之前,应先执行进入区代码,在退出临界区后又执行退出区代码?答:P50。为了实现多个进程对临界资源的互斥访问,必须在临界区前面增加一段用于检查欲访问的临界资源是否正被访问的代码,如果未被访问,该进程便可进入临界区对资源进行访问,并设置正被访问标志,
9、如果正被访问,则本进程不能进入临界区,实现这一功能的代码成为进入区代码;在退出临界区后,必须执行退出区代码,用于恢复未被访问标志。使用信号量,则进入区代码为P(S),“退出区”代码为V(S),S初值为1 18 同步机构应遵循哪些基本准则?为什么?答:P50a. 空闲让进.b. 忙则等待.c. 有限等待.d. 让权等待. 上述准则适合于进程的同步和互斥。记录型信号量实现了上述原则。推荐精选19 试从物理概念上说明记录型信号量wait和 signal答:P51。Wait操作又叫P操作,signal操作又叫V操作。20. 你认为整型信号量机制和记录型信号量机制,是否完全遵循了同步机构的四条准则?答:
10、P50-51。a. 在整型信号量机制中,未遵循让权等待的准则,存在“忙等”现象。b. 记录型信号量机制完全遵循了同步机构的四条准则。 21 如何利用信号量机制来实现多个进程对临界资源的互斥访问?并举例说明之。答:P50的伪代码 Repeat Entry sectionCritical section /对共享资源(临界资源)的访问Exit section Remainder section /不访问共享资源的其他代码 Until false说明了多个进程对临界资源的互斥访问的解决思路,具体的,可设一记录型信号量S,初值为1,用P(S)替代Entry section,V(S)替代Exit sec
11、tion 在教材生产者消费者和读者写者的例子中都能看到上述用法。22 试写出相应的程序来描述图2-17所示的前驱图(图略)答:参考P54-55“2利用信号量实现前驱关系”(考研的同学应把这部分内容看一下)。这也是信号量对进程同步的一种用法,信号量初值为0。23. 在生产者消费者问题中,如果缺少了signal(full)或signal(empty),对执行结果会有何影响?推荐精选答:缓冲区满后,生产者进程被阻塞(进入关于信号量empty的等待队列),由于消费者取走产品后不执行signal(empty), 被阻塞的生产者进程继续被阻塞,即便缓冲区有空位也不能生产。缓冲区空后,消费者进程被阻塞(进入
12、关于信号量full的等待队列),由于生产者生产后不执行signal(full), 被阻塞的消费者进程继续被阻塞,即便缓冲区有产品也不能消费。 24. 在生产者消费者问题中,如果将两个wait操作即wait(full)和wait(mutex)互换位置;或者是将signal(mutex)与signal(full)互换位置结果会如何?答:首先,教材P58是生产者消费者问题的最佳解,它支持多个生产者进程和多个消费者进程并发,而不仅仅是一个生产者进程和一个消费者进程并发。(1)如果将(消费者的)两个wait操作即wait(full)和wait(mutex)互换位置,后果是:a.影响了多个消费者的并发性,
13、当一个消费者进行了wait(mutex),其它消费者因得不到mutex被阻塞,即便缓冲区有多个产品也不允许取。形象的说,教材的解法允许多个消费者同时逛商店,但拿产品时一个一个消费者拿;而颠倒wait(full)和wait(mutex)顺序后,商店一次只能允许一个顾客进入,等顾客拿完产品出门后,另一位顾客才能进去。b. 可能造成死锁。假如某消费者执行wait(mutex)后没被阻塞,但接着执行wait(full)后被阻塞了, 要等待生产者的signal (full)才能解除阻塞,而生产者可能因消费者提前使mutex=0而被阻塞,无法执行signal (full),这样就造成死锁。c 可能还有其它
14、后果。(2)将(生产者的)signal(mutex)与signal(full)互换位置,似乎不会影响并发性,也不会造死锁,个人认为这也是一种正确的写法。 这道题我给出的答案仅供参考。推荐精选25. 我们为某临界区设置一把锁W,当W=1时,表示关锁;W=0时,表示锁已打开.试写出开锁原语和关锁原语,并利用它们去实现互斥. 答: 先看教材P50的伪代码 Repeat Entry sectionCritical section Exit section Remainder section Until false说明了多个进程对临界资源的互斥访问的解决思路,在前面的第21题中,讨论了可设一记录型信号量
15、S,初值为1,用P(S)替代Entry section,V(S)替代Exit section。 还有一种办法是教材P75介绍的“互斥锁”,其思路很简单:将Critical section想象成只允许一个进程进入的小黑屋,小黑外有一把锁,当进程发现锁是开着的,可以进入小黑屋,然后关上锁不让其它进程进入,出来时把锁打开给其它进程进入的机会。 锁可以看作是(小黑屋外的)共享变量W,对W有两个操作:unlock(W) ,lock(W),这两个操作必须也是原子操作,其理由与信号量必须是原子操作一样。开锁原语: unlock(W)W=0;关锁原语: lock(W) if(W=1) do no_op; W=
16、1;利用开关锁原语实现互斥,用lock(W);替代Entry section,unlock(W)替代Exit section即可。var W:=0;process : repeatlock(W);critical sectionunlock(W);remainder section推荐精选until false; 锁比信号量简单,但只能用于进程互斥,不能用于同步。 26试修改下面生产者消费者问题解法中的错误答:按P58的正确解法修改即可。 27 试利用记录型信号量写出一个不会出现死锁的哲学家进餐问题的算法.答:先看P62哲学家进餐问题的解及可能出现死锁的原因(出现了循环等待)。根据P105死锁
17、的四个必要条件,只要破除其中一个必要条件即可。下面的解的思路是:偶数哲学家现拿左面的筷子,后拿右面的,奇数哲学家正相反,这样就破除了循环等待,使死锁不可能发生。设初始值为1的信号量cI表示I号筷子被拿(I=1,2,3,4,.,2n),其中n为自然数.Beginif I mod 2=1 then /如为奇数哲学家 P(cI);P(cI-1 mod 5);Eat;V(cI-1 mod 5);V(cI);else /如为偶数哲学家P(cI-1 mod 5);P(cI);Eat;V(cI);V(cI-1 mod 5);推荐精选End 28 在测量控制系统中的数据采集任务,把所采集的数据送一单缓冲区;计
18、算任务从该单缓冲中取出数据进行计算.试写出利用信号量机制实现两者共享单缓冲的同步算法.答:解法与生产者消费者问题一样。这个题目的用意在于给出生产者消费者问题的一个实际应用-多进程的单缓冲通信。生产者消费者是非常重要、有广泛实际价值的问题。29画图说明管程由哪几部分组成?为什么要引入条件变量?答:见P56图2-13管程由三部分组成:局部于管程的共享变量说明;对该数据结构进行操作的一组过程;对局部于管程的数据设置初始值的语句.因为调用wait原语后,使进程等待的原因有多种,为了区别它们,引入了条件变量.30 如何利用管程解决生产者消费者问题?答:见P60。考研的同学无需看这道题,只需会使用记录型信
19、号量解进程同步问题即可,管程、信号量集、AND信号量只需从概念上了解一下即可,无需做大题。31 什么是AND型信号量?。32 什么是信号量集?。答:考研的同学只需从概念上了解一下即可,无需做大题33试比较进程间的低级通信工具与高级通信工具.答:P65。信号量是低级的进程通信工具,优点是速度快(教材认为效率低是片面的),缺点是难以使用,通信对用户不透明(所有的操作都必须由程序员来实现),而且必须借助共享内存才能通信。而高级通信工具则可弥补这些缺陷,用户可直接利用操作系统所提供的一组高级通信命令,高效地传送大量的数据。推荐精选34当前有那几种高级通信机制?答:P65-66a. 共享存储器系统通信方
20、式(低级);b. 消息传递系统通信方式(高级);c. 管道通信方式(高级). d. RPC(远程过程调用),教材没有介绍。RPC允许一台机器远程呼叫另一台机器上的过程(或函数),这是网络时代最常见的高级通信机制,JAVA的RMI, RMI-IIOP 微软的COM+RPC .net remoting,以及CORBA, web Service等分布式通信(和组件)技术都是从RPC发展起来的。35 消息队列通信机制有哪几方面功能?答:P69-71。主要有消息缓冲区、发送原语、接受原语。36 为什么要在OS中引入线程?答:这道题比较重要,参见P72。因为进程既是资源分配的基本单位、又是CPU调度的基本单位,负担沉重,引入线程后,线程变成了CPU调度的基本单位,线程创建、切换、撤销的开销较小,有利于提高系统性能。37 试说明线程有哪些属性?答:P73-74“3线程的属性”38试从调度性,并发性,拥有资源及系
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 化工胶水销售合同范例
- 建筑采购维修合同范例
- 2024年沈阳客运资格证考试考什么
- 2024年乌鲁木齐道路旅客运输驾驶员继续教育试题
- 2024年福州客运急救知识与技能培训
- 2024年石家庄客运资格证应用能力试题和答案解析
- 上海市“星光计划”第五届中等职业学校职业技能大赛-物联网项目试题A卷
- 脓毒症的治疗
- 安徽省阜阳市第一中学2024-2025学年高二上学期期中考试语文试题
- 北京市亚太实验学校2024-2025学年七年级上学期数学期中考试题
- 第八课 法治中国建设 课件高考政治一轮复习统编版必修三政治与法治
- JGJ162-2008-建筑施工模板安全技术规范
- GB/T 44653-2024六氟化硫(SF6)气体的现场循环再利用导则
- GB/T 44540-2024精细陶瓷陶瓷管材或环材弹性模量和弯曲强度的测定缺口环法
- 道路交通安全法律法规
- 2024年新北师大版数学一年级上册 第4单元 10以内数加与减 第9课时 可爱的企鹅 教学课件
- 外研版(2019) 选择性必修第四册 Unit 5 Into the Unknown Understanding ideas教案
- 中班健康课件《认识五官》
- 2024~2025学年度八年级数学上册第1课时 等边三角形的性质和判定教学设计
- 江西九江富和建设投资集团有限公司招聘笔试题库2024
- 2024-2030年中国BPO行业发展分析及发展前景与趋势预测研究报告
评论
0/150
提交评论