当前位置:文档之家› 操作系统_孙钟秀课后答案

操作系统_孙钟秀课后答案

操作系统_孙钟秀课后答案
操作系统_孙钟秀课后答案

CH1 应用题参考答案

1 有一台计算机,具有1MB 内存,操作系统占用200KB ,每个用户进程各占200KB 。

如果用户进程等待I/O 的时间为80%,若增加1MB 内存,则CPU 的利用率提高多少? 答:设每个进程等待I/O 的百分比为P ,则n 个进程同时等待I/O 的概率是P n ,当n 个

进程同时等待I/O 期间CPU 是空闲的,故CPU 的利用率为1-P n 。由题意可知,除去操作系统,内存还能容纳4个用户进程,由于每个用户进程等待I/O 的时间为80%,故:

CPU 利用率=1-(80%)4 =0.59

若再增加1MB 内存,系统中可同时运行9个用户进程,此时: CPU 利用率=1-(80%)9 =0.87 故增加1MB 内存使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 有等待时间段为180ms 至200ms 间(见

图中有色部分)。

处理器 输入机 打印机 程序A 程序B A 计算 B 计算 计算 计算 时间(ms) 0 50 100 150 180 200 250 300

打印 计算 打印 输入 计算 A 打印 A 打印 B 输入 A 计算 B 计算

3设有三道程序,按A、B、C优先次序运行,其内部计算和I/O操作时间由图给出。

A B C

C11=30ms C21=60ms C31=20ms

∣∣∣

I12=40ms I22=30ms I32=40ms

∣∣∣

C13=10ms C23=10ms C33=20ms 试画出按多道运行的时间关系图(忽略调度执行时间)。完成三道程序共花多少时间?比单道运行节省了多少时间?若处理器调度程序每次进行程序转换化时1ms,试画出各程序状态转换的时间关系图。

答:

1)忽略调度执行时间,多道运行方式(抢占式):

时间0 3 7 8 10 12 13 14 17 19 单位10 ms

I/O I12 I22 I32

CPU C11 C21 C13 C21 C31 C23 C33

抢占式共用去190ms,单道完成需要260ms,节省70ms。

忽略调度执行时间,多道运行方式(非抢占式):

时间0 3 7 9 10 12 13 14 16 18 单位10 ms

I/O I12 I22 I32

CPU C11 C21 C13 C31 C23 C33

非抢占式共用去180ms,单道完成需要260ms,节省80ms。

2)调度执行时间1ms,多道运行方式(抢占式):

时间0 303132 71727374 8485 105107 127 136137 147 177178 198 单位1ms

I/O I12 I22 I32

CPU C11 C21 C13 C21 C31 C23 C33

OS

调度执行时间1ms,多道运行方式(非抢占式):

时间0 303132 7172 939495 105106 124125127129 139 168169 189 单位1ms

I/O I12 I22 I32

CPU C11 C21 C21 C13 C31 C31 C23 C33

OS

4在单CPU和两台I/O(I1,I2)设备的多道程序设计环境下,同时投入三个作业运行。它

们的执行轨迹如下:

Job1:I2(30ms)、CPU(10ms)、I1(30ms)、CPU(10ms)、I2(20ms) Job2:I1(20ms)、CPU(20ms)、I2(40ms)

Job3:CPU(30ms)、I1(20ms)、CPU(10ms)、I1(10ms)

如果CPU 、I1和I2都能并行工作,优先级从高到低为Job1、Job2和Job3,优先级高的作业可以抢占优先级低的作业的CPU ,但不抢占I1和I2。试求:(1)每个作业从投入到完成分别所需的时间。(2) 从投入到完成CPU 的利用率。(3)I/O 设备利用率。 答:画出三个作业并行工作图如下(图中着色部分为作业等待时间):

(1) Job1从投入到运行完成需110ms ,Job2从投入到运行完成需90ms ,Job3从投入到

运行完成需110ms 。

(2) CPU 空闲时间段为:60ms 至70ms ,80ms 至90ms ,100ms 至110ms 。所以CPU 利

用率为(110-30)/110=72.7%。

(3) 设备I1空闲时间段为:20ms 至40ms ,90ms 至100ms ,故I1的利用率为

(110-30)/110=72.7%。设备I2空闲时间段为:30ms 至50ms ,故I2的利用率为(110-20)/110=81.8%。

5 在单CPU 和两台I/O(I1,I2)设备的多道程序设计环境下,同时投入三个作业运行。它

们的执行轨迹如下:

Job1:I2(30ms)、CPU(10ms)、I1(30ms)、CPU(10ms) Job2:I1(20ms)、CPU(20ms)、I2(40ms) Job3:CPU(30ms)、I1(20ms)

如果CPU 、I1和I2都能并行工作,优先级从高到低为Job1、Job2和Job3,优先级高的作业可以抢占优先级低的作业的CPU 。试求:(1)每个作业从投入到完成分别所需的时间。(2) 每个作业投入到完成CPU 的利用率。(3)I/O 设备利用率。 答:画出三个作业并行工作图如下(图中着色部分为作业等待时间):

CP

U I1 I2 Job1 Job2 Job3 时间(ms)

CPU CPU 0 10 20 30 40 50 60 70 80 90 100 110 CPU I1 I1 I1 CPU CPU I2 I2 CPU I1 CPU I2 Job1 Job2 Job3

Job2

Job1

Job2

Job3

Job1

Job3

Job2 Job1 Job1 Job3 Job3

(1) Job1从投入到运行完成需80ms ,Job2从投入到运行完成需90ms ,Job3从投入到运

行完成需90ms 。

(2) CPU 空闲时间段为:60ms 至70ms ,80ms 至90ms 。所以CPU 利用率为

(90-20)/90=77.78%。

(3) 设备I1空闲时间段为:20ms 至40ms ,故I1的利用率为(90-20)/90=77.78%。设备I2

空闲时间段为:30ms 至50ms ,故I2的利用率为(90-20)/90=77.78%。

6 若内存中有3道程序A 、B 、C ,它们按A 、B 、C 优先次序运行。各程序的计算轨

迹为:

A :计算(20)、I/O(30)、计算(10)

B :计算(40)、I/O(20)、计算(10)

C :计算(10)、I/O(30)、计算(20)

