现代操作系统第三版课后习题解答

第一张 引论

1. 什么是多道程序设计?

a: 多道程序设计是指将内存分为几个部分,每一部分存放不同的程序,当一个作业等待 IO 操作完成时,另一个作业就可以使用 CPU 。主要目的是减少 CPU 的忙等,提高 CPU 的利用率。存在的问题是,由于内存中同时存在多个程序,需要对各个程序的数据进行保护,避免其他程序数据的更改和盗取。

2. 什么是 SPOOLING ?读者是否认为将来的高级个人计算机会把 SPOOLing 作为标准功能?

a: SPOOLing 是 Simultaneous Peripheral Operation On Line 的简称,是一种读入任务和输出结果的一种方式。例如,编码有任务的卡片被拿到机房后能够很快地将作业从卡片读入磁盘。于是,任意时刻但一个作业运行结束时,操作系统就能将一个新作业从磁盘读出,装进空出来的内存区域运行。输出数据时也是先输出到磁盘,然后再等待打印输出。用于输出结果的SPOOLing技术应该会成为高级个人计算机的标准功能。

3. 在早期计算机中,每个字节的读写直接由 CPU 处理(即没有 DMA)。对于多道程序而言这种组织方式有什么含义?

a: 数据的读写属于 I/O 操作,I/O 操作的响应速度相比于 CPU 的处理速度而言要慢几个数量级。基于多道程序的出现意义,CPU 在等待 I/O 操作完成的时间段内可以切换到其他任务上进行运行,提高 CPU 的利用率。如果 CPU 需要一直等待 I/O 操作的完成,那么多道程序的作用会大打折扣。

你可能感兴趣的:(操作系统)