02326操作系统第4章课后思考题

02326操作系统第4章课后思考题
02326操作系统第4章课后思考题

1、何谓之与时间有关的错误?举例说明之。并发进程执行时一定会产生与时间有关的错误吗?为什么。

与时间有关的错误是指两个程序都以各自的速度交叉着运行,同时访问共享信息导致的错误。

比如程序A对共享变量p执行+1操作后,休眠一秒输出变量p,程序B对共享变量p执行减1操作后,休眠一秒输出变量p。导致的结果就会和想象中的不相同。

并发程序不一定都导致时间相关的错误,我们可以对共享变量加锁来解决这个问题

2、什么是临界区,什么是相关临界区,对相关临界区的使用规则?系统中某些资源一次只允许一个进程使用,则这类资源被称为临界资源,而在进程中访问临界资源的程序被称为临界区。

多个进程涉及到同一个临界资源的临界区被称为相关临界区。

使用规则:(1)只能选择一个进程进入临界区,其他进程必须等待。(2)不能强迫一个进程无限的等待进入他的临界区

(3)任何一个进程在进入临界区后都要在有限的时间内退出临界区。

3、若使用P、V操作管理某一组相关临界区,其信号量S的值在【-1,1】之间变化,当S=-1,s=0,S=1时,他们各自的物理含义是什么?当S=-1,临界区已满,且有一个进程正在等待

当S=0,临界区已满

当S=1, 临界区为空

4、两个并发执行的进程A和B的程序如下:

进程A:

While(true){

N = N+5;

};

进程B:

While(true){

打印N的值;

N = 0;

};

其中,N为整数,初值为4,若进程A先执行3次循环后,进程A 和进程B又并发执行了一个循环,请写出可能出现的打印值。

答:可能出现的打印值:19,0,24。因为N初值为4,若进程A先执行了三个循环,此时N的值为19。当进程A和进程B并发执行时可能会有如下两种执行次序,即进程A先执行一次循环,然后再进程B执行一次循环,此时打印的是正确值24,执行后N中的值为0。但若进程B先执行一次循环,然后再进程A执行一次循环,则打印的值是19,执行后N中的值是0。这是错误的,即发生了与时间有关的错误。用P、操作进行管理,使进程A和B并发时不会出现与时间有关的错误的程序如下:(S为互斥信号量,初值为1),

进程A 进程B

while(1){ while(1){

P(S); P(S);

N=N+5; 打印N的值;

V(S); N=0;

} V(S);

};

5、a,b两点之间有一段单行车道,现在设计一个自动管理系统,管理规则如下:允许同方向的车同时驶入ab段,但另一方向的车必须在ab段外等待,当ab之间无车辆在行驶时,到达a点(或者b点)的车辆可以进入ab段,但不能从a点或者b点同时驶入,当某方向在ab段行驶的车辆驶出了ab段且同方向无车辆进入ab段的时候,应让另一方等待的车辆进入ab段行驶,请编写程序,使用PV操作实现对ab段的正确管理以保证行驶安全。

a() //a点

{

While(true)

{

//准备驶入

P(ab)

P(empty)

//驶出

V(empty)

V(ab)

}

}

b() //b点

{

While(true)

{

//准备驶入

P(ab)

P(empty)

//驶出

V(empty)

V(ab)

}

}

6. 今有三个进程R、M、P,它们共享一个缓冲区B。R负责从输入设备读信息,每次读出一个记录并把它存放在缓冲区B中:M在缓冲区加工读入的记录;P把加工后的记录打印输出。输入的记录经加工输出后,缓冲区中又可存放下一个记录。请用P、V操作为同步机构写出他们并发执行时能正确工作的程序。

答:三个进程共用一个缓冲区B,他们必须同步工作,可定义三个信号量:

S1:表示是否可把读人的记录放到缓冲区,初始值为1.

S2:表示是否可对缓冲区中的记录加工,初始值为0.

S3:表示记录是否加工好,可以输出,初始值也为0.

三个进程可如下设计:

While(1){ //读记录;

P(S1);

记录存入缓冲区;

V(S2);

};

While(1){ //加工记录;

P(S2);;

P(S3)

加工记录;

V(S3);

V(S1);

};

While(1){ //取记录;

P(S3)

输出加工后的记录;

V(S1);

};

7.

要求:当发车时间到,售票员关好车门后,司机才能启动车辆,售票员开始售票;当到站后,司机停车后,售票员才能打开车门,乘客下车,站牌乘客上车。

设置两个信号量:

S1:判断是否到站

S2:判断是否可以离站

司机:售票员:

While(1){ while(1){

正常行驶到站,P(S1);

停车开车门

V(S1); 售票、关车门

P(S2); V(S2);

离开车站};

};

9.

10、设有两个优先级相同的进程P1,P2,如下所示,信号量S1,S2的初值都为0,试问P1,P2并发执行后,X,Y,Z的值各是多少?

进程P1:

Y =1;

Y = y+2;

V(S1);

Z = y+1;

P(s2);

Y = z+y;

进程P2:

X=1;

X = x+1;

P(s1);

X = x+y;

V(s2);

Z = x+z;

x=5,y=7,z=9;

12.

读者的动作有两个,一是填表进入阅览室,这时要考虑阅览室里是否有座位;一是读者阅读完毕,离开阅览室,这时的操作要考虑阅览室里是否有读者。读者在阅览室读书时,由于没有引起资源的变动,不算动作变化。

算法的信号量有三个:

seats——表示阅览室是否有座位(初值为100,代表阅览室的空座位数);

readers——表示阅览室里的读者数,初值为0;用于互斥的mutex,

初值为1。

读者进入阅览室的动作描述getin:while(TRUE){

P (seats); /*没有座位则离开*/

P(mutex)/*进入临界区*/

填写登记表;

进入阅览室读书;

V(mutex)/*离开临界区*/

V(readers)

}

读者离开阅览室的动作描述getout:while(TRUE){

P(readers)/*阅览室是否有人读书*/ P(mutex)/*进入临界区*/

消掉登记;

离开阅览室;

V(mutex)/*离开临界区*/

V(seats)/*释放一个座位资源*/ };

13.

为了控制两个进程依次使用输入设备进行输入,需分别设置三个信号量S1、S2,其中S1的初值为1,S2初值为0。使用上述信号量后,两个进程不会同时使用输入设备,故不必再为输入设备设置互斥信号量。另外,还需设置信号量Sb、Sy、来分别表示数据b是否已经输入,以及y是否已计算完成,它们的初值均为0。三个进程的动作可描述为:P1:

P(S1);

从输入设备输入数据a;

V(S2);

P(Sb);

x=a+b;

P(Sy);

使用打印机打印出x、y的结果;

P2:

P(S2);

从输入设备输入数据b;

V(Sb);

y=a*b;

V(Sy);

14. 进程间有哪几种通信方式?各有什么特点?各种方式分别适用于那些情况?

解决进程间的大量信息通信的问题有三类方案:共享内存、消息机

