采用单/双缓冲区需要花费的时间


假设磁盘块与缓冲区大小相同,每个盘块读入缓冲区的时间为16us, 由缓冲区送至用户区的时间是5us,在用户区内系统对每块数据的处理时间为1us.若用户需要将大小为10个磁盘块的Doc1文件逐块从磁盘读入缓冲区,并送至用户区进行处理,那么采用单缓冲区需要花费的时间为(49)us: 采用双缓冲区需要花费的时间为,(50)us.
(49)A.160    B.161     C.166     D.211
(50)A.160    B.161     C.166     D.211
【答案】D  C
【解析】本题可转换为流水线的题来解答。
当采用单缓冲区时,由于将盘块读入缓冲区与将数据从缓冲区转到用户区,都要用到同一个缓冲区,所以只能把这两步作为流水线的一个段。所以计算方式为:
16+5+1+(10-1)*(16+5)=211us。
当采用双缓冲区时,读入缓冲区与将数据从缓冲区转到用户区可以作为流水线的两个段,所以计算方式为:
16+5+1+(10-1)*16=166us。

猜你喜欢

转载自www.cnblogs.com/jianfeijiang/p/10863515.html