문제

Below is a question and the answer for it from the book "Operating System Design & Implementation" by Andrew S. Tanenbaum.

 As an example, consider a disk with 131,072 bytes/track, a rotation time of 8.33 msec, and an
average seek time of 10 msec. The time in milliseconds to read a block of k bytes is then the sum
of the seek, rotational delay, and transfer times:

10 + 4.165 + (k / 131072)x 8.33

Now if there are 131,072 bytes per track there are k/131,072 tracks to be read for this block.Does changing the track involve a rotation delay ? why do we multiply it by 8.33?

what is actually meant by rotation time?

From where does the 4.165 come from?

This is the image which I used to picture tracks.

enter image description here

도움이 되었습니까?

해결책

The 4.165 ms is the time it takes to go halfway around (8.33 ms / 2). Since the disk could be rotated either right exactly where you need to start, or as far away from where you need to start as possible, you split the difference.

You multiply by 8.33 ms because that's the time it takes to go around once. That's the "rotation time."

k / 131072 is the number of rotations you make to pull in k bytes.

Changing the track is accounted for in the average seek time (10 ms).

(Edit: Moving my explanation of seek time and rotation time out of the comment.)

I'll make an analogy with a record player (hope I'm not showing my age here).

Seek time is the time it takes the read/write head to move to a specified track. On the record player, it's the time it takes for you to move the needle to your favorite song.

Rotation time is the time it takes the disks to spin around once. A rotation time of 8.33 ms means the disks are going around 120 times a second (1 / 0.00833). On the record player, this would be the 33 1/3 RPM (for an LP), or the 45 RPM for a single.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top