刷题刷出新高度,偷偷领先!偷偷领先!偷偷领先! 关注我们,悄悄成为最优秀的自己!

单选题

假设磁盘块与缓冲区大小相同,每个盘块读入缓冲区的时间为 16us, 由缓冲区送至用户区的时间是 5us,在用户区内系统对每块数据的处理时间为 1us.若用户需要将大小为 10 个磁盘 块的 Doc1 文件逐块从磁盘读入缓冲区,并送至用户区进行处理,那么采用单缓冲区需要花费的时间为( 请作答此空)us: 采用双缓冲区需要花费的时间为,()us.

A
160
B
161
C
166
D
211
使用微信搜索喵呜刷题,轻松应对考试!

答案:

D

解析:

这是一个关于缓冲区操作的题目。在单缓冲区情况下,需要从磁盘逐块读入缓冲区,然后再从缓冲区送至用户区进行处理。每个块的处理时间为:(磁盘写入缓冲区时间 + 缓冲区送至用户区时间) × 块数 + 处理一块数据的时间。根据题目给出的数据,单缓冲区需要花费的时间为:(16us + 5us) × 10个磁盘块 + 1us = 211us。

在双缓冲区情况下,当第一个缓冲区写满后,磁盘可以紧接着写另一个缓冲区,同时前一个缓冲区被读出到用户区并进行CPU的数据分析。因此,总时间为:磁盘写入缓冲区时间 × 块数 + 读出最后一块数据时间 + CPU分析最后一块数据时间。根据题目数据,双缓冲区需要花费的时间为:16us × 10个磁盘块 + 5us + 1us = 166us。

创作类型:
原创

本文链接:假设磁盘块与缓冲区大小相同,每个盘块读入缓冲区的时间为 16us, 由缓冲区送至用户区的时间是 5u

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。

让学习像火箭一样快速,微信扫码,获取考试解析、体验刷题服务,开启你的学习加速器!

分享考题
share