如果三道程序都使用相同设备进行I/O(即程序用串行方式使用设备,调度开销忽略不计)。试分别画出单道和多道运行的时间关系图。两种情况下,CPU 的平均利用率各为多少?

答:分别画出单道和多道运行的时间图 (1) 单道运行时间关系图

单道总运行时间为190ms 。CPU 利用率为(190-80)/190=57.9% (1) 单道运行时间关系图

CP U I1 I2 Job1 Job2 Job3 时间

(ms)

CPU

CPU 0 10 20 30 40 50 60 70 80 90

I1 I1 CPU

CPU

I2 I2 CPU

I1 CPU

Job1 Job2 Job3 Job2 Job1 Job2 Job3 Job1

Job2

Job1

Job3

0 20 40 50 60 80 100 120 140 160 180 190

I/O

CPU 时间 (ms)

A

A

A

B B

B C C

C

多道总运行时间为140ms 。CPU 利用率为(140-30)/140=78.6%

7 若内存中有3道程序A 、B 、C ,优先级从高到低为A 、B 和C ,它们单独运行时的

CPU 和I/O 占用时间为:

程序A : 60 20 30 10 40 20 20 (ms) I/O2 CPU I/O1 CPU I/O1 CPU I/O1 程序B : 30 40 70 30 30 (ms) I/O1 CPU I/O2 CPU I/O2 程序C : 40 60 30 70 (ms) CPU I/O1 CPU I/O2

如果三道程序同时并发执行,调度开销忽略不计,但优先级高的程序可中断优先级低的程序,优先级与I/O 设备无关。试画出多道运行的时间关系图,并问最早与最迟结束的程序是哪个?每道程序执行到结束分别用了多少时间?计算三个程序全部运算结束时的CPU 利用率?

答:画出三个作业并发执行的时间图:

(1) 最早结束的程序为B ,最后结束的程序为C 。

(2) 程序A 为250ms 。程序B 为220ms 。程序C 为310ms 。 (3) CPU 利用率为(310-120)/310=61.3%

I/O

CPU 时间

(ms)

A A

A B

C

0 20 40 50 60 80 100 120 140

B

B C C

B

CP U I01 I02 A B C 时间(ms) cpu 0 30 60 90 120 150 180 210 240 270 300 330 I01 cpu cpu I02 I02 cpu cpu I01 c

p u

A B B A B C B C A C I01 cpu I01

A C A A cpu cpu I01 cpu cpu I02 I02

B C B C A

8有两个程序,A程序按顺序使用:(CPU)10秒、(设备甲)5秒、(CPU)5秒、(设备乙)10秒、(CPU)10秒。B程序按顺序使用:(设备甲)10秒、(CPU)10秒、(设备乙)5秒、(CPU)5秒、(设备乙)10秒。在顺序环境下先执行A,再执行B,求出总的CPU利用率为多少?

答:程序A执行了40秒,其中CPU用了25秒。程序B执行了40秒,其中CPU用了15秒。两个程序共用了80秒,CPU化了40秒。故CPU利用率为40/80=50%。

9在某计算机系统中,时钟中断处理程序每次执行的时间为2ms(包括进程切换开销)。若时钟中断频率为60HZ,试问CPU用于时钟中断处理的时间比率为多少?

答:因时钟中断频率为60HZ,所以,时钟周期为:1/60s=50/3ms。在每个时钟周期中,CPU花2ms执行中断任务。所以,CPU用于时钟中断处理的时间比率为:2(50/3)=6/50=12%。

CH2 应用题参考答案

1下列指令中哪些只能在核心态运行?

(1)读时钟日期;(2)访管指令;(3)设时钟日期;(4)加载PSW;(5)置特殊

寄存器;(6) 改变存储器映象图;(7) 启动I/O指令。

答:(3),(4),(5),(6),(7)。

2假设有一种低级调度算法是让“最近使用处理器较少的进程”运行,试解释这种算法对“I/O繁重”型作业有利,但并不是永远不受理“处理器繁重”型作业。

答:因为I/O繁忙型作业忙于I/O,所以它CPU用得少,按调度策略能优先执行。同样原因一个进程等待CPU足够久时,由于它是“最近使用处理器较少的进程”,就能被优先调度,故不会饥饿。

3并发进程之间有什么样的相互制约关系?下列日常生活中的活动是属哪种制约关系:(1)踢足球,(2)吃自助餐,(3)图书馆借书,(4)电视机生产流水线工序。

答:并发进程之间的基本相互制约关系有互斥和同步两种。其中(1)、(3)为互斥问题。(2)、(4)为同步问题。

4在按动态优先数调度进程的系统中,每个进程的优先数需定时重新计算。在处理器不断地在进程之间交替的情况下,重新计算进程优先数的时间从何而来?

答:许多操作系统重新计算进程的优先数在时钟中断处理例程中进行,由于中断是随机的,碰到哪个进程,就插入哪个进程中运行处理程序,并把处理时间记在这个进程的账上。

5若后备作业队列中等待运行的同时有三个作业J1、J2、J3,已知它们各自的运行时间为a、b、c,且满足a

答:采用短作业优先算法调度时,三个作业的总周转时间为:

T1=a+(a+b)+(a+b+c)=3a+2b+c ①

若不按短作业优先算法调度,不失一般性,设调度次序为:J2、J1、J3。则三个作业的总周转时间为:

T2=b+(b+a)+(b+a+c)=3b+2a+c ②

令②-①式得到:

T2-T1=b-a>0

可见,采用短作业优先算法调度才能获得最小平均作业周转时间。

6若有一组作业J1,…,Jn,其执行时间依次为S1,…,Sn。如果这些作业同时到达系统,并在一台单CPU处理器上按单道方式执行。试找出一种作业调度算法,使得平均作业周转时间最短。

答:首先,对n个作业按执行时间从小到大重新进行排序,则对n个作业:J1’,…,J n’,它们的运行时间满足:S1’≤S2’≤…≤S(n-1)’≤S n’。那么有:

T=[S1’+( S1’+S2’)+ (S1’ + S2’+ S3’)+…+(S1’ + S2’+ S3’+…+ S n’)]/n

=[n×S1’+( n-1)×S2’+ (n-3)×S3’]+…+ S n’]]/n

