操作系统-缓冲区问题
数据处理的总体过程:磁盘将数据输入到缓冲区(T)——缓冲区将数据传送到用户区(M)——CPU对数据进行处理(C)
双缓冲
在双缓冲结构中,系统处理一块数据的时间可以粗略地认为是: Max(C,T),如果考虑M,则处理一块数据的时间为: Max(C+M,T), ( 更准确的:Max(C,T-M)+M)
简单的理解:双缓冲区的总体运行时间:= (磁盘块-1)*MAX(T , M+C)+T+M+C(两端没有重合的地方)
1.文件占34个磁盘块,把磁盘块逐个读入缓冲区,并送工作区进行处理,设一个缓冲区与磁盘块大小相同。将缓冲区的数据传送到用户区的时间是50us,CPU对一块数据进行处理的时间为180us,读入并处理完该文件的时间是12810us,在双缓冲区的结构下,把一个磁盘块读入缓冲区的时间为( )。
A.4990 B.380 C.400 D.370
单缓冲
在单缓冲结构下,系统对每一块数据的处理时间表示为:Max(C,T)+M
简单的理解:单缓冲区的总体运行时间:= (磁盘块-1)*MAX(T , C) + 磁盘块*M + C + T(两端没有重合的地方)
2.文件占38个磁盘块,把磁盘块逐个读入缓冲区,并送到工作区进行处理,设一个缓冲区域磁盘块大小相同。把一个磁盘块读入缓冲区的时间为230us,将缓冲区的数据送到用户区的时间是10us,读入并处理完该文件的时间是18090us,在单缓冲区结构,CPU对一块数据进行处理的时间为( )us。
A.470 B.460 C.8970 D.430