logo

SCAN- en C-SCAN-algoritme

Scanalgoritme

Het wordt ook wel Elevator-algoritme genoemd. In dit algoritme beweegt de schijfarm tot het einde in een bepaalde richting, waarbij wordt voldaan aan alle verzoeken die op zijn pad komen, en dan draait hij terug en beweegt in de tegenovergestelde richting om te voldoen aan verzoeken die op zijn pad komen.

Het werkt op de manier waarop een lift werkt: de lift beweegt volledig in een bepaalde richting tot de laatste verdieping van die richting en draait dan terug.

tekenreeks formaat

Voorbeeld

Beschouw de volgende reeks schijfverzoeken voor een schijf met 100 tracks

98, 137, 122, 183, 14, 133, 65, 78

Hoofdwijzer begint bij 54 en beweegt in linkse richting. Vind het aantal hoofdbewegingen in cilinders met behulp van SCAN-planning.


OS SCAN- en C-SCAN-algoritme

Aantal cilinders = 40 + 14 + 65 + 13 + 20 + 24 + 11 + 4 + 46 = 237

C-SCAN-algoritme

In het C-SCAN-algoritme beweegt de arm van de schijf in een bepaalde richting en beantwoordt verzoeken totdat deze de laatste cilinder bereikt, springt vervolgens naar de laatste cilinder in de tegenovergestelde richting zonder enig verzoek te beantwoorden, draait vervolgens terug en begint in die richting te bewegen het afhandelen van de resterende verzoeken.

Voorbeeld

Beschouw de volgende reeks schijfverzoeken voor een schijf met 100 tracks

98, 137, 122, 183, 14, 133, 65, 78

Hoofdwijzer begint bij 54 en beweegt in linkse richting. Vind het aantal hoofdbewegingen in cilinders met behulp van C-SCAN-planning.


OS SCAN- en C-SCAN-algoritme1

Aantal gekruiste cilinders = 40 + 14 + 199 + 16 + 46 + 4 + 11 + 24 + 20 + 13 = 387