操作系统第二版第二章课后习题答案
操作系统第二版第二章课后习题答案
第二章 进程和线程 作业答案
1,2,4, 6,7,10,11,12,14, 21
1. 在操作系统中为什么要引入进程概念?它与程序的差别和关系是怎样的?
答:由于多道程序的并发执行时共享系统资源,共同决定这些资源的状态,因此系统中各程序在执行过程中就出现了相互制约的新关系,程序的执行出现“走走停停”的新状态。用程序这个静态概念已经不能如实反映程序并发执行过程中的这些特征。为此,人们引入“进程(Process)”这一概念来描述程序动态执行过程的性质。
进程和程序是两个完全不同的概念。进程与程序的主要区别:
进程和程序之间存在密切的关系:进程的功能是通过程序的运行得以实现的,进程活动的主体是程序,进程不能脱离开具体程序而独立存在。
操作系统第二版第二章课后习题答案
2. PCB的作用是什么?它是怎样描述进程的动态性质的? 答:PCB是进程组成中最关键的部分。每个进程有惟一的进程控制块;操作系统根据PCB对进程实施控制和管理,进程的动态、并发特征是利用PCB表现出来的;PCB是进程存在的唯一标志。
PCB中有表明进程状态的信息,该进程的状态包括运行态、就绪态和阻塞态,它利用状态信息来描述进程的动态性质。
4. 用如图2-26所示的进程状态转换图能够说明有关处理机的大量内容。试回答:
① 什么事件引起每次显著的状态变迁?
② 下述状态变迁因果关系能否发生?为什么?
(A) 2→1 (B)3→2 (C)4→1
答:(1)就绪 → 运行:CPU空闲,就绪态进程被调度程序选中
操作系统第二版第二章课后习题答案
运行→阻塞:运行态进程因某种条件未满足而放弃CPU的占用。
阻塞→就绪:阻塞态进程所等待的事件发生了。
运行→就绪:正在运行的进程用完了本次分配给它的时间片
(2)下述状态变迁
(A)2→1,可以。运行进程用完了本次分配给它的时间片,让出CPU,从就绪队列中选一个进程投入运行。
(B)3→2,不可以。任何时候一个进程只能处于一种状态,它既然由运行态变为阻塞态,就不能再变为就绪态。
(C)4→1,可以。某一阻塞态进程等到的事件出现了,而且此时就绪队列为空,该进程进入就绪队列后马上又被调度运行。
6. 什么是进程的互斥和同步?
答: 进程的互斥:逻辑上本来完全独立的若干进程,由于竞争同一个资源而产生的相互制约关系。
进程的同步:进程间共同完成一项任务时直接发生相互作用的关系,也就是说,这些具有伙伴关系的进程在执行时间次序上必须遵循确定的规律。
7. 什么是临界区和临界资源?进程进入临界区的调度原则是什么?
操作系统第二版第二章课后习题答案
答:
一次仅允许一个进程使用的资源称为临界资源。
在每个进程中访问临界资源的那段程序叫做临界区。
进程进入临界区的调度原则:
① 如果有若干进程要求进入空闲的临界区,一次仅允许一个进程进入。
② 任何时候,处于临界区内的进程不可多于一个。如已有进程进入自己的临界区,则其他所有试图进入临界区的进程必须等待。
③ 进入临界区的进程要在有限时间内退出,以便其他进程能及时进入自己的临界区。
④ 如果进程不能进入自己的临界区,则应让出CPU,避免进程出现“忙等”现象。
10. 系统中只有一台打印机,有三个用户的程序在执行过程中都要使用打印机输出计算结果。设每个用户程序对应一个进程。问:这三个进程间有什么样的制约关系?试用P,V操作写出这些进程使用打印机的算法。
答:
(1) 这三个进程之间存在互斥的制约关系。因为打印机属于临界
资源,必须一个进程使用完之后另一个进程才能使用。
(2)设三个进程分别为A、B、C
mutex:用于互斥的信号量,初值为1。
操作系统第二版第二章课后习题答案
① 设 A,B两个进程共用一个缓冲区Q,A向Q写入信息,B从Q读出信息,算法框图如图2-27所示。
② 设A,B为两个并发进程,它们共享一个临界资源。其
运行临界区的算法框图如图
操作系统第二版第二章课后习题答案
答:(1) 这个算法不对。进程A,B共用一个缓冲区,同步关系。如果A先运行,且信息数量足够多,则缓冲区Q中的信息会被后来的冲掉,造成信息丢失,进程B不能从Q中读出完整的信息。
改正:
进程A,B同步使用一个缓冲区, 设立两个信号量:
empty:缓冲区Q为空,初值为1;
full:缓冲区Q为满,初值为0;
(2) 这个算法不对。进程A,B并发的,它们共享一个临界资源,二者应互斥地使用该临界资源,在进入临界区时不存在A先B后的时序关系,而是哪个进程先到一步就先进入自己的临界区。
操作系统第二版第二章课后习题答案
改正:A,B两个进程应互斥地进入临界区。为此,设立一个互斥信号量mutex,初值为1,算法框图如上所示。
12. 设有一台计算机,有两条I/O通道,分别接一台卡片输入机和一台打印机。卡片机把一叠卡片逐一输入到缓冲区
B1中,加工处理后再搬到缓冲区B2中,并在打印机上打印结果,问:
① 系统要设几个进程来完成这个任务?各自的工作是什么 ② 这些进程间有什么样的相互制约关系?
③ 用P, V操作写出这些进程的同步算法。
答:这是一个典型的生产者,消费者问题
1)系统可设三个进程完成任务,第一个进程R,从卡片输入机中读入数据,并且把数据放入缓冲区B1中,第二个进程C从B1缓冲区中取数据,加工处理后放入缓冲区B2中。第三个进程P将缓冲区B2的内容取出,在打印机上打印出来
2)这三个进程之间是同步关系
R进程受C进程影响,B1放满信息后R进程要等待,等到C进程将其中的信息全部取走,才能继续读入信息;C进程受R进程和P进程的约束,B1中信息放满后C进程才可从中取出它们,且B2被取空后C进程才可将加工结果送入其中;P进程受C进程的约束,B2中信息放满后P进程才可从中取出它们,进行打印。
3)三个进程之间必须协调工作,需设置四个信号量:
B1empty:缓冲区B1空,初值为1;
B1full:缓冲区B1满,初值为0;
操作系统第二版第二章课后习题答案
B2empty:缓冲区B2空,初值为1;
B2full:缓冲区B2满,初值为0;
进程 R 进程C 进程P
while(TRUE){ while(TRUE){ while(TRUE){ P(B1empty); P(B1full); P(B2full);
从卡片机中读入数据 将B1中的数据取出计算; 将缓冲区B2内容 写入缓冲区B1; V(B1empty); 在打印机中输出;
V(B1full); P(B2empty); V(B2empty); } 计算结果送入B2中; }
V(B2full); }
14. 假定一个阅览室最多可容纳100个人,读者进入和离开阅览室时都必须在阅览室门口的一张登记表上做标识(进入时登记,离开时去掉登记项),而且每次只允许一人登记或去掉登记。问:
① 应编写几个程序完成此项工作? 程序的主要动作是什么,应设置几个进程?进程与程序间的对应关系如何?
② 用P,V操作写出这些进程的同步通信关系。
答:
相关推荐:
- [文秘资料]班长职务辞职报告
- [文秘资料]完美的辞职报告
- [文秘资料]经典的员工辞职报告
- [文秘资料]医院口腔医生辞职报告
- [文秘资料]总经理辞职报告范文四篇
- [文秘资料]超市职员个人辞职报告
- [文秘资料]村妇联主任的辞职报告
- [文秘资料]辞职报告书格式
- [文秘资料]酒店辞职报告简单范文
- [文秘资料]联通的辞职报告
- [文秘资料]2017最新私企员工辞职报告范文
- [文秘资料]2019年度医院基层党组织书记抓党建述职
- [文秘资料]工作时间长辞职报告
- [文秘资料]辞职报告怎么写出来
- [文秘资料]个人能力原因辞职报告
- [文秘资料]网络工程师辞职报告
- [文秘资料]项目部辞职报告
- [文秘资料]缝纫工辞职报告怎么写
- [文秘资料]XXX州委书记述职报告
- [文秘资料]抓基层党建工作述职报告
- (王虎应老师讲课记录)六爻理象思维
- 八个常见投影机故障排除法
- 质量专业综合知识(中级)第一章质量管理
- 煤矿班组建设实施意见
- 我国快餐业与肯德基经营模式的比较与分
- 汽车保险杠模具标准化模架技术工艺研究
- 汽车二级维护作业团体赛比赛规程
- 装卸搬运工安全操作规程
- 高效的工作方法-刘铁
- 依据《生产安全事故报告和调查处理条例
- 2015专业PS夜景亮化效果图制作教程
- 企业劳动定额定员浅析
- 中枢神经系统医学影像学本科五年制第五
- 长城汽车参观探营第三站:研发试验中心
- 小升初语文专项训练
- 建筑工程质量检测资质分类与等级标准
- 周燕珉-我国养老社区的发展现状与规划
- 《生命里最后的读书会》读后感
- 实验室管理评审报告
- CCNA思科网院教程精华之网络基础知识