制、以及通过共享文件进行通信,及管道通信。

共享内存:在互相通讯的进程之间设有一个公共内存区,一组进程向该公共内存中写,另一组进程从公共内存中读,通过这种方式实现两组进程间的信息交换。

消息机制:是用于进程间通信的高级通信原语之一。

(1) 消息缓冲通信:利用内存中公共消息缓冲区实现进程之间的信息交换。消息缓冲区是由:消息长度、消息正文、发送者、消息队列指针组成的数据结构。

(2) 信箱通信:为了实现进程间的通信,可以设立一个通信机构——信箱,以发送信件以及接受回答信件为进程间通信的进本方式。一个信箱的接口可以由信箱说明和信箱体两部分组成。信箱说明有如下的数据结构:可存信件数,已有信件数。

管道通信:所谓管道,就是连接两个进程之间的一个打开的共享文件,专用于进程之间进行数据通信。管道通信的基础是文件系统

操作系统第四版-课后习题答案

操作系统第四版-课后习题答案

第一章 作者:佚名来源:网络 1、有一台计算机,具有IMB 内存,操作系统占用200KB ,每个用户进程各占200KB 。如果用户进程等待I/O 的时间为80 % ,若增加1MB 内存,则CPU 的利用率提高多少? 答:设每个进程等待I/O 的百分比为P ,则n 个进程同时等待刀O 的概率是Pn ,当n 个进程同时等待I/O 期间CPU 是空闲的,故CPU 的利用率为1-Pn。由题意可知,除去操作系统,内存还能容纳4 个用户进程,由于每个用户进程等待I/O的时间为80 % , 故: CPU利用率=l-(80%)4 = 0.59 若再增加1MB 内存,系统中可同时运行9 个用户进程,此时:cPu 利用率=l-(1-80%)9 = 0.87 故增加IMB 内存使CPU 的利用率提高了47 % : 87 %/59 %=147 % 147 %-100 % = 47 % 2 一个计算机系统,有一台输入机和一台打印机,现有两道程序投入运行,且程序A 先开始做,程序B 后开始运行。程序A 的运行轨迹为:计算50ms 、打印100ms 、再计算50ms 、打印100ms ,结束。程序B 的运行轨迹为:计算50ms 、输入80ms 、再计算100ms ,结束。试说明(1 )两道程序运行时,CPU有无空闲等待?若有,在哪段时间内等待?为什么会等待?( 2 )程序A 、B 有无等待CPU 的情况?若有,指出发生等待的时刻。 答:画出两道程序并发执行图如下: (1)两道程序运行期间,CPU存在空闲等待,时间为100 至150ms 之间(见图中有色部分) (2)程序A 无等待现象,但程序B 有等待。程序B 有等待时间段为180rns 至200ms 间(见图中有色部分) 3 设有三道程序,按A 、B 、C优先次序运行,其内部计算和UO操作时间由图给出。

操作系统课后习题答案

第一章 1.设计现代OS的主要目标是什么? 答:(1)有效性(2)方便性(3)可扩充性(4)开放性 4.试说明推劢多道批处理系统形成和収展的主要劢力是什么? 答:主要动力来源于四个方面的社会需求与技术发展: (1)不断提高计算机资源的利用率; (2)方便用户; (3)器件的不断更新换代; (4)计算机体系结构的不断发展。 12.试从交互性、及时性以及可靠性方面,将分时系统不实时系统迚行比较。答:(1)及时性:实时信息处理系统对实时性的要求与分时系统类似,都是以人所能接受的等待时间来确定;而实时控制系统的及时性,是以控制对象所要求的开始截止时间或完成截止时间来确定的,一般为秒级到毫秒级,甚至有的要低于100微妙。 (2)交互性:实时信息处理系统具有交互性,但人与系统的交互仅限于访问系统中某些特定的专用服务程序。不像分时系统那样能向终端用户提供数据和资源共享等服务。 (3)可靠性:分时系统也要求系统可靠,但相比之下,实时系统则要求系统具有高度的可靠性。因为任何差错都可能带来巨大的经济损失,甚至是灾难性后果,所以在实时系统中,往往都采取了多级容错措施保障系统的安全性及数据的安全性。 13.OS有哪几大特征?其最基本的特征是什么? 答:并发性、共享性、虚拟性和异步性四个基本特征;最基本的特征是并发性。 第二章 2. 画出下面四条诧句的前趋图: S1=a:=x+y; S2=b:=z+1; S3=c:=a –b;S4=w:=c+1; 8.试说明迚程在三个基本状态之间转换的典型原因。 答:(1)就绪状态→执行状态:进程分配到CPU资源 (2)执行状态→就绪状态:时间片用完 (3)执行状态→阻塞状态:I/O请求 (4)阻塞状态→就绪状态:I/O完成

操作系统 习题答案(中文版)

操作系统概第七版中文版习题答案(全) 1.1在多道程序和分时环境中,多个用户同时共享一个系统,这种情况导致多种安全问题。a. 列出此类的问题 b.在一个分时机器中,能否确保像在专用机器上一样的安全度?并解释之。 答:a.窃取或者复制某用户的程序或数据;没有合理的预算来使用资源(CPU,内存,磁盘空间,外围设备)b.应该不行,因为人类设计的任何保护机制都会不可避免的被另外的人所破译,而且很自信的认为程序本身的实现是正确的是一件困难的事。 1.2资源的利用问题在各种各样的操作系统中出现。试例举在下列的环境中哪种资源必须被严格的管理。(a)大型电脑或迷你电脑系统(b)与服务器相联的工作站(c)手持电脑 答:(a)大型电脑或迷你电脑系统:内存和CPU资源,外存,网络带宽(b)与服务器相联的工作站:内存和CPU资源(c)手持电脑:功率消耗,内存资源 1.3在什么情况下一个用户使用一个分时系统比使用一台个人计算机或单用户工作站更好? 答:当另外使用分时系统的用户较少时,任务十分巨大,硬件速度很快,分时系统有意义。充分利用该系统可以对用户的问题产生影响。比起个人电脑,问题可以被更快的解决。还有一种可能发生的情况是在同一时间有许多另外的用户在同一时间使用资源。当作业足够小,且能在个人计算机上合理的运行时,以及当个人计算机的性能能够充分的运行程序来达到用户的满意时,个人计算机是最好的,。 1.4在下面举出的三个功能中,哪个功能在下列两种环境下,(a)手持装置(b)实时系统需要操作系统的支持?(a)批处理程序(b)虚拟存储器(c)分时 答:对于实时系统来说,操作系统需要以一种公平的方式支持虚拟存储器和分时系统。对于手持系统,操作系统需要提供虚拟存储器,但是不需要提供分时系统。批处理程序在两种环境中都是非必需的。 1.5描述对称多处理(SMP)和非对称多处理之间的区别。多处理系统的三个优点和一个缺点? 答:SMP意味着所以处理器都对等,而且I/O可以在任何处理器上运行。非对称多处理有一个主处理器控制系统,与剩下的处理器是随从关系。主处理器为从处理器安排工作,而且I/O也只在主处理器上运行。多处理器系统能比单处理器系统节省资金,这是因为他们能共享外设,大容量存储和电源供给。它们可以更快速的运行程序和增加可靠性。多处理器系统能比单处理器系统在软、硬件上也更复杂(增加计算量、规模经济、增加可靠性) 1.6集群系统与多道程序系统的区别是什么?两台机器属于一个集群来协作提供一个高可靠性的服务器的要求是什么? 答:集群系统是由多个计算机耦合成单一系统并分布于整个集群来完成计算任务。另一方面,多道程序系统可以被看做是一个有多个CPU组成的单一的物理实体。集群系统的耦合度比多道程序系统的要低。集群系统通过消息进行通信,而多道程序系统是通过共享的存储空间。为了两台处理器提供较高的可靠性服务,两台机器上的状态必须被复制,并且要持续的更新。当一台处理器出现故障时,另一台处理器能够接管故障处理的功能。 1.7试区分分布式系统(distribute system)的客户机-服务器(client-server)模型与对等系统(peer-to-peer)模型 答:客户机-服务器(client-server)模型可以由客户机和服务器的角色被区分。在这种模型下,客户机向服务器发出请求,然后服务器满足这种请求。对等系统(peer-to-peer)模

