4

ディスク スケジューリングの SCAN と CSCAN アルゴリズムの動作を理解するのに苦労しています。私の本では、次のように書かれています: [10 22 20 2 40 6 38] (ディスクは現在 20 ですが) 最初に移動する SCAN は [(20) 20 22 38 40 10 6 2] を提供します。これには、[0 2 16 2 30 4 4] シリンダー、合計 58 シリンダーの移動が必要です。[(20) 20 22 38 40 10 6 2] というパターンはどのようにしてできたのでしょうか?

4

1 に答える 1

7

SCAN(エレベーター)ディスクスケジューリングアルゴリズムが何を言っているかを知ってみましょう:-

一番近い端に向かって下方向にスキャンし、底に達すると上方向にスキャンして、下がらなかったリクエストを処理します。リクエストがスキャンされた後に受信された場合、プロセスが停止するか元に戻るまで処理されません。

したがって、あなたの場合、ディスクの現在の位置は 20 です。したがって、SCAN アルゴリズムに従って、最も近い端に向かってスキャンし、一番下に到達した直後に、リクエストを処理してバックアップをスキャンします。

順序は次のとおりです:-

|                                                     |


| * current position                                  | * move back up to upside
|---> nearest disk is this one                        |
|     so it'll move down and so on.                   |
|         as it hit the bottom                     _______

____

                   Fig :- Demonstration of SCAN algorithm  

したがって、指定されたデータに従って、順序は次のようになります[(20) 20 22 38 40 10 6 2];


編集 :-

SCAN と CSCAN の唯一の違いは、CSCAN では、

最も近い端に向かってスキャンを開始し、システムの最後までずっと動作します。ボトムまたはトップに当たると、同じパスを使用して上に戻るスキャンとは異なり、反対側の端にジャンプして同じ方向に移動します。

CSCANによると、移動方向は下まで同じで、その後パスを逆にします。

したがって、指定されたデータに従って、順序は次のようになります[(20) 20 22 38 40 2 6 10];。最後の 3 つのディスク位置の変更に注意してください。

明確であることを願っています。残りの疑問は遠慮なく質問してください。

于 2014-11-25T19:21:26.587 に答える