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

《操作系统教程》(第三版)CH1应用题参考答案

CH1 应用题参考答案

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

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

进程同时等待I/O期间CPU是空闲的,故CPU的利用率为1-Pn 。由题意可知,除去操作系统,内存还能容纳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的情况?若有,指出发生等待的时刻。 答:画出两道程序并发执行图如下:

A计算 B计算 A计算 B计算 处理器

B输入 输入机

A打印 A打印 打印机

计算 打印 计算 打印 程序A

计算 输入 计算 程序B

时间(ms)

0 50 100 150 180 200 250 300

(1) 两道程序运行期间,CPU存在空闲等待,时间为100至150ms之间(见图中有色部

分)。

(2) 程序A无等待现象,但程序B有等待。程序B有等待时间段为180ms至200ms间(见

图中有色部分)。

1

《操作系统教程》(第三版)CH1应用题参考答案

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 I3

>>闁诲繒鍋炲ú鏍閹达箑绀傞柕濠忛檮閻庯拷<<
12@gma联系客服:779662525#qq.com(#替换为@)