W tym samouczku nauczymy się najbardziej wydajnego algorytmu planowania procesów procesora o nazwie Round Robin Process Scheduling. Algorytm ten jest wyjątkowy, ponieważ usunie wszystkie wady, które wykryliśmy w poprzednich algorytmach planowania procesów procesora.
wielopostaciowość
Planowanie procesora Round Robin cieszy się dużą popularnością, ponieważ Round Robin działa tylko w stanie Pre-Emptive. Dzięki temu jest bardzo niezawodny.
Ważne skróty
- Procesor - - - > Jednostka centralna
- W - - - > Czas przybycia
- BT - - - > Czas wybuchu
- WT - - - > Czas oczekiwania
- TAT - - - > Czas zwrotu
- CT - - - > Czas zakończenia
- FIFO - - - > Pierwsze weszło, pierwsze wyszło
- TQ - - - > Kwant czasu
Harmonogramowanie procesora metodą okrężną
Round Robin CPU Scheduling to najważniejszy algorytm planowania procesora, jaki kiedykolwiek był używany w historii algorytmów planowania procesora. Okrężne planowanie procesora wykorzystuje kwant czasu (TQ). Kwant Czasu jest czymś, co jest usuwane z Czasu Burst i pozwala na zakończenie fragmentu procesu.
Głównym założeniem algorytmu jest podział czasu. Każdy krok tego algorytmu realizowany jest cyklicznie. System definiuje konkretny przedział czasu, zwany kwantem czasu.
W pierwszej kolejności do kolejki gotowych trafiają procesy zakwalifikowane do kolejki gotowych. Po wejściu na pierwszy proces w Ready Queue wykonywany jest fragment czasu Time Quantum. Po zakończeniu realizacji proces jest usuwany z kolejki gotowych. Nawet teraz proces potrzebuje trochę czasu na zakończenie swojej realizacji, po czym jest dodawany do kolejki gotowych.
Kolejka Gotowych nie przechowuje procesów, które już znajdują się w Kolejce Gotowych. Gotowa kolejka jest zaprojektowana w taki sposób, że nie przechowuje nieunikalnych procesów. Trzymając te same procesy, zwiększa się redundancja procesów.
Po zakończeniu wykonywania procesu kolejka gotowych nie przyjmuje zakończonego procesu do wstrzymania.
Zalety
Zalety planowania procesora okrężnego to:
podciąg w Javie
- Do każdego zadania przydzielana jest odpowiednia ilość procesora.
- Ponieważ nie zależy to od czasu trwania serii, można to naprawdę zaimplementować w systemie.
- Nie ma na niego wpływu efekt konwoju ani problem głodu, jaki wystąpił w algorytmie planowania procesora „kto pierwszy, ten lepszy”.
Niedogodności
Wady planowania procesora okrężnego to:
- Niskie czasy dzielenia systemu operacyjnego spowodują zmniejszenie wydajności procesora.
- Podejście Round Robin CPU Scheduling zajmuje więcej czasu na wymianę kontekstów.
- Kwant czasu ma istotny wpływ na jego wydajność.
- Procedury nie mogą mieć ustalonych priorytetów.
Przykłady:
S. No Process ID Arrival Time Burst Time _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1 P 1 0 7 2 P 2 1 4 3 P 3 2 15 4 P 4 3 11 5 P 5 4 20 6 P 6 4 9
Załóżmy, że kwant czasu TQ = 5
Gotowa kolejka:
sortowanie listy według Java
P1, P2, P3, P4, P5, P6, P1, P3, P4, P5, P6, P3, P4, P5
Wykres Gantta:
Średni czas realizacji
Average Completion Time = ( 31 +9 + 55 +56 +66 + 50 ) / 6 Average Completion Time = 267 / 6 Average Completion Time = 44.5
Średni czas oczekiwania
Average Waiting Time = ( 5 + 26 + 5 + 42 + 42 + 37 ) / 6 Average Waiting Time = 157 / 6 Average Waiting Time = 26.16667
Średni czas zwrotu
PowerShell vs Bash
Average Turn Around Time = ( 31 + 8 + 53 + 53 + 62 + 46 ) / 6 Average Turn Around Time = 253 / 6 Average Turn Around Time = 42.16667