FE EXAM

回転待ち時間(回転遅延)

目的のセクタがヘッドの下に回ってくるまで待つ時間

INTERACTIVE VISUALIZATION
ヘッド
目的セクタ
回転
回転数
7,200 rpm
1回転の時間
8.33 ms
最大(1回転分)
8.33 ms
平均回転待ち時間
4.17 ms
回転数(rpm)
ステップ 1/6
STEP 1/6ヘッドはトラック上で待機回転待ち時間の話は、ヘッドがすでに目的のトラック(同心円)の上に到着したところから始まります。あとはそのトラック上の「目的のセクタ(扇形の区画)」がヘッドの真下に来るのを待つだけです。
プラッタ(回転中)と目的セクタヘッドS待ち時間の範囲最良 0平均4.2ms最大 1回転8.3msセクタ位置で待ち時間が変わる
平均回転待ち時間の計算
平均回転待ち時間 = (60 / 回転数) × 1000 / 2 (ms)
        = (60 / 7,200) × 1000 / 2
        = 8.33 / 2 = 4.17 ms
1回転の時間=(60 / 回転数) × 1000 = 8.33 ms。平均はその半分です。
解説

📌
回転待ち時間とは

目的セクタが回ってくるのを待つ回転S=目的セクタ上=ヘッド位置

回転待ち時間(回転遅延)とは、目的のセクタ(読みたいデータが入った扇形の区画)が、回転によってヘッドの真下に来るまで待つ時間のことです。ヘッドが目的のトラックに着いても、すぐにデータを読めるとは限りません。プラッタが回って目的のセクタが来るのを待つ必要があります。

身近な例えで言うと、回転寿司で食べたいネタが目の前に来るのを待つのと同じです。席(ヘッド)の前を皿(セクタ)がぐるぐる回っており、お目当ての皿が来るまで待ちます。運が良ければすぐ来ますし、運が悪ければほぼ一周待つことになります。

上のツールで▶ボタンを押すと、目的のセクタ(S)がプラッタの回転でヘッドの下に近づいてくる様子が見られます。回転数(rpm)のシナリオを切り替えて、回転が速いほど待ち時間が短くなることを確認してみてください。

🔄
回転数との関係

プラッタの回る速さは回転数(rpm=revolutions per minute、1分あたりの回転数)で表します。回転数が大きいほどプラッタが速く回り、目的のセクタがヘッド下に来るまでの待ち時間が短くなります。

まず「1回転にかかる時間」を求めます。1分は 60 秒なので、これを回転数で割れば 1 回転の秒数が出ます。ミリ秒(ms=1/1000 秒)にするため 1000 を掛けます。

1回転の時間 = (60 / 回転数) × 1000 (ms)
例)7200 rpm のとき
  (60 / 7200) × 1000 = 8.33 ms

代表的な回転数ごとの 1 回転時間を比べると、回転が速いほど短いことが分かります。
5400 rpm:1回転 約 11.1 ms
7200 rpm:1回転 約 8.33 ms
10000 rpm:1回転 約 6.0 ms

身近な例えで言うと、回転寿司のレーンを速く回すほど、目当ての皿が早く回ってくるのと同じです。上のツールで rpm を切り替えると、1回転の時間と待ち時間が連動して変わります。

🧮
平均値の計算

目的のセクタがどの位置にあるかは毎回バラバラです。運が良ければちょうどヘッドの下にあって待ち時間ゼロ、運が悪ければほぼ 1 回転(最大)待つことになります。

最良:すでにヘッドの下にある → 待ち時間 0
最悪:通り過ぎた直後 → ほぼ 1 回転分待つ
平均:その中間の半回転分

そこで、平均的にかかる時間として「半回転分」を使います。1回転の時間を 2 で割れば求められます。

平均回転待ち時間 = (60 / 回転数) × 1000 / 2 (ms)

計算例:7200 rpm のディスクの場合

1回転 = (60 / 7200) × 1000 = 8.33 ms
平均回転待ち時間 = 8.33 / 2 ≒ 4.17 ms

HDD でデータにアクセスする時間は、ヘッドを目的トラックへ動かすシーク時間と、この回転待ち時間、そして実際の読み書き時間を足したものになります。上のツールで rpm を変えて、回転が速いほど平均回転待ち時間が短くなることを確認してみてください。

関連コンテンツ