=(S1’ + S2’+ S3’+…+ S n’)-[0×S1’+1×S2 ’+2×S3’+…+(n-1) S n’]/n 由于任何调度方式下,S1’ + S2’+ S3’+…+ S n’为一个确定的数,而当S1’≤S2’≤…≤S(n-1)’≤S n’时才有:0×S1’+1×S2 ’+2×S3’+…+(n-1) S n’的值最大,也就是说,此时T值最小。所以,按短作业优先调度算法调度时,使得平均作业周转时间最短。

7假定执行表中所列作业,作业号即为到达顺序,依次在时刻0按次序1、2、3、4、5进入单处理器系统。

1)分别用先来先服务调度算法、时间片轮转算法、短作业优先算法及非强占优先权调度算法算出各作业的执行先后次序(注意优先权高的数值小);

2)计算每种情况下作业的平均周转时间和平均带权周转时间。

作业号执行时间优先权

1 2 3 4 5 10

1

2

1

5

3

1

3

4

2

答:

(1)采用FCFS算法调度作业,运作情况:

执行次序执行时间等待时间开始时间完成时间周转时间带权周转时间

1 10 0 0 10 10 1

2 1 10 10 11 11 11

3 2 11 11 13 13 6.5

4 1 13 13 14 14 14

5 5 14 14 19 19 3.8

作业平均周转时间T=(10+11+13+14+19)/5=13.4

作业平均带权周转时间W=(1+11+6.5+14+3.8)/5=7.26

(2)采用RR算法调度作业,若令时间片长=1,各作业执行情况为:1、2、3、4、5、

1、3、5、1、5、1、5、1、5、1、1、1、1、1。

作业执行时间提交时间完成时间周转时间带权周转时间

1 10 0 19 19 1.9

2 1 0 2 2 2

3 2 0 7 7 3.5

4 1 0 4 4 4

5 5 0 14 14 2.8

作业平均周转时间T=(19+2+7+4+14)/5=9.2

作业平均带权周转时间W=(1.9+2+3.5+4+2.8)/5=2.84

(3)采用SJF算法调度作业,运作情况:

执行次序执行时间等待时间开始时间完成时间周转时间带权周转时间

2 1 0 0 1 1 1

4 1 1 1 2 2 2

3 2 2 2

4 4 2

5 5 4 4 9 9 1.8

1 10 9 9 19 19 1.9

作业平均周转时间T=(1+2+4+9+19)/5=7

作业平均带权周转时间W=(1+2+2+1.8+1.9)/5=1.74

(4)采用非剥夺优先权算法调度作业,运作情况:

执行次序优先数执行时间等待时间周转时间带权周转时间

2 1 1 0 1 1

5 2 5 1

6 1.2

1 3 10 6 16 1.6

3 3 2 16 18 9

4 4 1 18 19 19

作业平均周转时间T=(1+6+16+18+19)/5=12

作业平均带权周转时间W=(1+1.2+1.6+9+19)/5=6.36

8对某系统进行监测后表明平均每个进程在I/O阻塞之前的运行时间为T。一次进程切换的系统开销时间为S。若采用时间片长度为Q的时向片轮转法,对下列各种情况算出CPU利用率。

1)Q=∞2)Q>T 3)S<Q<T 4=Q=S 5=Q接近于0

答:

1)Q=∞CPU利用率=T/(T+S)

2)Q>T CPU利用率=T/(T+S)

3)T>Q>S CPU利用率=Q/(Q+S)

4) Q=S CPU利用率=50%

5) Q→0 CPU利用率→0

9有5个待运行的作业,各自预计运行时间分别是:9、6、3、5和x,采用哪种运行次序使得平均响应时间最短?

答:按照最短作业优先的算法可以使平均响应时间最短。X取值不定,按照以下情况讨论:

1)x≤3 次序为:x,3,5,6,9

2)3

3)5

4)6

5)9

10有5个批处理作业A到E均已到达计算中心,其运行时间分别2、4、6、8和10分钟;各自的优先级分别被规定为1、2、3、4和5,这里5为最高级。对于1)时间片轮转算法、2)优先数法、3)短作业优先算法、4)先来先服务调度算法(按到达次序C、D、B、E、A),在忽略进程切换时间的前提下,计算出平均作业周转时间。(对1)每个作业获得相同的2分钟长的时间片;对2)到4)采用单道运行,直到结束。)

答:

(1)FCFS调度算法

执行次序执行时间等待时间周转时间带权周转时间

(2)优先级调度算法

执行次序执行时间等待时间周转时间带权周转时间

E 10 0 10 1

D 8 10 18 2.25

C 6 18 24 4

B 4 24 28 7

A 2 28 30 15

作业平均周转时间T=(10+18+24+28+30)/5=22

作业平均带权周转时间W=(1+2.25+4+7+15)/5=5.85

(3)时间片轮转法

按次序A B C D E B C D EC D E D E E轮转执行。

作业执行时间等待时间周转时间带权周转时间

A 2 0 2 1

B 4 8 12 3

C 6 14 20 3.33

D 8 18 26 3.25

E 10 20 30 3

作业平均周转时间T=(2+12+20+26+30)/5=18

作业平均带权周转时间W=(1+3+3.33+3.25+3)/5=2.71

(4)SJF调度算法

作业执行时间等待时间周转时间带权周转时间

A 2 0 2 1

B 4 2 6 1.5

C 6 6 12 2

D 8 12 20 2.5

E 10 20 30 3

作业平均周转时间T=(2+6+12+20+30)/5=14

作业平均带权周转时间W=(1+1.5+2+2.5+3)/5=2

11有5个批处理作业A到E均已到达计算中心,其运行时间分别10、6、2、4和8分钟;各自的优先级分别被规定为3、5、2、1和4,这里5为最高级。若不考虑系统切换开销,计算出平均作业周转时间。(1)FCFS(按A、B、C、D、E);(2)优先级调度算法,(3)时间片轮转法(每个作业获得相同的2分钟长的时间片)。

答:

(1)FCFS调度算法

执行次序执行时间等待时间周转时间带权周转时间

A 10 0 10 1

B 6 10 16 2.66

C 2 16 18 9

D 4 18 22 5.5

E 8 22 30 3.75

作业平均周转时间T=(10+16+18+22+30)/5=19.2

作业平均带权周转时间W=(1+2.66+9+5.5+3.75)/5=4.38

