《操作系统教程》(第三版)CH1 应用题参考答案 1 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 的情况?若有,指出发生等待的时刻。 答:画出两道程序并发执行图如下: (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 计算 《操作系统教程》(第三版)CH1 应用题参考答案 2 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 ...