Solaris のシステム管理 (基本編)

回転待ち

「回転待ち」は、CPU がデータ転送を完了し、同じディスクシリンダ上で次のデータ転送を開始するまでにかかる予想最小時間 (ミリ秒単位) です。デフォルトの待ち時間はゼロです。これは、最近のオンディスクキャッシュと組み合わせると、待ち時間に基づく計算が無効になるためです。

ファイルに書き込むときに、UFS 割り当てルーチンは新しいブロックを同じファイル内の直前のブロックと同じディスクシリンダ上に配置しようとします。また、新しいブロックをトラック内で最適の位置に配置して、そこへのアクセスに必要なディスクの回転を最小限度に抑えようとします。

ファイルブロックを「回転して適切に動作」するように配置するには、割り当てルーチンは CPU による転送処理速度と、ディスクが 1 ブロックをスキップする所要時間を認識しなければなりません。mkfs コマンドのオプションを使用すると、ディスクの回転速度と 1 トラック当たりのディスクブロック (セクター) 数を指定できます。割り当てルーチンは、この情報を使用して、1 ディスクブロックをスキップするミリ秒数を求めます。そして、割り当てルーチンは予想転送時間 (回転待ち) を使用して、システムの読み込み準備ができたときに次のブロックがディスクヘッドの真下にくるようにブロックを配置できます。


注 -

回転待ち (newfs-d オプション) を指定しなくてもよいデバイスがあります。


各ブロックは、システムが同じディスクの回転中に読み込める処理速度の場合にのみ、連続して配置されます。システムが低速であれば、ディスクはファイル内の次のブロックの先頭を通り過ぎてしまうので、そのブロックを読み込むには、もう 1 回転しなければならず、長時間かかります。次のディスク要求が発生するときに該当するブロックにヘッドがきているように、ギャップに適切な値を指定してください。

既存のファイルシステムの場合は、tunefs コマンドを使用してこのパラメータの値を変更できます。変更結果は、それ以後のブロック割り当てにのみ適用され、すでに割り当て済みのブロックには適用されません。