第4章进程及进程管理习题四答案.pdf
- 文档编号:3210633
- 上传时间:2022-11-20
- 格式:PDF
- 页数:22
- 大小:460.15KB
第4章进程及进程管理习题四答案.pdf
《第4章进程及进程管理习题四答案.pdf》由会员分享,可在线阅读,更多相关《第4章进程及进程管理习题四答案.pdf(22页珍藏版)》请在冰豆网上搜索。
操作系统原理与Linux系统实验课后习题参考答案沈华湖北工业大学计算机学院Email:
1习题四参考答案(习题四参考答案(PP6969)4-1试解释下列名词:
程序的顺序执行、程序的并发执行。
试解释下列名词:
程序的顺序执行、程序的并发执行。
答:
答:
一个程序由若干个程序段组成,而这些程一个程序由若干个程序段组成,而这些程序段的执行必须是顺序的,这种序段的执行必须是顺序的,这种程序执行的方式就称为程序的顺序执行程序执行的方式就称为程序的顺序执行。
若干个程序段同时在系统中运行,这若干个程序段同时在系统中运行,这些程序的执行在时间上是重迭的,一个程序段的执行尚未结束,另一个程序段些程序的执行在时间上是重迭的,一个程序段的执行尚未结束,另一个程序段的执行已经开始,即使这种重迭是很小的,也称这几个程序段是并发执行的。
的执行已经开始,即使这种重迭是很小的,也称这几个程序段是并发执行的。
4-2什么是与时间有关的错误?
试举例说明。
什么是与时间有关的错误?
试举例说明。
答:
答:
当程序并发执行时,系统处于一个复杂的动态组合状态,各程序执行的相当程序并发执行时,系统处于一个复杂的动态组合状态,各程序执行的相对速度不确定,这使得(即使初始条件相同对速度不确定,这使得(即使初始条件相同)这些程序多次并发执行得到的结)这些程序多次并发执行得到的结果不同,其中有一个结果是正确的,而其他的是错误的果不同,其中有一个结果是正确的,而其他的是错误的。
这些错误与并发程序这些错误与并发程序执行的相对速度有关,是与时间有关的错误执行的相对速度有关,是与时间有关的错误。
例如,。
例如,三个并发执行程序三个并发执行程序的的誊抄誊抄。
其中,其中,get程序负责从输入序列程序负责从输入序列f中读取字符,并送到缓冲区中读取字符,并送到缓冲区s中中;copy程序把缓程序把缓冲区冲区s中的数据复制到缓冲区中的数据复制到缓冲区t中去中去;put程序从缓冲区程序从缓冲区t中取出数据打印。
中取出数据打印。
若程若程序写出:
序写出:
while(誊抄未完成)誊抄未完成)cobegincopy;put;get;coendcopy、put、get三个程序段并发执行,就有六种组合:
三个程序段并发执行,就有六种组合:
(假设此时的状态为:
(假设此时的状态为:
f=(r1,r2,.,rn);s=r2,t=r1,g=(r1))1、copy;put;get2、copy;get;put3、put;copy;get4、put;get;copy5、get;copy;put操作系统原理与Linux系统实验课后习题参考答案沈华湖北工业大学计算机学院Email:
26、get;put;copy易知易知,如果按照,如果按照1和和2的执行顺序可以得到正确的誊抄结果,而的执行顺序可以得到正确的誊抄结果,而3、4、5、6的的执行顺序都会到错误的誊抄结果(即产生了与时间相关的错误)。
执行顺序都会到错误的誊抄结果(即产生了与时间相关的错误)。
4-3什么是进程?
进程与程序的主要区别是什么?
什么是进程?
进程与程序的主要区别是什么?
答:
进程,即是一个具有一定独立功能的程答:
进程,即是一个具有一定独立功能的程序关于某个数据集合的一次活动。
序关于某个数据集合的一次活动。
进程与程序的主要区别是:
进程与程序的主要区别是:
(1)程序是指令的有序集合,是一个静态概念,其本身没有任何运行的含义,)程序是指令的有序集合,是一个静态概念,其本身没有任何运行的含义,进程是程序在处理机上的一次执行过程,是一个动态概念。
进程是程序在处理机上的一次执行过程,是一个动态概念。
(2)程序作为软件资料可长期保存,而进程是有生命期的,因创建而产生、因)程序作为软件资料可长期保存,而进程是有生命期的,因创建而产生、因调度而执行、因得不到资源而暂停、因撤消而消亡。
调度而执行、因得不到资源而暂停、因撤消而消亡。
(3)程序是记录在介质上指令的有序集合,而进程则由程序、数据和进程控制)程序是记录在介质上指令的有序集合,而进程则由程序、数据和进程控制块块3部分组成。
部分组成。
(4)进程与程序之间无一一对应关系。
不同的进程可以包含同一程序,同一程)进程与程序之间无一一对应关系。
不同的进程可以包含同一程序,同一程序在执行中也可以产生多个进程。
序在执行中也可以产生多个进程。
(5)进程是一个独立)进程是一个独立的运行单位,也是系统进行资源分配和调度的独立单位。
的运行单位,也是系统进行资源分配和调度的独立单位。
而程序无此概念。
而程序无此概念。
4-4图图4-2标明程序段执行的先后次序。
其中标明程序段执行的先后次序。
其中I表示输入操作、表示输入操作、C表示计算操作、表示计算操作、P表示打印操作,下角标说明是对哪个作业进行上述操作。
请指明:
表示打印操作,下角标说明是对哪个作业进行上述操作。
请指明:
(1)哪些操作必须有先后次序,其原因是什么?
)哪些操作必须有先后次序,其原因是什么?
(2)哪些操作可以并发执行,其原因又是什么?
)哪些操作可以并发执行,其原因又是什么?
答:
答:
(1)Ii必须先于必须先于Ci执行,执行,Ci必须先于必须先于Pi执行,这是因为同一个作业的这三执行,这是因为同一个作业的这三个操作之间具有逻辑上的严格的先后执行次序;个操作之间具有逻辑上的严格的先后执行次序;Ii必须先于必须先于Ii+1执行,执行,Ci必须先必须先于于Ci+1执行,执行,Pi必须先于必须先于Pi+1执行,这是因为执行,这是因为Ii和和Ii+1共享输入设备、共享输入设备、Ci和和Ci+1共享共享CPU、Pi和和Pi+1共享输出设备共享输出设备。
(2)Ii+1和和Ci、Pi-1可以并发执行,因为这三个进程分属于不同的作业,且它们可以并发执行,因为这三个进程分属于不同的作业,且它们占据的是不同的资源。
占据的是不同的资源。
操作系统原理与Linux系统实验课后习题参考答案沈华湖北工业大学计算机学院Email:
34-5如如下下图所示,设一誊抄程序,将图所示,设一誊抄程序,将f中记录的序列正确誊抄到中记录的序列正确誊抄到g中,这一程序中,这一程序由由get、copy、put三个程序段组成,它们分别负责获得记录、复制记录、输出三个程序段组成,它们分别负责获得记录、复制记录、输出记录。
请指出这三个程序段对记录。
请指出这三个程序段对f中的中的m个记录进行处理时各种操作的先后次序,个记录进行处理时各种操作的先后次序,并画出誊抄此记录序列的先后次序图。
(假设并画出誊抄此记录序列的先后次序图。
(假设f中有中有1,2,m个记录,个记录,s,t为设置在主存中的软件缓冲区,每为设置在主存中的软件缓冲区,每次只能装一个记录。
)次只能装一个记录。
)答:
答:
(不是很明白题目的要求,所以给出三个程序段正确完成誊抄的算法)(不是很明白题目的要求,所以给出三个程序段正确完成誊抄的算法)。
输入:
输入:
f输出:
输出:
g1.if(f不为空不为空)then2.3.get(s,f);/从从f中读入一个字符放入缓冲区中读入一个字符放入缓冲区s4.while
(1)5.6.if(s中的字符不是结束符中的字符不是结束符)then7.8.copy(t,s);9.cobegin10.get(s,f);11.put(g,t);12.coend13.14.else15.16.copy(t,s);17.put(g,t);18.break;操作系统原理与Linux系统实验课后习题参考答案沈华湖北工业大学计算机学院Email:
419.20./while21.4-6进程有哪几个基本状态?
进程有哪几个基本状态?
在一个系统中为什么必须区分出这几种状态在一个系统中为什么必须区分出这几种状态。
答:
进程有三个基本状态:
运行状态、就绪状态和等待状态(又称阻塞、挂起、答:
进程有三个基本状态:
运行状态、就绪状态和等待状态(又称阻塞、挂起、睡眠)。
睡眠)。
因为因为多道程序设计技术的引入,使多道程序设计技术的引入,使得多个进程可以并发执行。
并发执行的进程得多个进程可以并发执行。
并发执行的进程之间由于合作具有直接制约关系或由于共享资源具有间接制约关系,使得它们之间由于合作具有直接制约关系或由于共享资源具有间接制约关系,使得它们的执行过程具有“执行的执行过程具有“执行暂停暂停执行执行暂停暂停执行执行”的动态特”的动态特征,因此需要对进程在其生命周期内所处于的不同状态进行区分,以便对进程征,因此需要对进程在其生命周期内所处于的不同状态进行区分,以便对进程进行分析、管理和控制。
进行分析、管理和控制。
4-7试用图画出批处理系统的进程状态变迁图。
试用图画出批处理系统的进程状态变迁图。
答:
答:
如下所示如下所示。
4-8试用图画出分时系统的进程状态变迁图。
试用图画出分时系统的进程状态变迁图。
答:
答:
如下所示如下所示。
操作系统原理与Linux系统实验课后习题参考答案沈华湖北工业大学计算机学院Email:
54-9某系统进程状态变迁图如下图所示,请回答下列问题:
某系统进程状态变迁图如下图所示,请回答下列问题:
(1)什么原因会导致发现变迁)什么原因会导致发现变迁2、3、4?
(2)当)当观察系统中进程时,可能看到某一进程产生的一次状态变迁将引起另一观察系统中进程时,可能看到某一进程产生的一次状态变迁将引起另一进程作一次状态变迁,这两个变迁称为因果变迁。
在什么情况,一个进程的变进程作一次状态变迁,这两个变迁称为因果变迁。
在什么情况,一个进程的变迁迁3能立即引起另一个进程的变迁能立即引起另一个进程的变迁1?
(3)下述因果变迁是否可能发生?
如果可能的话,在什么情况下发生?
)下述因果变迁是否可能发生?
如果可能的话,在什么情况下发生?
a.2-1b.3-2c.4-1答:
答:
(1)如图中所示)如图中所示。
(2)正在运行的进程因请求资源未得到满足而变为等待状态的变迁正在运行的进程因请求资源未得到满足而变为等待状态的变迁3,必然引,必然引起一个就绪进程被调度执行的变迁起一个就绪进程被调度执行的变迁1(只要就绪队列不为空)(只要就绪队列不为空)。
(3)a.正运行的进程因时间片到变为就绪状态的变迁正运行的进程因时间片到变为就绪状态的变迁2,必然引起一个就绪进必然引起一个就绪进程被调度执行的变迁程被调度执行的变迁1。
操作系统原理与Linux系统实验课后习题参考答案沈华湖北工业大学计算机学院Email:
6b.3-2不可能。
不可能。
c.当一进程从等待状态变为就绪状态的变迁当一进程从等待状态变为就绪状态的变迁4,在该进程的优先级最高且系统采,在该进程的优先级最高且系统采用抢占式调度时用抢占式调度时,就会引起该进程又被调度执行的变迁就会引起该进程又被调度执行的变迁1。
4-10某系统进程状态除了三个基本状态外,又增加了创建状态、完成状态某系统进程状态除了三个基本状态外,又增加了创建状态、完成状态两两种种新的状态,试用图画出增加新状态后的进程状态变迁图,并说明发生每一种变新的状态,试用图画出增加新状态后的进程状态变迁图,并说明发生每一种变迁的原因迁的原因。
答:
如下所示。
答:
如下所示。
运行就绪阻塞终止创建创建完成等待某事件的发生等待的事件的发生了进程调度程序的调度善后处理工作完成4-11什么是进程控制块?
它有什么作用?
什么是进程控制块?
它有什么作用?
答:
答:
存放进程的管理和控制信息的数据结构称为存放进程的管理和控制信息的数据结构称为进程控制块。
它是进程管理和进程控制块。
它是进程管理和控制的最重要的数据结构,控制的最重要的数据结构,系统通过它感知进程的存在系统通过它感知进程的存在。
4-12什么是线程?
线程和进程有什么区别?
什么是线程?
线程和进程有什么区别?
答:
答:
线程有时也称为轻量级进程,它是比进程更小的活动单位,它是进程中的线程有时也称为轻量级进程,它是比进程更小的活动单位,它是进程中的一
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 进程 管理 习题 答案
![提示](https://static.bdocx.com/images/bang_tan.gif)