操作系统课后习题答案

1.什么是操作系统?其主要功能是什么? 操作系统是控制和管理计算机系统内各种硬件和软件资源,有效组织多道程序运行的系统软件(或程序集合),是用户和计算机直接的程序接口. 2.在某个计算机系统中,有一台输入机和一台打印机,现有两道程序投入运行,程序A、B 同时运行,A略早于B。A的运行轨迹为:计算50ms、打印100ms、再计算50ms、打印100ms,结束。B的运行轨迹为:计算50ms、输入80ms、再计算100ms,结束。试说明:(1)两道程序运行时,CPU是否空闲等待?若是,在那段时间段等待? (2)程序A、B是否有等待CPU的情况?若有,指出发生等待的时刻。 0 50 100 150 200 250 300 50 100 50 100 50 100 20 100 (1) cpu有空闲等待,在100ms~150ms的时候. (2) 程序A没有等待cpu,程序B发生等待的时间是180ms~200ms. 1.设公共汽车上,司机和售票员的活动如下: 司机的活动:启动车辆;正常行车;到站停车。 售票员的活动:关车门;售票;开车门。 在汽车不断的到站、停车、行驶过程中,用信号量和P、V操作实现这两个活动的同步关系。 semaphore s1,s2; s1=0;s2=0; cobegin 司机();售票员(); coend process 司机() { while(true) { P(s1) ; 启动车辆; 正常行车; 到站停车; V(s2); } } process 售票员() { while(true) { 关车门; V(s1);

售票; P(s2); 开车门; 上下乘客; } } 2.设有三个进程P、Q、R共享一个缓冲区,该缓冲区一次只能存放一个数据,P进程负责循环地从磁带机读入数据并放入缓冲区,Q进程负责循环地从缓冲区取出P进程放入的数据进行加工处理,并把结果放入缓冲区,R进程负责循环地从缓冲区读出Q进程放入的数据并在打印机上打印。请用信号量和P、V操作,写出能够正确执行的程序。 semaphore sp,sq,sr; int buf;sp=1;sq=0;sr=0; cobegin process P() { while(true) { 从磁带读入数据; P(sp); Buf=data; V(sq); } } process Q() { while(true) { P(sq); data=buf; 加工data; buf=data; V(sr); } } process R() { while(true) { P(sr); data=buf; V(sp); 打印数据; } }

操作系统概念第七版习题答案(中文版)完整版

1.1 在多道程序和分时环境中,多个用户同时共享一个系统,这种情况导致多种安全问题。a. 列出此类的问题b.在一个分时机器中,能否确保像在专用机器上一样的安全度?并解释之。 Answer:a.窃取或者复制某用户的程序或数据;没有合理的预算来使用资源(CPU,内存,磁盘空间,外围设备)b.应该不行,因为人类设计的任何保护机制都会不可避免的被另外的人所破译,而且很自信的认为程序本身的实现是正确的是一件困难的事。 1.2 资源的利用问题在各种各样的操作系统中出现。试例举在下列的环境中哪种资源必须被严格的管理。(a)大型电脑或迷你电脑系统(b)与服务器相联的工作站(c)手持电脑 Answer: (a)大型电脑或迷你电脑系统:内存和CPU 资源,外存,网络带宽(b)与服务器相联的工作站:内存和CPU 资源(c)手持电脑:功率消耗,内存资源 1.3 在什么情况下一个用户使用一个分时系统比使用一台个人计算机或单用户工作站更好? Answer:当另外使用分时系统的用户较少时,任务十分巨大,硬件速度很快,分时系统有意义。充分利用该系统可以对用户的问题产生影响。比起个人电脑,问题可以被更快的解决。还有一种可能发生的情况是在同一时间有许多另外的用户在同一时间使用资源。当作业足够小,且能在个人计算机上合理的运行时,以及当个人计算机的性能能够充分的运行程序来达到用户的满意时,个人计算机是最好的,。 1.4 在下面举出的三个功能中,哪个功能在下列两种环境下,(a)手持装置(b)实时系统需要操作系统的支持?(a)批处理程序(b)虚拟存储器(c)分时 Answer:对于实时系统来说,操作系统需要以一种公平的方式支持虚拟存储器和分时系统。对于手持系统,操作系统需要提供虚拟存储器,但是不需要提供分时系统。批处理程序在两种环境中都是非必需的。 1.5 描述对称多处理(SMP)和非对称多处理之间的区别。多处理系统的三个优点和一个缺点? Answer:SMP意味着所以处理器都对等,而且I/O 可以在任何处理器上运行。非对称多处理有一个主处理器控制系统,与剩下的处理器是随从关系。主处理器为从处理器安排工作,而且I/O 也只在主处理器上运行。多处理器系统能比单处理器系统节省资金,这是因为他们能共享外设,大容量存储和电源供给。它们可以更快速的运行程序和增加可靠性。多处理器系统能比单处理器系统在软、硬件上也更复杂(增加计算量、规模经济、增加可靠性) 1.6 集群系统与多道程序系统的区别是什么?两台机器属于一个集群来协作提供一个高可靠性的服务器的要求是什么? Answer:集群系统是由多个计算机耦合成单一系统并分布于整个集群来完成计算任务。另一方面,多道程序系统可以被看做是一个有多个CPU 组成的单一的物理实体。集群系统的耦合度比多道程序系统的要低。集群系统通过消息进行通信,而多道程序系统是通过共享的存储空间。为了两台处理器提供较高的可靠性服务,两台机器上的状态必须被复制,并且要持续的更新。当一台处理器出现故障时,另一台处理器能够接管故障处理的功能。

(完整版)操作系统课后题答案

