Metody Planowania Przydziału Procesora

ALGORYTMY PLANOWANIA PRZYDZIAŁU:

METODA FCFS -(first come first served)

Jest on najprostszym ze znanych algorytmów planowania procesora. Według tego schematu proces, który pierwszy zamówi procesor, pierwszy go otrzyma. Implementację tego algorytmu otrzymuje się przez zastosowanie kolejki FIFO. Blok kontrolny procesu wchodzącego dokolejki jest umieszczany na jej końcu.

Jest to algorytm niewywłaszczający. Po objęciu kontroli nad procesorem proces utrzymuje ją do czasu, aż sam zwolni procesor wskuteg zakończenia swego działania lub zamówienia operacji wejścia-wyjścia.

W algorytmie FCFS, średni czas oczekiwania bywa przeważniedługi.

METODA SJF -(shortest job first)

Algorytm ten wiąże z każdym procesem długość jego najbliższej z przyszłych faz procesora. Gdy procesor staje się dostępny, wówczas zostaje przydzelony procesorowi proces o najkrótszej następnej fazieprocesora.

Algortm SJF może być wywłaszczający lub niewywłaszczający. Konieczność wyboru powstaje wówczas, gdy w kolejce procesów gotowych, podczas, gdy procesor jest zajęty innym procesem, pojawia się proces o krótszej fazie procesora, niż to co jeszcze zostało do wykonania w procesie bieżącym.Algorytm SJF - wywłaszczający usunie wówczas, bierzący proces do kolejki procesów gotowych i przydzieli mu proces o krótszej fazie z kolejki.

Algorytm SJF jest optymalny, tzn daje minimalny średni czas oczekiwania dla danego zbioru procesów. Jednak poważną trudność sprawia określenie długości następnej fazy procesora.

PLANOWANIE PRIORYTETOWE

Każdemu procesowi przypisuje się priorytet, po czym przydziela się procesor temu procesowi, którego priorytet jest najwyższy. Procesy o równych priorytetach planuje się wg. schematu FCFS. (Algorytm SJF jest szczególnym przypadkiem planowania priorytetowego, w którym priorytet jest odwrotnością następnej przewidywanej fazy procesora).

Planowanie priorytetowe może być wywłaszczające lub niewywłaszczające. Priorytet procesu dołączonego do kolejki procesów gotowych jest porównywany z priorytetem procesu aktualnie przetwarzaneo. Algorytm wywłaszczający wywłaszczy proces aktualnie przetwarzany, jeżeli nowo przybyły proces charakteryzuje się wyższym prioryetem, natomiast algorytm niewywłaszczający ustawi nowo przybyły proces z wyższym priorytetem na czole kolejki.

Należy pamiętać też o tym, że w mocno obciążonym systemie komputerowym, przy użyciu planowania priorytetowego z wywłaszczeniem, stały dopływ napływ procesów o wyskich priorytetach może nigdy niedopuścić do wykonania się procesu o priorytecie niskim. Rzwiązaniem tego problemu jest postarzanie priorytetów. Polega ono na podnoszeniu priorytetów procesów długo oczekujących na przydział procesora.

PLANOWANIE ROTACYJNE (RR - round robin)

Algorytm ten zaprojektowano specjalnie do sytemów z podziałem czasu. Jest on podobny do FCFS, z tym, że w celu przełączania procesów dodano do niego wywłaszczenie. Ustala się małą jednostkę czasu (kwant czasu), kolejka procesów gotowych jest traktowana jako kolejka cykliczna. Planista przegląda tę kolejkę ikażdemu procesowi przydziela odcinek czasu nie dłuższy niż kwant czasu.

Wydajność algorytmu rotacyjnego w duzym stopniu zależy od rozmiaru kwantu czasu. Gdy kwant czasu jest bardzo długi, metoda rotacyjna sprowadza się do planowania FCFS, natomiast jeśli kwant czasu jest bardzo mały to planowanie rotacyjne nazywa się dzieleniem procesora i psrawia ono wrażenie, że każdy z n procesów ma własny procesor działający z 1/n szybkości rzeczywistego procesora.

O ile nie zaznaczono inaczej, treść tej strony objęta jest licencją Creative Commons Attribution-ShareAlike 3.0 License