How is Average Seek Time Calculated?

99封情书 提交于 2019-12-06 00:41:32

There are a lot more than 500 possible seek times. Your method only accounts for seeks starting at track 1.

What about seeks starting from track 2? Or from track 285?

I wouldn't say your approach is wrong, but it's certainly incomplete.

As is pointed out in the link you're reffering to in this question the average time is calculated as average distance from ANY track to ANY track. So you have to add all of the Subsums to the one you are using to calculate average seek time and then divide this sum by the number of tracks. It sums out to: N/3, where N is the distance between track 0 and last. f.eg. average distance from track 249 to ANY other track is:middle average sum

Your calculation is the average track seek, you need to add the sector seek to that.

When seeking for a read operation, the head is positioned on (a) a track, at a given (b) sector. The (average) seek time is the time taken to switch to that position to any other position, with both (a) track and (b) sector.

When positioned, the read can start.

The disk RPM is into play for this, if it spins at 600rpm and has 100 sectors per track, it means that it seeks sectors at

60000ms (because rpm = per minute)
/
600rpm (disk spin speed)
/
100sectors (per track)
=
1ms (to change from a sector to the next adjacent one)

Normally, you would have to consider that as you change tracks, the disk is still spinning and thus account for the sector offset change. But since we are interested only in the average, this cancels out (hopefully).

So, to your 249.5 ms for the track seek average time, you need to add :

same formula :

sum 0->100/100 * 1ms (sector seek speed) =  50.5ms

Thus, the average seek speed for both track and sector is 300ms.

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!