2 . OS的作用可表现在哪几个方面? 答:(1)0S作为用户与计算机硬件系统之间的接口;(2)0S作为计算机系统资源的管理者;(3)0S实现了对计算机资源的抽象。 5 .何谓脱机I/O 和联机I/O ? 答:脱机I/O 是指事先将装有用户程序和数据的纸带或卡片装入纸带输入机或卡片机,在外围机的控制下,把纸带或卡片上的数据或程序输入到磁带上。该方式下的输入输出由外围 机控制完成,是在脱离主机的情况下进行的。而联机I/O方式是指程序和数据的输入输出 都是在主机的直接控制下进行的。 11 . OS有哪几大特征?其最基本的特征是什么? 答:并发性、共享性、虚拟性和异步性四个基本特征;最基本的特征是并发性。 20 .试描述什么是微内核OS。 答:(1)足够小的内核;(2)基于客户/服务器模式;(3)应用机制与策略分离原理;(4)采用面向对象技术。 25 ?何谓微内核技术?在微内核中通常提供了哪些功能? 答:把操作系统中更多的成分和功能放到更高的层次(即用户模式)中去运行,而留下一个尽 量小的内核,用它来完成操作系统最基本的核心功能,称这种技术为微内核技术。在微内核 中通常提供了进程(线程)管理、低级存储器管理、中断和陷入处理等功能。 第二章进程管理 2.画出下面四条语句的前趋图: S仁a : =x+y; S2=b : =z+1; S3=c : =a - b ; S4=w : =c+1; 7 ?试说明PCB的作用,为什么说PCB是进程存在的惟一标志? 答:PCB是进程实体的一部分,是操作系统中最重要的记录型数据结构。作用是使一个在 多道程序环境下不能独立运行的程序,成为一个能独立运行的基本单位,成为能与其它进程 并发执行的进程。OS是根据PCB对并发执行的进程进行控制和管理的。 11 .试说明进程在三个基本状态之间转换的典型原因。 答:(1)就绪状态T执行状态:进程分配到CPU资源;(2)执行状态T就绪状态:时间片用 完;(3)执行状态T阻塞状态:I/O请求;(4)阻塞状态T就绪状态:I/O完成. 19 ?为什么要在OS中引入线程? 答:在操作系统中引入线程,则是为了减少程序在并发执行时所付出的时空开销,使OS具

操作系统课后题答案

2.1 一类操作系统服务提供对用户很有用的函数,主要包括用户界面、程序执行、I/O操作、文件系统操作、通信、错误检测等。 另一类操作系统函数不是帮助用户而是确保系统本身高效运行,包括资源分配、统计、保护和安全等。 这两类服务的区别在于服务的对象不同,一类是针对用户,另一类是针对系统本身。 2.6 优点:采用同样的系统调用界面,可以使用户的程序代码用相同的方式被写入设备和文件,利于用户程序的开发。还利于设备驱动程序代码,可以支持规范定义的API。 缺点:系统调用为所需要的服务提供最小的系统接口来实现所需要的功能,由于设备和文件读写速度不同,若是同一接口的话可能会处理不过来。 2.9 策略决定做什么,机制决定如何做。他们两个的区分对于灵活性来说很重要。策略可能会随时间或位置而有所改变。在最坏的情况下,每次策略改变都可能需要底层机制的改变。系统更需要通用机制,这样策略的改变只需要重定义一些系统参数,而不需要改变机制,提高了系统灵活性。 3.1、短期调度:从准备执行的进程中选择进程,并为之分配CPU; 中期调度:在分时系统中使用,进程能从内存中移出,之后,进程能被重新调入内存,并从中断处继续执行,采用了交换的方案。 长期调度:从缓冲池中选择进程,并装入内存以准备执行。 它们的主要区别是它们执行的频率。短期调度必须频繁地为CPU选择新进程,而长期调度程序执行地并不频繁,只有当进程离开系统后,才可能需要调度长期调度程序。 3.4、当控制返回到父进程时,value值不变,A行将输出:PARENT:value=5。 4.1、对于顺序结构的程序来说,单线程要比多线程的功能好,比如(1)输入三角形的三边长,求三角形面积;(2)从键盘输入一个大写字母,将它改为小写字母输出。

操作系统课后题及答案

第一章 1 .设计现代OS 的主要目标是什么? 答:(1)有效性(2)方便性(3)可扩充性(4)开放性 2 .OS 的作用可表现在哪几个方面? 答:(1)OS作为用户与计算机硬件系统之间的接口 (2)OS 作为计算机系统资源的管理者 (3)OS 实现了对计算机资源的抽象 4 .试说明推动多道批处理系统形成和发展的主要动力是什么?答:主要动力来源于四个方面的社会需求与技术发展: (1)不断提高计算机资源的利用率; (2)方便用户; (3)器件的不断更新换代; (4)计算机体系结构的不断发展。 7 .实现分时系统的关键问题是什么?应如何解决?答:关键问题是当用户在自己的终端上键入命令时,系统应能及时接收并及时处理该命令,在用户能接受的时延内将结果返回给用户。 解决方法:针对及时接收问题,可以在系统中设置多路卡,使主机能同时接收用户从各个终端上输入的数据;为每个终端配置缓冲区,暂存用户键入的命令或数据。针对及时处理问题,应使所有的用户作业都直接进入内存,并且为每个作业分配一个时间片,允许作业只在自己的时间片内运行,这样在不长的时间内,能使每个作业都运行一次。 12 .试从交互性、及时性以及可靠性方面,将分时系统与实时系统进行比较。 答:( 1 )及时性:实时信息处理系统对实时性的要求与分时系统类似,都是以人所能接受的等待时间来确定;而实时控制系统的及时性,是以控制对象所要求的开始截止时间或完成截止时间来确定的,一般为秒级到毫秒级,甚至有的要低于100 微妙。 (2)交互性:实时信息处理系统具有交互性,但人与系统的交互仅限于访问系统中某些特定的专用服务程序。不像分时系统那样能向终端用户提供数据和资源共享等服务。 (3)可靠性:分时系统也要求系统可靠,但相比之下,实时系统则要求系统具有高度 的可靠性。因为任何差错都可能带来巨大的经济损失,甚至是灾难性后果,所以在实时系统中,往往都采取了多级容错措施保障系统的安全性及数据的安全性。 13 .OS 有哪几大特征?其最基本的特征是什么?答:并发性、共享性、虚拟性和异步性四个基本特征;最基本的特征是并发性。

操作系统课后习题答案

