某计算机系统输入/输出采用双缓冲工作方式,其工作过程如下图所示,假设磁盘块与缓冲区大小相同,每个盘块读入缓冲区的时间T为10μs,缓冲区送用户区的时间M为6μs,系统对每个磁盘块数据的处理时间C为2μs。若用户需要将大小为10个磁盘块的:Doc1文件逐块从

admin2017-11-28  62

问题 某计算机系统输入/输出采用双缓冲工作方式,其工作过程如下图所示,假设磁盘块与缓冲区大小相同,每个盘块读入缓冲区的时间T为10μs,缓冲区送用户区的时间M为6μs,系统对每个磁盘块数据的处理时间C为2μs。若用户需要将大小为10个磁盘块的:Doc1文件逐块从磁盘读入缓冲区,并送用户区进行处理,那么采用双缓冲需要花费的时间为(5)μs,比使用单缓冲节约了(6)μs时间。

(6)

选项 A、0
B、8
C、54
D、62

答案C

解析 双缓冲的工作特点是可以实现对缓冲区中数据的输入T和提取M,与CPU的计算C,三者并行工作。双缓冲的基本工作过程是在设备输入时,先将数据输入到缓冲区1,装满后便转向缓冲区2。所以双缓冲进一步加快了I/O的速度,提高了设备的利用率。
在双缓冲时,系统处理一块数据的时间可以粗略地认为是Max(C,T)。如果C<T,可使块设备连续输入;如果C>T,则可使系统不必等待设备输入。本题每一块数据的处理时间为10,采用双缓冲需要花费的时间为10×10+6+2=108。
采用单缓冲的工作过程如图(a)所示。当第一块数据送入用户工作区后,缓冲区是空闲的,可以传送第二块数据。这样第一块数据的处理C1与第二块数据的输入T2是可以并行的,依次类推,如图(b)所示。

系统对每一块数据的处理时间为:Max(C,T)+M。因为,当T>C时,处理时间为M+T:当T<C时,处理时间为M+C。本题每一块数据的处理时间为10+6=16,Doc1文件的处理时间为16×10+2=162μs,比使用单缓冲节约了162-108=54μs时间。
转载请注明原文地址:https://kaotiyun.com/show/20QZ777K
0

最新回复(0)