已阅读5页,还剩12页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第二章进程管理习题解答,5、在操作系统中为什么要引入进程概念?它会产生什么样的影响? 答:在操作系统中引入进程概念,是为了实现多个程序的并发执行。传统的程序不能与其他程序并发执行,只有在为之创建进程后,才能与其他程序(进程)并发执行。这是因为并发执行的程序(即进程)是“停停走走”地执行,只有在为它创建进程后,在它停下时,方能将其现场信息保存在它的PCB中,待下次被调度执行时,再从PCB中恢复CPU现场而继续执行,而传统的程序却无法满足上述要求。 建立进程所带来的好处是使多个程序能并发执行,这极大地提高了资源利用率和系统吞吐量。但管理进程也需付出一定的代价,包括进程控制块及协调各运行的机构所占用的内存空间开销,以及为进行进程间的切换、同步及通信等所付出的时间开销。,6、试从动态性、并发性和独立性上比较进程和程序。 答:进程有一定的生命周期;由创建而产生,由撤消而消亡。而程序只是存储在某种介质上的一组有序的指令集合,是静态实体。 进程的引入是为了能和其他进程并发运行,并发性是进程的基本特征,而程序却是不能并发运行的。 进程是可以独立运行的基本单位,同时也是系统中独立获得资源和独立调度的基本单位。凡是没有建立进程的程序都不能作为一个独立单位参加运行。,7、试说明PCB的作用。为什么说PCB是进程存在的惟一标志? 答:PCB的作用是使一个在多道程序环境下不能独立运行的程序(含数据)成为一个能独立运行的程序,OS根据PCB来对并发执行的进程实施控制和管理。 PCB是进程实体的一部分,是OS中最重要的数据结构,存放着OS所需的、用于描述进程的信息及控制运行的全部信息。系统通过进程的PCB感知进程的存在,所以说PCB是进程存在的惟一标志。,15、试说明引起进程阻塞或被唤醒的主要事件是什么? 答:引起进程阻塞的主要事件有: 请求系统服务得不到满足; 启动某种操作后需要等待完成; 等待合作进程的运行结果; 系统进程因完成了所做的工作后无事可做。 引起进程唤醒的主要事件有: 期待的事件已出现; 要求的IO操作已完成: 期待的数据已到达; 系统进程被启动。,18、同步机制应遵循哪些基本准则?为什么? 答:用来实现互斥的同步机制必须遵循下述四条准则: (1)空闲让进。临界资源空闲时,应允许一个请求进入临界区的进程立即进入自己的临界区,以便有效地利用资源。 (2)忙则等待。当临界资源正被访问时,其他要求进入临界区的进程必须等待,以保证对临界资源的互斥使用。 (3)有限等待。任何要求访问临界资源的进程应能在有限的时间内进入自己的临界区,以免“死等”。 (4)让权等待。不能进入临界区的进程应立即释放CPU,以免“忙等”。,19、试从物理概念上来说明记录型信号量及wait和signal操作? 答:记录型信号量是由两个量组成的记录型变量。其中的一个是整型的值,用于指示临界资源的状态是忙碌还是闲置,另一个是指针型的,用于连接一个等待队列。 wait操作通过检查信号量的值来判断临界资源的状态。信号量取值就像交通灯,当其值大于0时,表示是“绿灯”,否则表示是“红灯”。当为“绿灯”时说明可以通行;否则不可以通行。无论可以或不可以通行,都必须给其值减1。 signal操作用来释放临界资源。执行该操作先给信号量的值加l,然后判断是否有进程正在等待使用临界资源,若有就唤醒之。,23、在生产者一消费者问题中,如果缺少了wait(full)或signal(empty),对执行结果会有何影响? 答:如果缺少了wait(full),消费者进程将不检测缓冲区中是否有可以读取的产品就试图进行读操作,因而有可能读出“假产品”。 如果缺少了signal(empty),读出一个产品后腾出的位置将不能告知生产者进程,因而导致生产者无法再向这些缓冲区存放产品。,24、在生产者消费者问题中,如果将两个wait操作即wait(full)和wait(mutex)互换位置,或者是将signal(mutex)与signal(full)互换位置,结果会如何? 答:如果将wait(full)和wait(mutex)互换位置,将可能导致死锁。 会出现变量不一致吗? 如果将signal(mutex)与signal(full)互换位置,将无碍结果。,26、试修改下面生产者一消费者问题解法中的错误。 Producer: Begin Repeat Produce an item in nextp; Wait(mutex); Wait(full); Buffer(in):=nextp; Signal(mutex); Until false; End. Consumer: Begin Repeat Wait(mutex); Wait(empty); Nextc:=buffer(0ut); out:=out+l; Sianal(mutex); C0nsume item in nextc; Until false; End.,答:修改过的程序如下面带有斜体的命令所示。 Producer: Begin Repeat Produce an item in nextp; wait(empty); wait(mutex); Buffer(in):=nextp; In:=(in+1)mod N Siqnal(mutex); signal(full); Until false; End. consumer: Begin Repeat wait(full); wait(mutex); Nextc:=buffer(0ut); out:(out+1)mod N; Siqnal(mutex); Signal(empty); Consume item in nextc; Until false; End.,28、在测量控制系统中的数据采集任务时,把所采集的数据送一个单缓冲区:计算任务从该单缓冲区中取出数据进行计算。试写出利用信号量机制实现两者共享单缓冲的同步算法。 答:将数据采集进程命名为Pickup,其同步信号量为s1,初始值为l;计算进程命名为 Compute,其同步信号量为s2,初始值为O。程序为: Pickup: Beqin Repeat Pickup a data into X; P(s1); Buffer:=X; V(s2); Until false; End,Compute: Begin Reteat P(s2); Y:=Buffer; V(s1); Computing a data in Y; Until false; End。,38、试从调度性、并发性、拥有资源及系统开销4个方面对进程和线程进行比较。 答:调度性方面。进程是拥有资源的基本单位,也是调度和分派的基本单位。线程是调度和分派的基本单位,而不是拥有资源的基本单位。在同一进程中线程的切换不会引起进程的切换。在由一个进程的线程切换到另一个进程的线程时,将引起进程切换。 并发性方面。进程间可以并发执行,线程之间也可以并发执行。 拥有资源方面。进程是拥有资源的独立单位,而线程基本是不拥有资源的。线程运行所需的资源由所属进程提供。 系统开销方面。系统在进程创建、撤消、切换时的开销较大,而对线程的开销较小。,补充题: 某寺庙,有小和尚、老和尚若干庙内有一水缸,由小和尚提水入缸,供老和尚饮用水缸可容纳 30 桶水,每次入水、取水仅为1桶,不可同时进行。水取自同一井中,水井径窄,每次只能容纳一个水桶取水。设水桶个数为5个,试用信号灯和 PV 操作给出老和尚和小和尚的活动。,答:semaphore empty=30; / 表示缸中目前还能装多少桶水,初始时能装 30 桶水 semaphore full=0; / 表示缸中有多少桶水,初始时缸中没有水 semaphore buckets=5; / 表示有多少只空桶可用,初始时有 5 只桶可用 semaphore mutex_well=1; / 用于实现对井的互斥操作 semaphore mutex_bigjar=1; / 用于实现对缸的互斥操作 semaphore mutex_bucket=1; /用于实现对桶的互斥操作,young_monk() while(1) P(empty); P(buckets);P(mutex_bucket); get a bucket ; V(mutex_bucket);go to the well; P(mutex_well); get water; V(mutex_well); go to the temple; P(mutex_bigjar); pure the water into the big jar; V(mutex
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 商场临时租赁协议
- 原料配送代理合同
- 工程机械租凭合同书样式
- 交通意外保险合同范本
- 2024年承包房屋建筑合同范本
- 出口买方信贷贷款协议
- 搜索引擎服务合同示例
- 专利代理委托协议书
- 2024年运输书面合同
- 2024保管协议书范文
- 高速公路路面专项工程(大修养护)-技术标
- 意大利的工业设计史课件
- 中小企业精益生产成本管理课件
- 休克-最新课件
- 博士研究生申请汇报模板
- 河北省邯郸市药品零售药店企业药房名单目录
- 二次预留预埋安装技术交底(强、弱电部分)
- 东北大学考试《结构力学ⅠX》考核作业参考324
- 结业证书文档模板可编辑
- 幼儿园、中小学、病愈复课证明
- 2023年5月-北京地区成人本科学士学位英语真题及答案
评论
0/150
提交评论