第一章操作系统引论 一、填空题 1~5 BCABA 6~8BCB 、填空题 处理机管理 计算机硬件 分时系统 单道批处理系统 、简答题 1. 什么叫多道程序?试述多道程序设计技术的基本思想 及特征。为什么对作业 进行多道批处理可以提高系统效率? 多道程序设计技术是指在计算机内存中同时存放几道相互独立的程序, 使它 们在管理程序控制下,相互穿插运行。 基本思想:在计算机的内存中同时存放多道相互独立的程序, 当某道程序因 某种原因不能继续运行下去时候,管理程序就将另一道程序投入运行,这样使几 道程序在系统内并行工作,可使中央处理机及外设尽量处于忙碌状态, 从而大大 提高计算机使用效率。 特征:多道性;无序性;调度性 在批处理系统中采用多道程序设计技术形成多道批处理系统, 多个作业成批送入 计算机,由作业调度程序自动选择作业运行,这样提高了系统效率。 2. 批处理系统、分时系统和实时系统各有什么特点?各适合应用于哪些方面? 批处 理系统得特征:资源利用率高;系统吞吐量大;平均周转时间长;无交 互能力。适用于那些需要较长时间才能完成的大作业。 分时系统的特征:多路性;独立性;及时性;交互性。适合进行各种事务处 理,并为进行软件开发提供了一个良好的环境。 实时系统的特征:多路性;独立性;实时性;可靠性;交互性。适合对随机发生 的外部事件能做出及时地响应和处理的系统, 如实时控制系统,实时信息处理系 统。1、 2、 存储器管理 设备管理 计算机软件 实时系统 批处理系统 多道批处理系统 文件管理

第二章进程管理 一、填空题 1~6 CBABBB 7 ① A ② C ③ B ④ D 8 ① D ② B 9 ~10 CA 11~15 CBBDB 16~18 DDC 20~21 BB 22 ① B ② D ③ F 25 B 26~30 BDACB 31~32 AD 二、填空题 1、动态性并发性 2、可用资源的数量等待使用资源的进程数 3、一次只允许一个进程使用的共享资源每个进程中访问临界资源的那段代码 4、执行态就绪态等待态 5、程序数据进程控制块进程控制块 &同步关系 7、等待 8、进程控制块 9、P V 11、同步互斥同步互斥 12、P V P V P V 13、封闭性 14、-(m-1)~1 15、② 16、动静 17、4 0 18、s-1<0 19、①③ 三、简答题 1.在操作系统中为什么要引入进程的概念?进程和程序的关系? 现代计算机系统中程序并发执行和资源共享的需要,使得系统的工作情况变得非常复杂,而程序作为机器指令集合,这一静态概念已经不能如实反映程序并发执行过程的动态性,因此,引入进程的概念来描述程序的动态执行过程。这对于我们理解、描述和设计操作系统具有重要意义。 进程和程序关系类似生活中的炒菜与菜谱。菜谱相同,而各人炒出来的菜的味道却差别很大。原因是菜谱基本上是一种静态描述,它不可能把所有执行的动态过程中,涉及的时空、环境等因素一一用指令描述清楚。 2.试从动态性、并发性和独立性上比较进程和程序。 动态性:进程的实质是进程实体的一次执行过程。动态性是进程的基本特征。而程序只是一组有序指令的集合,其本身不具有动态的含义,因而是静态的。 并发性:并发性是进程的重要特征,引入进程的目的也正是为了使其进程实体能和其他进程实体并发执行,而程序是不能并发执行的。 独立性:进程的独立性表现在进程实体是一个能独立运行、独立分配资源和独立接受调度的基本单位。而程序不能做为一个独立的单位参与运行。 3.何谓进程,进程由哪些部分组成? 进程是进程实体的运行过程,是系统进行资源分配和调度的一个独立单位进程由程序段,数据段,进程控制块三部分组成。

计算机操作系统课后习题答案第三章(第四版)

第三章处理机调度与死锁 1,高级调度与低级调度的主要任务是什么?为什么要引入中级调度? 【解】(1)高级调度主要任务是用于决定把外存上处于后备队列中的那些作业调入内存,并为它们创建进程,分配必要的资源,然后再将新创建的进程排在就绪队列上,准备执行。(2)低级调度主要任务是决定就绪队列中的哪个进程将获得处理机,然后由分派程序执行把处理机分配给该进程的操作。(3)引入中级调度的主要目的是为了提高内存的利用率和系统吞吐量。为此,应使那些暂时不能运行的进程不再占用宝贵的内存空间,而将它们调至外存上去等待,称此时的进程状态为就绪驻外存状态或挂起状态。当这些进程重又具备运行条件,且内存又稍有空闲时,由中级调度决定,将外存上的那些重又具备运行条件的就绪进程重新调入内存,并修改其状态为就绪状态,挂在就绪队列上,等待进程调度。 3、何谓作业、作业步和作业流? 【解】作业包含通常的程序和数据,还配有作业说明书。系统根据该说明书对程序的运行进行控制。批处理系统中是以作业为基本单位从外存调入内存。作业步是指每个作业运行期间都必须经过若干个相对独立相互关联的顺序加工的步骤。 作业流是指若干个作业进入系统后依次存放在外存上形成的输入作业流;在操作系统的控制下,逐个作业进程处理,于是形成了处理作业流。 4、在什么情冴下需要使用作业控制块JCB?其中包含了哪些内容? 【解】每当作业进入系统时,系统便为每个作业建立一个作业控制块JCB,根据作业类型将它插入到相应的后备队列中。 JCB 包含的内容通常有:1) 作业标识2)用户名称3)用户账户4)作业类型(CPU 繁忙型、I/O芳名型、批量型、终端型)5)作业状态6)调度信息(优先级、作业已运行)7)资源要求8)进入系统时间9) 开始处理时间10) 作业完成时间11) 作业退出时间12) 资源使用情况等 5.在作业调度中应如何确定接纳多少个作业和接纳哪些作业? 【解】作业调度每次接纳进入内存的作业数,取决于多道程序度。应将哪些作业从外存调入内存,取决于采用的调度算法。最简单的是先来服务调度算法,较常用的是短作业优先调度算法和基于作业优先级的调度算法。 7.试说明低级调度的主要功能。 【解】(1)保存处理机的现场信息(2)按某种算法选取进程(3)把处理机分配给进程。 8、在抢占调度方式中,抢占的原则是什么? 【解】剥夺原则有:(1)时间片原则各进程按时间片运行,当一个时间片用完后,便停止该进程的执行而重新进行调度。这种原则适用于分时系统、大多数实时系统,以及要求较高的批处理系统。(2)优先权原则通常是对一些重要的和紧急的作业赋予较高的优先权。当这种作业到达时,如果其优先权比正在执行进程的优先权高,便停止正在执行的进程,将处理机分配给优先权高的进程,使之执行。(3)短作业(进程)优先原则当新到达的作业(进程)比正在执行的作业(进程)明显地短时,将剥夺长作业(进程)的执行,将处理机分配给短作业(进程),使之优先执行。 9、选择调度方式和调度算法时,应遵循的准则是什么? 【解】应遵循的准则有(1)面向用户的准则:周转时间短,响应时间快,截止时间的保证,优先权准则。(2)面向系统的准则:系统吞吐量高,处理机利用率好,各类资源的平衡利用。 10、在批处理系统、分时系统和实时系统中,各采用哪几种进程(作业)调度算法? 【解】 批处理系统:FCFS算法、最小优先数优先算法、抢占式最小优先数优先算法 2 分时系统:可剥夺调度、轮转调度 实时系统:时间片轮转调度算法、非抢占优先权调度算法、基于时钟中断抢占的优先权调度算法、立即抢占的优先权调度。 11、何谓静态和动态优先权?确定静态优先权的依据是什么? 【解】静态优先权是在创建进程时确定的,且在进程的整个运行期间保持不变。动态优先权是指,在创建进程时所赋予的优先权,是可以随进程的推进或随其等待时间的增加而改变的,以便获得更好的调度性能。确定静态优先权的依据是:(1)进程类型,通常系统进程的优先权高于一般用户进程的优先权。(2)进程对资源的需要。(3)用户要求,用户进程的紧迫程度及用户所付费用的多少来确定优先权的。 12、试比较FCFS和SPF两种进程调度算法。 【解】FCFS算法按照作业提交或进程变为就绪状态的先后次序,分派CPU。当前作业或进程占有CPU,直到执行完或阻塞,才让出CPU。在作业或进程唤醒后,并不立即恢复执行,通常等到当前作业或进程让出CPU。FCFS比较有利于长作业,而不利于短作业;有利于CPU繁忙的作业,而不利于I/O繁忙的作业。SPF有利于短进程调度,是从就绪队列中选出一估计运行时间最短的进

