某用户文件共10个逻辑记录,每个逻辑记录的长度为480个字符,现把该文件存放到磁带上,若磁带的记录密度为800字符/英寸,块与块之间的间隙为0.6英寸,回答下列问题:
问答题     不采用记录成组操作时磁带空间的利用率为多少?
 
【正确答案】利用率为50%。
【答案解析】不成组记录时,一个逻辑记录对应于一个物理记录,因此每个逻辑记录所需的磁带长度为480÷800=0.6英寸,逻辑记录之间相隔的距离与记录所需的长度相同,因此利用率为50%。
问答题     采用记录成组操作且块因子为5时,磁带空间的利用率为多少?
 
【正确答案】利用率为83%。
【答案解析】成组记录时,块因子为5,即5个逻辑记录存放在一个物理记录上,一个物理记录所需的长度为:0.623英寸,因此空间利用率为3÷3.6≈83%。
问答题     当按上述方式把文件存放到磁带上后,用户要求每次读一个逻辑记录存放到它的工作区;当对该记录处理后,又要求把下一个逻辑记录读入它的工作区,直至10个逻辑记录处理结束。系统应如何为用户服务?
 
【正确答案】设置长度为2400字符的主存缓冲区;找到该文件的存放位置,启动磁带机读出第1块内容存入主存缓冲区;进行记录分解,按用户要求依次把主存缓冲区中的5个记录传送到用户工作区;启动磁带机读第2块内容存入主存缓冲区,把第6~10个逻辑记录按用户要求依次传送到用户工作区。
【答案解析】与磁盘的旋转一样,磁带也是由电机控制的,机械运动都有一个稳定时间。如果每次读一个逻辑记录,则在读下一个逻辑记录时需要反转电机,为了减少机械运动带来的开销,要一次性地将一个物理记录读取完毕。因此需要设置一个5×480字符的缓冲区。
问答题   一个DMA控制器有4个通道。控制器的带宽可以是每100ns传输32位。总线速度应该多高才不至于成为瓶颈?
 
【正确答案】大约500MB。可参考计算机原理中的相关知识。
【答案解析】
问答题   一张打印纸可以打印50行字符,每行80个字符。假设某台打印机每分钟可以打印6页(字符传输到打印机输出寄存器的时间可以忽略)。如果每次字符打印都要求50μs的服务时间,此时使用中断驱动I/O的方式是否合算?
 
【正确答案】如果采用中断驱动I/O,按照打印速度,发出中断的频率为400Hz,发生中断的时间间隔为2.5ms,CPU的消耗率为50÷2500=2%,但是从CPU需要处理许多的设备以及其他任务来看,这样的消耗不太合算。
【答案解析】
问答题   为什么输出到打印机的输出文件在打印之前会缓冲在磁盘上?
 
【正确答案】将磁盘作为I/O缓冲。
【答案解析】
问答题   简单的程序直接控制I/O实际上是很高效的,只是重复的I/O会因为慢等待而降低系统效率,但是如果I/O设备已经准备好了服务,那么程序直接控制I/O会比捕捉和分发中断更加高效。请说明一种混合的策略可以结合程序直接控制I/O和中断驱动I/O,并且这种方法优于程序直接控制I/O和中断驱动I/O的计算环境。
 
【正确答案】使用中断通知设备ready,使用直接控制I/O进行数据传输。
【答案解析】
问答题   为什么说缓冲技术是以空间来换取时间?
 
【正确答案】使用缓冲需要消耗存储(空间)资源,但是可以减少对慢速设备的访问次数,节省时间。
【答案解析】
问答题   现代计算机系统都已经支持热插拔设备,如果检测新设备是使用一个操作系统例程来实现的,那么这个例程的I/O方式应该是怎样的?为什么?
 
【正确答案】这个例程应该使用I/O中断方式。
【答案解析】
问答题   字符终端设备驱动程序使用字符缓冲的目的是什么?
 
【正确答案】提高CPU利用率。
【答案解析】
问答题   某个计算机的时钟中断处理程序每个tick需要2ms,时钟以60Hz的频率运转,请问CPU在单位时间内用于处理其他事务的时间比例至多为多少?为什么?
 
【正确答案】(1-2÷(1000÷60))×100%。
【答案解析】