Proces jest wykonywanym programem. Komputer powinien wykonywać wiele zadań jednocześnie. Dlatego procesor powinien pobrać procesy i je wykonać. Czasami konieczne jest wykonanie niektórych procesów niż innych. W tym momencie uruchomiony proces zostaje przerwany, a procesor zostaje przydzielony do nowego procesu. Po zakończeniu zadania procesor zostaje przydzielony z powrotem do poprzedniego procesu. Planowanie według tego mechanizmu jest znane jako planowanie wyprzedzające. Jeśli uruchomionego procesu nie można przerwać i jego wykonanie jest obowiązkowe, wówczas jest to znane jako planowanie zapobiegawcze. W tym artykule omówiono różnicę między planowaniem wyprzedzającym a nieprzewidzianym w systemie operacyjnym. Zaplanowanie wyprzedzające to mechanizm szeregowania procesów, za pomocą którego proces może zostać przerwany przez inny proces w trakcie jego wykonywania. Nieprzewidziane planowanie jest mechanizmem planowania procesu, za pomocą którego jeden proces rozpoczyna wykonywanie dopiero po zakończeniu poprzedniego procesu. To jest kluczowa różnica pomiędzy Zapobiegawcze i nieprzewidywalne planowanie w systemie operacyjnym.
1. Przegląd i kluczowa różnica
2. Co to jest planowanie wyprzedzające w systemie operacyjnym
3. Co to jest planowanie zapobiegawcze w systemie operacyjnym
4. Podobieństwa między harmonogramem wyprzedzającym a nieprzewidzianym w systemie operacyjnym
5. Porównanie obok siebie - Harmonogram wyprzedzający vs nieprewencyjny w systemie operacyjnym w formie tabelarycznej
6. Podsumowanie
Round Robin Scheduling jest przykładem planowania wyprzedzającego. Każdy proces ma niewielką ilość czasu procesora. Zwykle jest to 10 do 100 milisekund. Ta mała jednostka danych jest również znana jako kwant czasowy. Po upływie tego czasu proces jest wyprzedzany i dodawany na końcu gotowej kolejki. Załóżmy, że istnieją 4 procesy jak P1, P2, P3 i P4. Czasy impulsów procesora w milisekundach są następujące. Kwant czasowy wynosi 20.
Rysunek 01: Przykład harmonogramowania Round Robin
Proces P1 jest wykonywany do 20. Pozostały jeszcze 33 ms. Następnie P2 wykonuje. Ponieważ kwant czasu wynosi 20, a wymagany czas P2 wynosi 17 ms, P2 będzie działać przez 17 ms. Proces P2 został zakończony. Następnie daje szansę P3. Będzie działać przez 20 ms. Reszta to 48ms. Następnie P4 będzie działać przez 20 ms. Ma 4 ms na zakończenie całego procesu. Ponownie P1 będzie działał przez 20 ms. Ma jeszcze 13ms na zakończenie procesu. Zmiana jest podana w P3. Będzie działać przez 20 ms i ma kolejne 28 ms na całkowite zakończenie. P4 wykonuje się. Ma tylko 4ms. Dlatego P4 kończy wykonywanie. P2 i P4 już się zakończyły. Pozostałe procesy to P1 i P3. Szansa jest przyznana P3. Miał 13 ms do ukończenia, więc się kończy. Teraz jedynym pozostałym procesem jest P3. Ma 28 ms do ukończenia. Więc P3 będzie działał przez 20 ms. Reszta to 8ms. Wszystkie pozostałe procesy zostały już zakończone. Dlatego ponownie wykona się pozostałe 8 ms P3. Podobnie każdy proces ma szansę na wykonanie.
Planowanie kto pierwszy ten lepszy (FCFS) może być traktowane jako przykład planowania zapobiegawczego. Proces, który najpierw żąda, jest najpierw przydzielany do procesora. Tym harmonogramem można łatwo zarządzać za pomocą kolejki First In First Out (FIFO). Jeśli są procesy uporządkowane jako P1, P2 i P3, wówczas szansa jest najpierw przyznawana P1. Po zakończeniu P2 uruchomi się. Po zakończeniu P2, P3 wykona się. Załóżmy, że istnieją 3 procesy jak P1, P2 i P3 z czasami synchronizacji CPU w milisekundach w następujący sposób.
Rysunek 02: Przykład planowania FCFS
Zgodnie z powyższym P1 wykona się. Po zakończeniu proces P2 jest wykonywany przez 3 ms. Pozostały proces to P3. To się wykona. Czas oczekiwania na P1 wynosi zero. Proces P2 musiał czekać 24 ms, a proces P3 musiał czekać 27 ms. Jeśli procesy dotarły w kolejności P2, P3 i P1, P2 zostanie zakończone jako pierwsze. Następne P3 zakończy się, a na koniec P1 zakończy się.
Planowanie wyprzedzające a nieprecyzyjne w systemie operacyjnym | |
Zaplanowanie wyprzedzające to mechanizm szeregowania procesów, za pomocą którego proces może zostać przerwany przez inny proces w trakcie jego wykonywania. | Nieprzewidziane planowanie jest mechanizmem planowania procesu, za pomocą którego jeden proces rozpoczyna wykonywanie dopiero po zakończeniu poprzedniego procesu. |
Przerwanie procesu | |
W przypadku planowania wyprzedzającego procesy mogą zostać przerwane. | W nieprzewidzianym harmonogramie procesy mogą zostać przerwane. |
Zużycie procesora | |
W przypadku planowania wyprzedzającego wykorzystanie procesora jest większe niż planowanie wyprzedzające. | W przypadku planowania wyprzedzającego wykorzystanie procesora jest minimalne w porównaniu do planowania wyprzedzającego. |
Elastyczność | |
Planowanie wyprzedzające jest elastyczne. | Nieprzewidziane planowanie nie jest elastyczne. |
Na komputerze działa wiele procesów. Po wykonaniu każdego procesu procesor jest przydzielany do tego konkretnego procesu. Czasami konieczne jest zatrzymanie wykonywania bieżącego procesu i nadanie priorytetu innemu procesowi. Mechanizmy szeregowania procesów mogą być wyprzedzające lub nieprzewidywalne. Zaplanowanie wyprzedzające to mechanizm szeregowania procesów, za pomocą którego proces może zostać przerwany przez inny proces w trakcie jego wykonywania. Nieprzewidziane planowanie jest mechanizmem planowania procesów, który jednak jeden proces rozpoczyna wykonywanie dopiero po zakończeniu poprzedniego procesu. Jest to różnica między planowaniem wyprzedzającym a nieprzewidzianym w systemie operacyjnym.
Możesz pobrać wersję PDF tego artykułu i używać go do celów offline zgodnie z cytatem. Pobierz wersję PDF tutaj: Różnica między planowaniem wyprzedzającym a nieprzewidzianym w systemie operacyjnym
1. Co to jest harmonogram wyprzedzający i nieprzeszkadzający? Dostępny tutaj
2.Punkt, samouczki. „Algorytmy planowania systemu operacyjnego.”, Tutorials Point. 8 stycznia 2018 r. Dostępne tutaj
3. „Jakie są warunki wyprzedzające i nieprzeszkadzające w kontekście systemu operacyjnego?” Pytania i odpowiedzi dotyczące GeeksforGeeks. Dostępny tutaj