(完整版)操作系统课后题答案

2.OS的作用可表现在哪几个方面? 答:(1)OS作为用户与计算机硬件系统之间的接口;(2)OS作为计算机系统资源的管理者; (3)OS实现了对计算机资源的抽象。 5.何谓脱机I/O和联机I/O? 答:脱机I/O 是指事先将装有用户程序和数据的纸带或卡片装入纸带输入机或卡片机,在外围机的控制下,把纸带或卡片上的数据或程序输入到磁带上。该方式下的输入输出由外围机控制完成,是在脱离主机的情况下进行的。而联机I/O方式是指程序和数据的输入输出都是在主机的直接控制下进行的。 11.OS有哪几大特征?其最基本的特征是什么? 答:并发性、共享性、虚拟性和异步性四个基本特征;最基本的特征是并发性。 20.试描述什么是微内核OS。 答:(1)足够小的内核;(2)基于客户/服务器模式;(3)应用机制与策略分离原理;(4)采用面向对象技术。 25.何谓微内核技术?在微内核中通常提供了哪些功能? 答:把操作系统中更多的成分和功能放到更高的层次(即用户模式)中去运行,而留下一个尽量小的内核,用它来完成操作系统最基本的核心功能,称这种技术为微内核技术。在微内核中通常提供了进程(线程)管理、低级存储器管理、中断和陷入处理等功能。 第二章进程管理 2. 画出下面四条语句的前趋图: S1=a:=x+y; S2=b:=z+1; S3=c:=a – b;S4=w:=c+1; 答:其前趋图为: 7.试说明PCB 的作用,为什么说PCB 是进程存在的惟一标志? 答:PCB 是进程实体的一部分,是操作系统中最重要的记录型数据结构。作用是使一个在多道程序环境下不能独立运行的程序,成为一个能独立运行的基本单位,成为能与其它进程并发执行的进程。OS是根据PCB对并发执行的进程进行控制和管理的。 11.试说明进程在三个基本状态之间转换的典型原因。 答:(1)就绪状态→执行状态:进程分配到CPU资源;(2)执行状态→就绪状态:时间片用完;(3)执行状态→阻塞状态:I/O请求;(4)阻塞状态→就绪状态:I/O完成. 19.为什么要在OS 中引入线程?

操作系统部分课后习题答案

第一章 1、设计现代OS的主要目标就是什么? 方便性,有效性,可扩充性与开放性。 2、OS的作用可表现在哪几个方面? (1)OS作为用户与计算机硬件系统之间的接口。(2)OS作为计算机系统资源的管理者。(3)OS实现了对计算机资源的抽象。 4、试说明推动多道批处理系统形成与发展的主要动力就是什么 主要动力来源于四个方面的社会需求与技术发展(1)不断提高计算机资源的利用率(2)方便用户(3)器件的不断更新换代(4)计算机体系结构的不断发展。7、实现分时系统的关键问题就是什么?应如何解决 关键问题就是当用户在自己的终端上键入命令时,系统应能及时接收并及时处理该命令。在用户能接受的时延内将结果返回给用户。解决方法:针对及时接收问题,可以在系统中设置多路卡,使主机能同时接收用户从各个终端上输入的数据,为每个终端配置缓冲区,暂存用户键入的命令或数据。针对及时处理问题,应使所有的用户作业都直接进入内存,并且为每个作业分配一个时间片,允许作业只在自己的时间片内运行。这样在不长的时间内,能使每个作业都运行一次。 12、试从交互性、及时性以及可靠性方面,将分时系统与实时系统进行比较。 (1)及时性。实时信息处理系统对实时性的要求与分时系统类似,都就是以人所能接受的等待时间来确定,而实时控制系统的及时性,就是以控制对象所要求的

开始截止时间或完成截止时间来确定的,一般为秒级到毫秒级,甚至有的要低于100微妙。(2)交互性。实时信息处理系统具有交互性,但人与系统的交互仅限于访问系统中某些特定的专用服务程序,不像分时系统那样能向终端用户提供数据与资源共享等服务。(3)可靠性。分时系统也要求系统可靠,但相比之下,实时系统则要求系统具有高度的可靠性。因为任何差错都可能带来巨大的经济损失,甚至就是灾难性后果,所以在实时系统中,往往都采取了多级容错措施保障系统的安全性及数据的安全性。 13、OS有哪几大特征?其最基本的特征就是什么? 并发性、共享性、虚拟性与异步性四个基本特征。最基本的特征就是并发性。 14、处理机管理有哪些主要功能?它们的主要任务就是什么? 处理机管理的主要功能就是:进程管理、进程同步、进程通信与处理机调度 (1)进程管理:为作业创建进程,撤销已结束进程,控制进程在运行过程中的状态转换(2)进程同步:为多个进程(含线程)的运行进行协调(3)进程通信:用来实现在相互合作的进程之间的信息交换(4)处理机调度:①作业调度:从后备队里按照一定的算法,选出若干个作业,为她们分配运行所需的资源,首选就是分配内存②进程调度:从进程的就绪队列中,按照一定算法选出一个进程把处理机分配给它,并设置运行现场,使进程投入执行。 15、内存管理有哪些主要功能?她们的主要任务就是什么 内存管理的主要功能有:内存分配、内存保护、地址映射与内存扩充。 内存分配:为每道程序分配内存。

计算机操作系统习题及答案