(2)优先级调度算法

执行次序执行时间等待时间周转时间带权周转时间

B 6 0 6 1

E 8 6 14 1.75

A 10 14 24 2.4

C 2 24 26 13

D 4 26 30 7.5

作业平均周转时间T=(6+14+24+26+30)/5=20

作业平均带权周转时间W=(1+1.75+2.4+13+7.5)/5=5.13

(3)时间片轮转法

按次序A B C D E A B D E A B E A E A轮转执行。

作业执行时间等待时间周转时间带权周转时间

A 10 20 30 3

B 6 16 22 3.66

C 2 4 6 3

D 4 12 16 4

E 8 20 28 3.5

作业平均周转时间T=(30+22+6+16+28)/5=20.4

作业平均带权周转时间W=(3+3.66+3+4+3.5)/5=3.43

12(1)假定一个处理器正在执行两道作业,一道以计算为主,另一道以输入输出为主,

你将怎样赋予它们占有处理器的优先级?为什么?

(2)假定一个处理器正在执行三道作业,一道以计算为主,第二道以输入输出为主,

第三道为计算与输入输出均匀。应该如何赋予它们占有处理器的优先级使得系统效率较高?

答:处理器调度算法会考虑以下因素:作业响应时间要求;让CPU尽量和外围设备并行工作;限制一个计算进程长时间霸占处理器。因而,(1)I/O为主作业优先级高。(2) 输入输出为主作业优先级最高,输入输出均匀的作业其次,而计算为主作业的优先级最低。

13请你设计一种先进的计算机体系结构,它使用硬件而不是中断来完成进程切换,则CPU需要哪些信息? 请描述用硬件完成进程切换的工作过程。

答:该计算机有一个专用硬件寄存器,它始终存放指向当前运行进程的PCB的指针。当系统中发生了一个事件,如I/O结束事件,CPU便可把运行进程的上下文保存到专用硬件寄存器指针指向的PCB中保护起来,然后,CPU转向中断向量表,找到设备中断处理程序入口,让专用硬件寄存器指针指向(设备)中断服务例程,于是,便可启动中断服务例程工作。

14单道批处理系统中,下列三个作业采用先来先服务调度算法和最高响应比优先算法进行调度,哪一种算法性能较好?请完成下表:

作业提交时间运行时间开始

时间

完成

时间

周转

时间

带权周

转时间

1 2 3

10∶00

10∶10

10∶25

2∶00

1∶00

0∶25 平均作业周转时间=

平均作业带权周转时间W=

答:

FIFO

作业提交时间运行时间开始

时间

完成

时间

周转

时间

带权周

转时间

1 2 3 10∶00

10∶10

10∶25

2∶00

1∶00

0∶25

10:00

12:00

13:00

12:00

13:00

13:25

2

2:50

3

120/120

145/60

180/25

平均作业周转时间=2.61

平均作业带权周转时间W=3.54 HRRF

作业提交时间运行时间开始

时间

完成

时间

周转

时间

带权周

转时间

1 2 3 10∶00

10∶10

10∶25

2∶00

1∶00

0∶25

10:00

12:25

12:00

12:00

13:25

12:25

2

3:15

2

120/120

195/60

120/25

平均作业周转时间=2.41

平均作业带权周转时间W=3.02

可见HRRF比FIFO要好。

15若有如表所示四个作业进入系统,分别计算在FCFS、SJF和HRRF算法下的平均周转时间与带权平均周转时间。(时间以十进制表示)

答:

作业提交时间(时) 估计运行时间(小时) 开始执行时间(时)

1 8.00 2.00 8.00

2 8.50 0.50 10.30

3 9.00 0.10 10.00

4 9.50 0.20 10.10

FCFS SJF HRRF

作业开始完成周转开始完成周转开始完成周转时间时间时间时间时间时间时间时间时间

1 8.00 10.00 2.00 8.00 10.00 2.00 8.00 10.00 2.00

2 10.00 10.50 2.00 10.30 10.80 2.30 10.10 10.60 2.10

3 10.50 10.60 1.60 10.00 10.10 1.10 10.00 10.10 1.10

4 10.60 10.80 1.30 10.10 10.30 0.80 10.60 10.80 1.30

平均周T=1.725 T=1.55 T=1.625

转时间=

带权平均W=6.875 W=5.15 W=5.675

周转时间=

16Kleinrock提出一种动态优先权算法:进程在就绪队列等待时,其优先权以速率α变化;当进程在处理器上运行,时其优先权以速率β变化。给参数α、β赋以不同值可得到不同算法。(1)若α>β>0是什么算法?(2) 若α<β<0是什么算法

答:

(1)是先进先出算法。因为在就绪队列中的进程比在CPU上运行的进程

的优先数提高得快,故进程切换时,先进入就绪队列的进程优先权

就越高。

(2)是后进先出算法。因为在就绪队列中的进程比在CPU上运行的进程

的优先权下降得快,故后进入就绪队列的进程此先进入的进程的优

先权高。

1717 有一个四道作业的操作系统,若在一段时间内先后到达6个作业,它们的提交和估计运行时间由下表给出:

作业提交时间估计运行时间(分钟)

1 8:00 60

2 8:20 35

3 8:25 20

4 8:30 25

5 8:35 5

6 8:40 10

系统采用SJF调度算法,作业被调度进入系统后中途不会退出,但作业运行时可被更短作业抢占。(1)分别给出6个作业的执行时间序列、即开始执行时间、作业完成时间、作业周转时间。(2)计算平均作业周转时间。

答:

执行次序提交时间执行时间开始时间完成时间周转时间

J1 8:00 60 8:00 9:00 60

J5 8:35 5 9:00 9:05 30

J6 8:40 10 9:05 9:15 35

J3 8:25 20 9:15 9:35 70

J4 8:30 25 9:35 10:00 90

J2 8:20 35 10:00 10:35 135

作业平均周转时间T=(60+30+35+70+90+135)/6=70

注意,J1被调度运行后,直到它执行结束,才会引出作业调度程序工作。所

以,J2至J6虽在J1执行期间进入,但未被调度,均在等待。当J1撤离后,作业调度程序工作,按SJF 算法,显然有执行次序:J5、J6、J3、J4、和J2。

18 有一个具有两道作业的批处理系统,作业调度采用短作业优先的调度算法,进程

