lv1goblin
幼苗
共回答了19个问题采纳率:84.2% 举报
(1), (2.5+4)*8 + 1*7 -4 = 55.
因为磁头读取一个扇区需要2.5ms,但是处理一个记录需要4ms,超过了一个扇区的读取时间,而在处理数据时,磁盘不会停转,会继续旋转,于是当下达读取B2的指令时,磁头已经经过第2个扇区,并在第3个扇区中间了。这时,只有等磁盘转到下一个扇区,才能进行读操作。
也就是说要满足等待处理时间的要求,必须要让磁头空闲的时间大过处理时间,因此只有连续略掉第2和第3个扇区(这样有5ms的空闲时间),然后再将L2放到第4个扇区,才能保证在有足够处理时间的前提下,又能立刻读到下一条记录。但实际上,还是浪费了1ms的时间。七个扇区就是浪费7秒,而题目问的是“把B0~B7全部读出的时间” 所以不需要处理最后一条,就再减去4秒。
(2)
(1+2)*8 + 1*7 + 2 =33
因为磁头读取一个扇区需要2ms,但是处理一个记录需要1ms, 意思就是处理完了第一条记录但是第二条记录还没有读出来,需要等待1秒时间。
最后一个处理完了以后要再转一次读出记录判断是否和第一条重复 所有要加上2MS磁盘的查找时间。所以就是33了。
1年前
9