第3章处理机调度1)选择题 (1)在分时操作系统中,进程调度经常采用_D_ 算法。 A. 先来先服务 B. 最高优先权 C. 随机 D. 时间片轮转 (2)_B__ 优先权是在创建进程时确定的,确定之后在整个进程运行期间不再改变。 A. 作业 B. 静态 C. 动态 D. 资源 (3)__A___ 是作业存在的惟一标志。 A. 作业控制块 B. 作业名 C. 进程控制块 D. 进程名 (4)设有四个作业同时到达,每个作业的执行时间均为2小时,它们在一台处理器上按单道方式运行,则平均周转时间为_ B_ 。 A. l小时 B. 5小时 C. 2.5小时 D. 8小时 (5)现有3个同时到达的作业J1、J2和J3,它们的执行时间分别是T1、T2和T3,且T1<T2<T3。系统按单道方式运行且采用短作业优先算法,则平均周转时间是_C_ 。 A. T1+T2+T3 B. (T1+T2+T3)/3 C. (3T1+2T2+T3)/3 D. (T1+2T2+3T3)/3 (6)__D__ 是指从作业提交给系统到作业完成的时间间隔。 A. 运行时间 B. 响应时间 C. 等待时间 D. 周转时间 (7)下述作业调度算法中,_ C_调度算法与作业的估计运行时间有关。 A. 先来先服务 B. 多级队列 C. 短作业优先 D. 时间片轮转 2)填空题 (1)进程的调度方式有两种,一种是抢占(剥夺)式,另一种是非抢占(非剥夺)式。 (2)在_FCFS_ 调度算法中,按照进程进入就绪队列的先后次序来分配处理机。 (3)采用时间片轮转法时,时间片过大,就会使轮转法转化为FCFS_ 调度算法。 (4)一个作业可以分成若干顺序处理的加工步骤,每个加工步骤称为一个_作业步_ 。 (5)作业生存期共经历四个状态,它们是提交、后备、运行和完成。 (6)既考虑作业等待时间,又考虑作业执行时间的调度算法是_高响应比优先____ 。 3)解答题 (1)单道批处理系统中有4个作业,其有关情况如表3-9所示。在采用响应比高者优先调度算法时分别计算其平均周转时间T和平均带权周转时间W。(运行时间为小时,按十进制计算) 表3-9 作业的提交时间和运行时间

操作系统概念课后习题答案

1、1在多道程序与分时环境中,多个用户同时共享一个系统,返种情冴导致多种安全问题。a、列出此类的问题b、在一个分时机器中,能否确保像在与用机器上一样的安全度?并解释乀。 Answer:a、窃叏戒者复制某用户癿程序戒数据;没有合理癿预算来使用资源(CPU,内存,磁盘空闱,外围设备)b.应该丌行,因为人类设计癿仸何保护机制都会丌可避兊癿被另外癿人所破译,而丏径自信癿认为程序本身癿实现就是正确癿就是一件困难癿亊。 1、2资源的利用问题在各种各样的操作系统中出现。试例丼在下列的环境中哪种资源必须被严栺的管理。(a)大型电脑戒迷您电脑系统(b)不服务器相联的工作站(c)手持电脑 Answer: (a)大型电脑戒迷您电脑系统:内存呾CPU资源,外存,网络带宽(b)不服务器相联癿工作站:内存呾CPU资源(c)手持电脑:功率消耗,内存资源 1、3在什举情冴下一个用户使用一个分时系统比使用一台个人计算机戒单用户工作站更好? Answer:当另外使用分时系统癿用户较少时,仸务十分巨大,硬件速度径快,分时系统有意丿。充分利用该系统可以对用户癿问题产生影响。比起个人电脑,问题可以被更快癿解决。迓有一种可能収生癿情冴就是在同一时闱有许多另外癿用户在同一时闱使用资源。当作业足够小,丏能在个人计算机上合理癿运行时,以及当个人计算机癿性能能够充分癿运行程序来达到用户癿满意时,个人计算机就是最好癿,。 1、4在下面丼出的三个功能中,哪个功能在下列两种环境下,(a)手持装置(b)实

时系统需要操作系统的支持?(a)批处理程序(b)虚拟存储器(c)分时 Answer:对二实时系统来说,操作系统需要以一种公平癿方式支持虚拟存储器呾分时系统。对二手持系统,操作系统需要提供虚拟存储器,但就是丌需要提供分时系统。批处理程序在两种环境中都就是非必需癿。 1、5描述对称多处理(SMP)与非对称多处理乀间的区别。多处理系统的三个优点与一个缺点? Answer:SMP意味着所以处理器都对等,而丏I/O可以在仸何处理器上运行。非对称多处理有一个主处理器控制系统,不剩下癿处理器就是随从关系。主处理器为从处理器安排工作,而丏I/O也叧在主处理器上运行。多处理器系统能比单处理器系统节省资金,返就是因为她们能共享外设,大容量存储呾电源供给。它们可以更快速癿运行程序呾增加可靠性。多处理器系统能比单处理器系统在软、硬件上也更复杂(增加计算量、觃模经济、增加可靠性) 1、6集群系统不多道程序系统的区别就是什举?两台机器属二一个集群来协作提供一个高可靠性的服务器的要求就是什举? Answer:集群系统就是由多个计算机耦合成单一系统幵分布二整个集群来完成计算仸务。另一方面,多道程序系统可以被瞧做就是一个有多个CPU组成癿单一癿物理实体。集群系统癿耦合度比多道程序系统癿要低。集群系统通过消息迕行通信,而多道程序系统就是通过共享癿存储空闱。为了两台处理器提供较高癿可靠性服务,两台机器上癿状态必项被复制,幵丏要持续癿更新。当一台处理器出现敀障时,另一台处理器能够接管敀障处理癿功能。 1、7试区分分布式系统(distribute system)的客户机-服务器(client-server)模型不对等系统(peer-to-peer)模型

(完整word版)操作系统习题及参考答案.docx

CH4 应用题参考答案 1在一个请求分页虚拟存储管理系统中,一个程序运行的页面走向是: 1、2 、3 、4 、2 、1 、5 、6 、2 、1 、2 、3 、7 、 6 、3 、2 、1 、2 、 3、6 。 分别用 FIFO 、OPT 和 LRU 算法,对分配给程序 3 个页框、 4 个页框、 5 个页框和 6 个页框的情况下,分别求出缺页中断次数和缺页中断率。 答: 页框数FIFO LRU OPT 3161511 414108 51287 6977 只要把表中缺页中断次数除以20,便得到缺页中断率。 2 在一个请求分页虚拟存储管理系统中,一个作业共有 5 页,执行时其访问页面次序 为: ( 1 ) 1、4、3、1、2、5、1、4、2、1、4、5 ( 2 ) 3、2、1、4、4、5、5、3、4、3、2、1、5 若分配给该作业三个页框,分别采用 FIFO和 LRU 面替换算法,求出各自的缺页 中断次数和缺页中断率。 答:( 1 )采用 FIFO 为 9 次,9 / 12 = 75 %。采用 LRU 为 8 次,8 / 12 = 67 %。( 2)采用FIFO和LRU均为9次,9 / 13 = 69%。 3一个页式存储管理系统使用 FIFO 、OPT 和 LRU 页面替换算法,如果一个作业的页面走向为: ( l ) 2、3、2、l、5、2、4、5、3、2、5、2。 ( 2 ) 4、3、2、l、4、3、5、4、3、2、l、5。 ( 3 ) 1、2、3、4、1、2、5、l、2、3、4、5。

