Алгоритм SCAN и CSCAN

Мне трудно разобраться в работе алгоритмов планирования дисков SCAN и CSCAN. Я понял FCFS, ближайший цилиндр Next, но услышал, что SCAN напоминает механизм лифта, и запутался. Моя книга говорит, что для входящего заказа:[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]?

1 ответ

Решение

Давайте узнаем, что говорит алгоритм планирования диска SCAN(Elevator):-

Он сканирует вниз до ближайшего конца, а затем, когда он достигает дна, он сканирует запросы, которые не сбрасываются. Если запрос приходит после того, как он был отсканирован, он не будет обслуживаться до тех пор, пока процесс не вернется назад или не вернется обратно.

Итак, в вашем случае текущая позиция диска равна 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]; Обратите внимание на изменение в последних трех позициях диска.

Надеюсь понятно. Не стесняйтесь задавать оставшиеся сомнения.

Другие вопросы по тегам