Planowanie procesów w systemie operacyjnym: harmonogram długo-, średnio- i krótkoterminowy
⚡ Inteligentne podsumowanie
Harmonogramowanie procesów to zadanie systemu operacyjnego, które zarządza procesami w stanach gotowości, oczekiwania i wykonania. Przydziela czas procesora każdemu procesowi, utrzymuje obciążenie procesora i skraca czas reakcji za pomocą harmonogramów długoterminowych, średnioterminowych i krótkoterminowych.
Co to jest planowanie procesu?
Planowanie procesów jest zadaniem systemu operacyjnego, które planuje procesy o różnych stanach, takich jak gotowość, oczekiwanie i uruchomienie.
Harmonogramowanie procesów pozwala systemowi operacyjnemu przydzielić każdemu procesowi określony przedział czasu na wykonanie procesora. Innym ważnym powodem korzystania z systemu harmonogramowania procesów jest to, że utrzymuje on procesor w ciągłym zajęciu. Pozwala to uzyskać minimalny czas reakcji programów.
Kolejki planowania procesów
Kolejki planowania procesów pomagają utrzymać odrębną kolejkę dla każdego stanu procesu i PCB. Wszystkie procesy o tym samym stanie wykonania są umieszczane w tej samej kolejce. Dlatego za każdym razem, gdy stan procesu zostanie zmodyfikowany, jego PCB musi zostać odłączone od istniejącej kolejki i przeniesione z powrotem do nowej kolejki stanu.
Istnieją trzy typy kolejek systemu operacyjnego:
- Kolejka zadań – Pomaga przechowywać wszystkie procesy w systemie.
- Gotowa kolejka – Ten typ kolejki pomaga ustawić każdy proces znajdujący się w pamięci głównej, który jest gotowy i czeka na wykonanie.
- Kolejki urządzeń – Jest to proces blokowany z powodu braku urządzenia wejścia/wyjścia.

Na powyższym schemacie:
- Prostokąt przedstawia kolejkę.
- Kółko oznacza zasób.
- Strzałka wskazuje przebieg procesu.
- Każdy nowy proces jest najpierw umieszczany w kolejce „Gotowy”. Czeka w niej, aż zostanie ostatecznie przetworzony i uruchomiony. W tym przypadku nowy proces jest umieszczany w kolejce „Gotowy” i czeka, aż zostanie wybrany do uruchomienia lub wysłany.
- Jednemu z procesów przydzielono procesor i jest on wykonywany.
- Proces powinien wysłać żądanie wejścia/wyjścia.
- Następnie należy umieścić go w kolejce wejścia/wyjścia.
- Proces powinien utworzyć nowy podproces.
- Proces powinien czekać na zakończenie.
- Powinien zostać usunięty siłą z procesora w wyniku przerwania. Po zakończeniu przerwania powinien zostać odesłany z powrotem do kolejki zadań gotowych.
Model procesu dwustanowego
Dwustanowe modele procesów to:
- Stan pracy
- Stan nieaktywny
Bieganie
W Operasystem tinguza każdym razem, gdy budowany jest nowy proces, jest on wprowadzany do systemu, który powinien działać.
Nie działa
Procesy, które nie są uruchomione, są przechowywane w kolejce, która czeka na swoją kolej do wykonania. Każdy wpis w kolejce wskazuje na konkretny proces.
Cele planowania
Oto najważniejsze cele harmonogramowania procesów:
- Maksymalizuj liczbę interaktywnych użytkowników w akceptowalnym czasie reakcji.
- Osiągnij równowagę pomiędzy reakcją i wykorzystaniem.
- Unikaj odroczenia na czas nieokreślony i egzekwuj priorytety.
- Powinien także odnosić się do procesów przechowujących kluczowe zasoby.
Typ harmonogramów procesów
Harmonogram to rodzaj oprogramowania systemowego, które pozwala na obsługę planowania procesów.
Istnieją trzy typy harmonogramów procesów:
- Harmonogram długoterminowy
- Harmonogram krótkoterminowy
- Harmonogram średnioterminowy
Harmonogram długoterminowy
Harmonogram długoterminowy znany jest również jako planista pracyTen harmonogram reguluje program, wybiera procesy z kolejki i ładuje je do pamięci w celu wykonania. Reguluje również stopień wieloprogramowości.
Jednak głównym celem tego typu harmonogramu jest oferowanie zrównoważonego połączenia zadań, takich jak zadania procesora i wejścia/wyjścia, co pozwala na zarządzanie wieloma programami.
Harmonogram średnioterminowy
Planowanie średnioterminowe jest ważną częścią zamianapingUmożliwia obsługę procesów, które zostały zamienione. W tym harmonogramie uruchomiony proces może zostać zawieszony, co powoduje żądanie wejścia/wyjścia.
Działający proces może zostać zawieszony, jeśli zgłosi żądanie wejścia/wyjścia. Zawieszony proces nie może poczynić żadnych postępów w kierunku zakończenia. Aby usunąć proces z pamięci i zwolnić miejsce dla innych procesów, zawieszony proces powinien zostać przeniesiony do pamięci podręcznej.
Harmonogram krótkoterminowy
Krótkoterminowe planowanie jest również znane jako Harmonogram procesoraGłównym celem tego harmonogramu jest zwiększenie wydajności systemu zgodnie z ustalonymi kryteriami. Umożliwia on wybór z grupy procesów gotowych do wykonania i przydzielenie procesora jednemu z nich. Dyspozytor przekazuje kontrolę nad procesorem procesowi wybranemu przez harmonogram krótkoterminowy.
Różnica między harmonogramami
Długoterminowe kontra krótkoterminowe kontra średnioterminowe:
| Długoterminowy | Krótkoterminowe | Średnioterminowy |
|---|---|---|
| Długoterminowy jest również znany jako harmonogram zadań. | Krótkoterminowy jest również znany jako harmonogram CPU. | Średnioterminowy nazywany jest również swapemping planista. |
| Jest albo nieobecny, albo minimalny w systemie z podziałem czasu. | Jest to nieistotne w kolejności podziału czasu. | Harmonogram ten jest elementem systemów z podziałem czasu. |
| Szybkość jest mniejsza w porównaniu z harmonogramem krótkoterminowym. | Szybkość jest najszybsza w porównaniu z harmonogramem krótko- i średnioterminowym. | Oferuje średnią prędkość. |
| Umożliwia wybranie procesów z puli i przeniesienie ich z powrotem do pamięci. | Wybiera tylko te procesy, które są gotowe do wykonania. | Pomaga odesłać proces z powrotem do pamięci. |
| Zapewnia pełną kontrolę. | Zapewnia mniejszą kontrolę. | Zmniejsza poziom wieloprogramowości. |
Co to jest zmiana kontekstu?
Jest to metoda przechowywania/przywracania stanu procesora na płytce PCB, dzięki czemu wykonywanie procesu można wznowić od tego samego punktu w późniejszym czasie. Metoda przełączania kontekstu jest istotna w przypadku wielozadaniowych systemów operacyjnych.