当分配给该作业的物理块数分别为 3 和 4 时,试计算访问过程中发生的缺页中断 次数和缺页中断率。 答: ( l )作业的物理块数为3块,使用 FIFO 为 9次, 9 / 12 = 75%。使用 LRU 为 7次, 7 / 12 = 58%。使用 OPT 为 6 次, 6 / 12 = = 50%。 作业的物理块数为4块,使用 FIFO 为 6次, 6 / 12 = 50%。使用 LRU 为 6次, 6 / 12 = 50%。使用 OPT 为 5 次, 5 /12 = 42 %。 ( 2 )作业的物理块数为3块,使用 FIFO 为 9次, 9 / 12 = 75%。使用 LRU 为 10 次, 10 / 12 = 83%。使用 OPT 为 7次, 7/12 = 58%。 作业的物理块数为 4块,使用 FIFO 为 10次, 10 / 12 = 83 %。使用LRU 为 8 次, 8/12 =66%。使用 OPT为 6 次, 6/12 =50%. 其中,出现了 Belady 现象,增加分给作业的内存块数,反使缺页中断率上升。 4、在可变分区存储管理下,按地址排列的内存空闲区为: 10K 、4K 、20K 、18K 、7K 、 9K 、12K 和 15K 。对于下列的连续存储区的请求: ( l ) 12K 、10K 、 9K , ( 2 ) 12K 、10K 、15K 、18K 试问:使用首次适应算法、最佳适应算法、最差适应算法和下次适应算法,哪个空闲区被使用? 答: ( 1)空闲分区如图所示。 答 分区号分区长 110K 24K 320K 418K 57K 69K 712K 815K 1)首次适应算法 12KB 选中分区 3 ,这时分区 3 还剩 8KB 。10KB 选中分区 1 ,恰好分配故应删去分区 1 。9KB 选中分区 4 ,这时分区 4 还剩 9KB 。

操作系统课后习题答案

5.1为什么对调度程序而言,区分CPU约束程序和I/O约束程序很重要? 答:在运行I/O操作前,I/0限制的程序只运行很少数量的计算机操作。而CPU约束程序一般来说不会使用很多的CPU。另一方面,CPU约束程序会利用整个时间片,且不做任何阻碍I/O操作的工作。因此,通过给I/O约束程序优先权和允许在CPU 约束程序之前运行,可以很好的利用计算机资源。 5.3考虑用于预测下一个CPU区间长度的指数平均公式。将下面的值赋给算法中的参数的含义是什么? A.a=0 且t0=100 ms B.a=0.99 且t0=10 ms 答:当a=0且t0=100ms时,公式总是会预测下一次的CPU区间为100毫秒。当a=0.99且t0=10毫秒时,进程将给予更高的重量以便能和过去相比。因此,调度算法几乎是无记忆的,且简单预测未来区间的长度为下一次的CPU执行的时间片。 5.4考虑下面一组进程,进程占用的CPU区间长度以毫秒来计算: 进程区间时间优先级 P110 3 P2 1 1 P3 2 3 P4 1 4 P5 5 2 假设在0时刻进程以P1、P2、P3、P4、P5的顺序到达。 a.画出4 个Gantt 图分别演示用FCFS、SJF、非抢占优先级(数字小代表优先级高)和RR(时间片=1)算法调度时进程的执行过程。 b.每个进程在每种调度算法下的周转时间是多少? c.每个进程在每种调度算法下的等待时间是多少? d.哪一种调度算法的平均等待时间最小? 答a.

FCFS: SJF: 非抢占优先级: RR: b.周转时间: c.等待时间: d.从上表中可以看出SJF的等待时间最小。

操作系统课后习题答案2

2. 进程和线程的管理 例题解析 例2.2.1 试说明进程和程序之间的区别和联系。 解进程和程序是既有区别又有联系的两个概念。 进程是动态的,程序是静态的。程序是一组有序的指令集合,是一个静态的概念;进程则是程序及其数据在计算机上的一次执行,是一个动态的集合。离开了程序,进程就失去了存在的意义,但同一程序在计算机上的每次运行将构成不同的进程。程序可看作是电影的胶片,进程可以看作电影院放电影的过程。 一个进程可以执行多个程序,如同一个电影院的一场电影可放映多部影片。 一个程序可被多个进程执行,如同多个影院同时利用一个电影的胶片放映同一部电影。 程序可以长期保存,进程只能存在于一段时间。程序是永久存在的,而进程有从被创建到消亡的生命周期。 例2.2.2 举例说明多道程序系统失去了封闭性和再现性。 解例如,有两个循环程序A和B,共享一个变量N。程序A每执行一次时,都要做N:=N+1操作;程序B则每执行一次时,都要执行print(N)操作,然后再将N的值置成“0”。程序A 和B在多道程序系统中同时运行。假定某时刻变量N的值为n,可能出现下述三种情况:N:=N+1 在print(N)和N:=0之前,此时得到N值变化过程为n+1、n+1、0; N:=N+1 在print(N)和N:=0之后,此时得到N值变化过程为n 、0 、1; N:=N+1 在print(N)之后和N:=0之前,此时得到N值变化过程为n、n+1、0。 所以,在A、B程序多次执行过程中,虽然其每次执行时的环境和初始条件都相同,但每次得到的结果却不一定相同。 例2.2.3 为什么将进程划分成执行、就绪和阻塞三个基本状态? 解根据多道程序执行的特点,进程的运行是走走停停的。因此进程的初级状态应该是执行和等待状态。处于执行状态的进程占用处理机执行程序,处于等待状态的进程正在等待处理机或者等待其它某种事件的发生。但是,当处理机空闲时,并不是所有处于等待状态的进程都能放到处理机上执行,有的进程即使分配给它处理机,它也不能执行,因为它的执行的条件没有得到满足。因此,将等待状态的进程分成两部分,一部分是放在处理机上就能立即执行,这就是就绪的进程;另一部分是仍需等某种事件发生的进程,即使放在处理机上也不能执行的进程,这就是阻塞进程。 例2.2.4 进程的挂起状态与进程的阻塞状态和就绪状态有何异同? 解相同点是它们都没有占用处理机。不同点是挂起状态的进程是处于一种静止状态,不会参与对资源的竞争,在解除挂起之前,进程不会有新的资源要求,也不会有占用处理机的机会;阻塞状态和就绪状态的进程均处于活动状态,它们都有获得处理机的机会,都可能有新的资源要求。 例2.2.5 两个并发进程P1和P2的程序代码在下面给出。其中,A、B、C、D和E均为原语。 P1: begin P2: begin A; D; B; E; C; end end 请给出P1、P2两个进程的所有可能执行的过程。

相关文档
最新文档