调度采用以优先数为基础的抢占式调度算法,在下表所示的作业序列,作业优先数即为进程优先数,优先数越小优先级越高。

(1)列出所有作业进入内存时间及结束时间。 (2)计算平均周转时间。 答:

每个作业运行将经过两个阶段:作业调度(SJF 算法)和进程调度(优先数抢占式)。另外,批处理最多容纳2道作业,更多的作业将在后备队列等待。

CPU

(1) 10:00,作业A 到达并投入运行。

(2) 10:20,作业B 到达且优先权高于作业A ,故作业B 投入运行而作业A 在就绪队

列等待。

(3) 10:30,作业C 到达,因内存中已有两道作业,故作业C 进入作业后备队列等待。 (4) 10:50,作业B 运行结束,作业D 到达,按SJF 短作业优先算法,作业D 被装入

内存进入就绪队列。而由于作业A 的优先级高于作业D ,故作业A 投入运行。 (5) 11:10,作业A 运行结束,作业C 被调入内存,且作业C 的优先级高于作业D ,

故作业C 投入运行。

(6) 12:00,作业C 运行结束,作业D 投入运行。 (7) 12:20,作业D 运行结束。

作业名 到达时间 估计运行时间 优先数

A 10:00 40分 5

B 10:20 30分 3

C 10:30 50分 4

D 10:50 20分 6 进程就绪队列

作业后备队列 时间(分钟) 10:00 10:20 10:30 10:50 11:10 12:00 12:20 A B A C D

A D D C 作业 进入内存时间 运行结束时间 A 10:00 11:10

B 10:20 10;50

各作业周转时间为:作业A 70,作业B 30,作业C 90,作业D 90。平均作业周转时间为70分钟。

19某多道程序设计系统供用户使用的主存为100K,磁带机2台,打印机1台。采用可变分区内存管理,采用静态方式分配外围设备,忽略用户作业I/O时间。现有作业序列如下:

作业号进入输入井时间运行时间主存需求量磁带需求打印机需求

1 8:00 25分钟15K 1 1

2 8:20 10分钟30K 0 1

3 8:20 20分钟60K 1 0

4 8:30 20分钟20K 1 0

5 8:35 15分钟10K 1 1

作业调度采用FCFS策略,优先分配主存低地址区且不准移动已在主存的作业,在主存中的各作业平分CPU时间。现求:(1)作业被调度的先后次序?(2)全部作业运行结束的时间?(3)作业平均周转时间为多少?(4)最大作业周转时间为多少?

答:(1)作业调度选择的作业次序为:作业1、作业3、作业4、作业2和作业5。

(2)全部作业运行结束的时间9:30。

(3)周转时间:作业1为30分钟、作业2为55分钟、作业3为40分钟、作业4为

40分钟和作业5为55分钟。

(4)平均作业周转时间=44分钟。

(5) )最大作业周转时间为55分钟。

20某多道程序设计系统采用可变分区内存管理,供用户使用的主存为200K,磁带机5台。采用静态方式分配外围设备,且不能移动在主存中的作业,忽略用户作业I/O时间。现有作业序列如下:

作业号进入输入井时间运行时间主存需求量磁带需求

A 8:30 40分钟30K 3

B 8:50 25分钟120K 1

C 9:00 35分钟100K 2

D 9:05 20分钟20K 3

E 9:10 10分钟60K 1

现求:(1)FIFO算法选中作业执行的次序及作业平均周转时间?(2)SJF算法选中作业执行的次序及作业平均周转时间?

答:

(1) FIFO算法选中作业执行的次序为:A、B、D、C和E。作业平均周转时间为63分钟。

(2) SJF算法选中作业执行的次序为:A、B、D、E和C。作业平均周转时间为58分钟。

CH3 应用题参考答案

1有三个并发进程:R负责从输入设备读入信息块,M负责对信息块加工处理;P负责打印输出信息块。今提供;

1)一个缓冲区,可放置K个信息块;

2)二个缓冲区,每个可放置K个信息块;

试用信号量和P、V操作写出三个进程正确工作的流程。

答:

1)var B : array[0,k-1] of item ;

sread : semaphore := k ;

smanage : semaphore := 0 ;

swrite : semaphore := 0;

rptr : integer := 0 ;

mptr : integer := 0 ;

wptr : integer := 0 ;

x : item

cobegin

process reader ;

begin

L1: read a message into x ; P(sread) ;

B[rptr]:= x ;

rptr := ( rptr+1) mod k;

V(smanage) ;

goto L1 ;

end ; process manager;

begin

L2: P(smanage) ;

x := B[mptr] ;

mptr :=(mptr+1) mod k;

manage the message in x ;

B[mptr] := x;

V(swrite) ;

goto L2;

end ;

process writer ;

begin

L3: P(swrite) ;

x := B[wptr] ;

wptr :=(wptr +1) mod k;

V(sread) ;

Print the message in x ;

goto L3 ;

end ;

coend

2)var A, B : array [0,k-1] of item ;

sput1 : semaphore := k ;

sput2 : semaphore := k ;

sget1 : semaphore := 0 ;

sget2 : semaphore := 0 ;

put1 : integer := 0 ;

put2 : integer := 0 ;

get1 : integer := 0 ;

get2 : integer := 0 ;

cobegin

process reader ;

begin

L1: read a message into x ; P(sput1) ;

A[put1] := x ; process manager ;

begin

L2: P(sget1) ;

x :=A[get1];

get1 :=(get1+1) mod k;

process writer ;

begin

L3 : P(sget2) ;

x :=B[get2] ;

get2 :=(get2+1) mod k;

put1 := (put1+1) mod k ; V(sget1) ;

Goto L1 ;

end ;

V(sput1) ;

Manage the message into x;

P(sput2) ;

B[put2] := x ;

put2 := (put2+1) mod k ;

V(sget2) ;

Goto L2 ;

end ;

V(sput2) ;

Print the message in x ;

Goto L3 ;

end ;

coend

2设有n个进程共享一个互斥段,如果:

(1)每次只允许一个进程进入互斥段;

(2)每次最多允许m个进程(m≤n)同时进入互斥段。

试问:所采用的信号量初值是否相同?信号量值的变化范围如何?

答:所采用的互斥信号量初值不同。

