还有这题也不会做,不理解这个知识点,对单缓冲双缓冲这个知识不懂
问题详情
还有这题也不会做,不理解这个知识点,对单缓冲双缓冲这个知识不懂
老师回复问题
本题的关键就在于哪些设备是可以并行的
(1)在单缓冲的情况下,应先从磁盘把一块数据输入缓冲区,所花费的时间为T;然后由操作系统将缓冲区的数据传送至用户区,所花的时间为M;接下来便由CPU对这一块数据进行计算,计算时间为C。由于CPU的计算操作与磁盘的数据输入操作可以并行,因此一块数据的处理时间为max(C,T)+M
(2)在双缓冲的情况下,应先从磁盘把一块数据输入到第一个缓冲区,当装满第一个缓冲区后,操作系统可将第一个缓冲区的数据传送到用户区并对第一块数据进行计算,与此同时可将磁盘输入数据送入第二个缓冲区内;当计算完成后,若第二个缓冲区已装满数据,则又可以将第二个缓冲区的数据传送至用户区并对第二块数据进行计算,与此同时可将磁盘输入数据送入第一个缓冲区内,如此反复交替使用两个缓冲区。CPU处理一个缓冲区中数据的耗时为C+M,而准备好另一个缓冲区内的数据的耗时为T。因此,当C+M>T时,CPU刚处理完一个缓冲区的数据,另一个缓冲区的数据就已经准备好了,就可以接着处理下一块数据,因此平均来看,每处理一块数据耗时C+M。而当C+M
免责声明:本平台部分帖子来源于网络整理,不对事件的真实性负责,具体考研相关内容请以各院校的官网通知为准。
如果本站文章侵犯到您的权利,请联系我们(400-108-7500)进行删帖处理。