【答案解析】[解析] 本题表面上看是考查文件读取,但实际上需要应用到流水线技术。因为进行处理时,每个数据要经过3个步骤:读入缓冲区、送用户区、处理。这三个步骤不能简单地使用流水线技术,因为其中有两个步骤都需要用到缓冲区,这两个步骤执行时,缓冲区都不可以开始下一个磁盘区的相关工作,所以三个步骤可合并为两个:读入缓冲区并送用户区、处理。此时,可应用流水线的方式来提升效率。所以用户将大小为10个磁盘块的File1文件逐块从磁盘读入缓冲区,并送用户区进行处理,采用单缓冲时需要花费的时间为
(100+60+50)+(10-1)×(100+60)=1650(μs)
若增加一个缓冲区,情况如下图所示。
[*]
执行时空图
从图可知,使用双缓冲区时,从磁盘向缓冲区中传送数据的工作可通过两个缓冲区持续交替进行(注意磁盘不可同时向两个缓冲区传送数据,因为磁盘的工作原理不允许这样做),所以需要时间为
100×10+60+50=1110(μs)