1)互斥信号量初值为1,变化范围为[-n+1 ,1]。

当没有进程进入互斥段时,信号量值为1;当有1个进程进入互斥段但没有进程等待进入互斥段时,信号量值为0;当有1个进程进入互斥段且有一个进程等待进入互斥段时,信号量值为-1;最多可能有n-1个进程等待进入互斥段,故此时信号量的值应为-(n-1)也就是-n+1。

2)互斥信号量初值为m,变化范围为[-n+m ,m]。

当没有进程进入互斥段时,信号量值为m;当有1个进程进入互斥段但没有进程等待进入互斥段时,信号量值为m-1;当有m个进程进入互斥段且没有一个进程等待进入互斥段时,信号量值为0;当有m个进程进入互斥段且有一个进程等待进入互斥段时,信号量值为-1;最多可能有n-m个进程等待进入互斥段,故此时信号量的值应为-(n-m)也就是-n+m。

3有两个优先级相同的进程P1和P2,各自执行的操作如下,信号量S1和S2初值均为0。试问P1、P2并发执行后,x、y、z的值各为多少?

P1:P2:

begin begin

y:=1; x:=1;

y:=y+3; x:=x+5;

V(S1); P(S1);

z:=y+1; x:=x+y;

P(S2); V(S2);

y:=z+y z:=z+x;

end. end.

答:现对进程语句进行编号,以方便描述。

P1:P2:

begin begin

y:=1; ①x:=1; ⑤

y:=y+3; ②x:=x+5; ⑥

V(S1); P(S1);

z:=y+1; ③x:=x+y; ⑦

P(S2); V(S2);

y:=z+y ④z:=z+x; ⑧

end. end.

①、②、⑤和⑥是不相交语句,可以任何次序交错执行,而结果是唯一的。接着无论系

统如何调度进程并发执行,当执行到语句⑦时,可以得到x=10,y=4。按Bernstein条件,语句③的执行结果不受语句⑦的影响,故语句③执行后得到z=5。最后,语句④和⑧并发执行,最后结果为:

语句④先执行:x=10,y=9,z=15。

语句⑧先执行:x=10,y=19,z=15。

4有一阅览室,读者进入时必须先在一张登记表上登记,该表为每一座位列出一个表目,包括座号、姓名,读者离开时要注销登记信息;假如阅览室共有100个座位。试用:1)信号量和P、V操作;2)管程,来实现用户进程的同步算法。

答:1)使用信号量和P、V操作:

var name: array[1..100] of A;

A=record

number:integer;

name:string;

end

for i:=1 to 100 do {A[i].number:=i; A[i].name:=null;}

mutex,seatcount:semaphore;

i:integer;mutex:=1;seatcount:=100;

cobegin

{

process readeri(var readername:string)(i=1,2,…)

{

P(seatcount);

P(mutex);

for i:=1 to 100 do i++

if A[i].name=null then A[i].name:=readername;

reader get the seat number =i; /*A[i].number

V(mutex)

进入阅览室,座位号i,座下读书;

P(mutex);

A[i] name:=null;

V(mutex);

V(seatcount);

离开阅览室;

}

}

coend.

5在一个盒子里,混装了数量相等的黑白围棋子。现在用自动分拣系统把黑子、白子分开,设分拣系统有二个进程P1和P2,其中P1拣白子;P2拣黑子。规定每个进程每次拣一子;当一个进程在拣时,不允许另一个进程去拣;当一个进程拣了一子时,必须让另一个进程去拣。

试写出两进程P1和P2能并发正确执行的程序。

答:实质上是两个进程的同步问题,设信号量S1和S2分别表示可拣白子和黑子,不失一般性,若令先拣白子。

var S1,S2:semaphore;

S1:=1;S2:=0;

cobegin

{

process P1

begin

repeat

P(S1);

拣白子

V(S2);

until false;

end

process P2

begin

repeat

P(S2);

拣黑子

V(S1);

until false;

end

}

coend.

6设公共汽车上,司机和售票员的活动分别如下:

司机的活动:启动车辆:正常行车;到站停车。

售票员的活动:关车门;售票;开车门。

在汽车不断地到站、停车、行驶过程中,这两个活动有什么同步关系?用信号量和P、V操作实现它们的同步。

答:在汽车行驶过程中,司机活动与售票员活动之间的同步关系为:售票员关车门后,向司机发开车信号,司机接到开车信号后启动车辆,在汽车正常行驶过程中售票员售票,到站时司机停车,售票员在车停后开门让乘客上下车。因此,司机启动车辆的动作必须与售票员关车门的动作取得同步;售票员开车门的动作也必须与司机停车取得同步。

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

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

第一章 作者:佚名来源:网络 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.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为使虚存系统有效地发挥其预期的作用,所运行的程序应具有的特性是()。正确答案:该程序应具有较好的局部性(Locality) 3提高内存利用率主要是通过内存分配功能实现的,内存分配的基本任务是为每道程序()。使每道程序能在不受干扰的环境下运行,主要是通过()功能实现的。Ⅰ.分配内存;Ⅱ.内存保护;Ⅲ.地址映射;Ⅳ.对换;Ⅴ.内存扩充;Ⅵ.逻辑地址到物理地址的变换;Ⅶ.内存到外存间交换;Ⅷ.允许用户程序的地址空间大于内存空间。 正确答案:Ⅰ;Ⅱ 4适合多道程序运行的存储管理中,存储保护是 正确答案:为了防止各道作业相互干扰 5下面哪种内存管理方法有利于程序的动态链接()? 正确答案:分段存储管理 6在请求分页系统的页表增加了若干项,其中状态位供()参考。 正确答案:程序访问 7从下面关于请求分段存储管理的叙述中,选出一条正确的叙述()。 正确答案:分段的尺寸受内存空间的限制,但作业总的尺寸不受内存空间的限制

8虚拟存储器的特征是基于()。 正确答案:局部性原理 9实现虚拟存储器最关键的技术是()。 正确答案:请求调页(段) 10“抖动”现象的发生是由()引起的。 正确答案:置换算法选择不当 11 在请求分页系统的页表增加了若干项,其中修改位供()参考。 正确答案:换出页面 12 虚拟存储器是正确答案:程序访问比内存更大的地址空间 13测得某个请求调页的计算机系统部分状态数据为:CPU利用率20%,用于对换空间的硬盘的利用率97.7%,其他设备的利用率5%。由此断定系统出现异常。此种情况下()能提高CPU的利用率。 正确答案:减少运行的进程数 14在请求调页系统中,若逻辑地址中的页号超过页表控制寄存器中的页表长度,则会引起()。 正确答案:越界中断 15 测得某个请求调页的计算机系统部分状态数据为:CPU利用率20%,用于对换空间的硬盘的利用率97.7%,其他设备的利用率5%。由此断定系统出现异常。此种情况下()能提高CPU的利用率。 正确答案:加内存条,增加物理空间容量 16 对外存对换区的管理应以()为主要目标,对外存文件区的管理应以()

操作系统课后答案

第一章操作系统引论 思考与练习题 1.什么是操作系统它的主要功能是什么 2.什么是多道程序设计技术多道程序设计技术的主要特点是什么 3.批处理系统是怎样的一种操作系统它的特点是什么 4.什么是分时系统什么是实时系统试从交互性,及时性,独立性,多路性,可靠性等几个 方面比较分时系统和实施系统。 5.实时系统分为哪俩种类型 6.操作系统主要特征是什么 7.操作系统也用户的接口有几种它们各自用在什么场合 8.“操作系统是控制硬件的软件”这一说法确切吗为什么 9.设内存中有三道程序,A,B,C,它们按A~B~C的先后顺序执行,它们进行“计算”和“I/o 操作”的时间如表1-2所示,假设三道程序使用相同的I/O设备。 (1)试画出单道运行时三道程序的时间关系图,并计算完成三道程序要花多少时间。 (2)试画出多道运行时三道程序的时间关系图,并计算完成三道程序要花多少时间。10.将下列左右两列词连接起来形成意义最恰当的5对。 DOS 网络操作系统 OS/2 自由软件

UNIX 多任务 Linux 单任务 Windows NT 为开发操作系统而设计 C语言 11.选择一个现代操作系统,查找和阅读相关的技术资料,写一篇关于操作系统如何进行内存管理、存储管理、设备管理和文件管理的文章。 答案 1.答:操作系统是控制和管理计算机的软、硬件资源,合理地组织计算机的工作流程,以方便用户使用的程序集合。 2.答:把多个独立的程序同时放入内存,使她们共享系统中的资源。 1)多道,即计算机内存中同时放多道相互独立的程序。 2)宏观上并行,是指共识进入系统的多道程序都处于运行过程。 3)微观上串行,是指在单道处理机环境下,内存中的多道程序轮流地占有CPU,交替执行。 3.答:批处理操作系统是一种基本的操作系统类型。在该系统中用户的作业被成批地输入到计算机中,然后在操作系统的控制下,用户的作业自动的执行。 特点是:资源利用率高。系统吞吐量大。平均周转时间长。无交互能力。 4.答:分时系统:允许多个终端用户同时使用计算机,在这样的系统中,用户感觉不到其他用户的存在,好像独占计算机一样。实时系统:对外输入出信息,实时系统能够在规定的时间内处理完毕并作出反应。 1)多路性:分时系统是为多个终端用户提供服务,实时系统的多路性主要表现在经常对多路的现场信息进行采集以及多多个对象或多个执行机构进行控制。 2)独立性:每个终端向实时系统提出服务请求时,是彼此独立的工作、互不干扰。

操作系统课后习题答案

第一章 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.在一个分时机器中,能否确保像在专用机器上一样的安全度?并解释之。 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章 一、填空 1.计算机由硬件系统和软件系统两个部分组成,它们构成了一个完整的计算机系统。 2.按功能划分,软件可分为系统软件和应用软件两种。 3.操作系统是在裸机上加载的第一层软件,是对计算机硬件系统功能的首次扩充。 4.操作系统的基本功能是处理机(包含作业)管理、存储管理、设备管理和文件管理。 5.在分时和批处理系统结合的操作系统中引入“前台”和“后台”作业的概念,其目的是改善系统功能,提高处理能力。 6.分时系统的主要特征为多路性、交互性、独立性和及时性。 7.实时系统与分时以及批处理系统的主要区别是高及时性和高可靠性。 8.若一个操作系统具有很强的交互性,可同时供多个用户使用,则是分时操作系统。 9.如果一个操作系统在用户提交作业后,不提供交互能力,只追求计算机资源的利用率、大吞吐量和作业流程的自动化,则属于批处理操作系统。 10.采用多道程序设计技术,能充分发挥CPU 和外部设备并行工作的能力。 二、选择 1.操作系统是一种 B 。 A.通用软件B.系统软件C.应用软件D.软件包2.操作系统是对 C 进行管理的软件。 A系统软件B.系统硬件C.计算机资源D.应用程序3.操作系统中采用多道程序设计技术,以提高CPU和外部设备的A。 A.利用率B.可靠性C.稳定性D.兼容性4.计算机系统中配置操作系统的目的是提高计算机的 B 和方便用户使用。 A.速度B.利用率C.灵活性D.兼容性5. C 操作系统允许多个用户在其终端上同时交互地使用计算机。 A.批处理B.实时C.分时D.多道批处理6.如果分时系统的时间片一定,那么 D ,响应时间越长。 A.用户数越少B.内存越少C.内存越多D.用户数越多 三、问答 1.什么是“多道程序设计”技术?它对操作系统的形成起到什么作用? 答:所谓“多道程序设计”技术,即是通过软件的手段,允许在计算机内存中同时存放几道相互独立的作业程序,让它们对系统中的资源进行“共享”和“竞争”,以使系统中

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

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.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.什么是操作系统的基本功能? 答:操作系统的职能是管理和控制汁算机系统中的所有硬、软件资源,合理地组织计算机工作流程,并为用户提供一个良好的工作环境和友好的接口。操作系统的基本功能包括: 处理机管理、存储管理、设备管理、信息管理(文件系统管理)和用户接口等。 2.什么是批处理、分时和实时系统?各有什么特征? 答:批处理系统(batchprocessingsystem):操作员把用户提交的作业分类,把一批作业编成一个作业执行序列,由专门编制的监督程序(monitor)自动依次处理。其主要特征是:用户脱机使用计算机、成批处理、多道程序运行。 分时系统(timesharingoperationsystem):把处理机的运行时间分成很短的时间片,按时间片轮转的方式,把处理机分配给各进程使用。其主要特征是:交互性、多用户同时性、独立性。 实时系统(realtimesystem):在被控对象允许时间范围内作出响应。其主要特征是:对实时信息分析处理速度要比进入系统快、要求安全可靠、资源利用率低。 3.多道程序(multiprogramming)和多重处理(multiprocessing)有何区别? 答;多道程序(multiprogramming)是作业之间自动调度执行、共享系统资源,并不是真正地同时执行多个作业;而多重处理(multiprocessing)系统配置多个CPU,能真正同时执行多道程序。要有效使用多重处理,必须采用多道程序设计技术,而多道程序设计原则上不一定要求多重处理系统的支持。 4.讨论操作系统可以从哪些角度出发,如何把它们统一起来? 答:讨论操作系统可以从以下角度出发: (1)操作系统是计算机资源的管理者; (2)操作系统为用户提供使用计算机的界面; (3)用进程管理观点研究操作系统,即围绕进程运行过程来讨论操作系统。 上述这些观点彼此并不矛盾,只不过代表了同一事物(操作系统)站在不同的角度来看待。 每一种观点都有助于理解、分析和设计操作系统。 第二章作业管理和用户接口 1. 什么是作业?作业步? 答:把在一次应用业务处理过程中,从输入开始到输出结束,用户要求计算机所做的有关该次业务处理的全部工作称为一个作业。作业由不同的顺序相连的作业步组成。作业步是在一个作业的处理过程中,计算机所做的相对独立的工作。如,编辑输入是一个作业步,它产生源程序文件;编译也是一个作业步,它产生目标代码文件。 2. 作业由哪几部分组成?各有什么功能? 答:作业由三部分组成:程序、数据和作业说明书。程序和数据完成用户所要求的业务处理工作,作业说明书则体现用户的控制意图。 3.作业的输入方式有哪几种?各有何特点 答:作业的输入方式有5种:联机输入方式、脱机输入方式、直接耦合方式、SPOOLING (Simultaneous Peripheral OperationsOnline)系统和网络输入方式,各有如下特点: (1)联机输入方式:用户和系统通过交互式会话来输入作业。 (2)脱机输入方式:又称预输入方式,利用低档个人计算机作为外围处理机进行输入处理,存储在后备存储器上,然后将此后援存储器连接到高速外围设备上和主机相连,从而在较短的时间内完成作业的输入工作。 (3)直接耦合方式:把主机和外围低档机通过一个公用的大容量外存直接耦合起来,从而省去了在脱机输入中那种依靠人工干预宋传递后援存储器的过程。 (4)SPOOLING系统:可译为外围设备同时联机操作。在SPOOLING系统中,多台外围设备通过通道或DMA器件和主机与外存连接起来,作业的输入输出过程由主机中的操作系统控制。

操作系统课后题答案

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.何谓进程,进程由哪些部分组成? 进程是进程实体的运行过程,是系统进行资源分配和调度的一个独立单位进程由程序段,数据段,进程控制块三部分组成。

操作系统课后部分答案分析

考核试题模板 湖南师范大学2006—2007学年第2学期2005年级期末课程 操作系统 考核试题 (计算机专业) 课程代码: 考核方式:闭卷 考试时量:120分钟 试卷类型:A 一、填空题(每空 1 分,共 20 分) 1、从资源管理的观点出发,可以把整个操作系统分成 ( )、存储管理、( )和文件系统。 10、按用途可以将文件分为:系统文件、( )和( )。 二、判断题(下列各题,你认为正确的,请在 题干的括号内打“√”,错的打“×”。)(每题1 分,共 10 分) 1、在现代操作系统中,线程是一个执行单位,它总是隶属于进程的……………………………………………………………………( ) 10、顺序文件在顺序存取时,其存贮速度较慢……………………( ) 三、单选题(在本题的每一小题备选答案中,只有一个答案是正确的,请把你认为正确的答案的题号填入题干括号内。多选不给分。每题 2 分,共 30 分) ………………….. ( ) ①硬件 ②操作系统 ③编译系统 ④应用程序 15、通常不采用下面哪种方法来解除死锁……………………( ) ① 终止一个死锁进程 ② 终止所有死锁进程 ③ 从死锁进程处抢夺资源 ④ 从非死锁进程处抢夺资源 四、简答题(每题 4 分,共 12 分) 1、进程调度中“可抢占”和“非抢占”两种方式,哪一种系统的开销更大?为什么?

五、综合应用题(第1题8分,第2、3题10 分,共28 分) 0~199,当前移动臂的位置在53号柱面上,并刚刚完成58号柱面的服务请求,如果请求队列的先后顺序是98,183,37,122,14,124,65,67。请按下列算法分别计算为完成上述各次访问总共需要的磁头移动量,并写出磁头的移动顺序。 (1)最短寻找时间优先算法(SSTF); (2)扫描算法(SCAN)。 湖南师范大学2006—2007学年第2学期2005年级期末课程 操作系统考核试题标准答案及评分细则(计算机专业) 课程代码:考核方式:闭卷考试时量:120分钟试卷类型:C 一、填空题(每空1分,共20分) 1、处理机管理、设备管理 二、判断题(每题1分,共10分) 1、√ 三、单项选择题(每题2分,共30分) 1、② 四、简答题(每题4分,共12分) 1、答:可抢占式会引起系统的开销更大。 可抢占式调度是严格保证任何时刻,让具有最高优先权(级)的进程占有处理机运行,因此增加了处理机调度的时机,引起为退出处理机的进程保留现场,为占有处理机的进程恢复现场等时间(和空间)开销增大。(注:不写空间开销也可) 五、综合应用题(第1题8分,第2、3题10分,共28 分) 2、(10分) SSTF:总量:236 移动顺序:53->65->67->37->14->98->122->124->183 SCAN:总量:236 移动顺序:53->37->14->0->65->67->98->122->124->183 第一章 1.1 什么是操作系统?它有哪些基本功能?

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

第一章 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、内存管理有哪些主要功能?她们的主要任务就是什么 内存管理的主要功能有:内存分配、内存保护、地址映射与内存扩充。 内存分配:为每道程序分配内存。

(完整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的等待时间最小。

相关主题
文本预览
相关文档 最新文档