Opis różnych algorytmów przydziału procesora

Nasza ocena:

3
Wyświetleń: 735
Komentarze: 0
Notatek.pl

Pobierz ten dokument za darmo

Podgląd dokumentu
Opis różnych algorytmów przydziału procesora - strona 1 Opis różnych algorytmów przydziału procesora - strona 2 Opis różnych algorytmów przydziału procesora - strona 3

Fragment notatki:


Systemy operacyjne wykład 5. Planowanie przydziału procesora Opracowano na podst.: Operating System Concepts – 8th Edition, Silberschatz, Galvin and Gagne ©2009 Opracowano na podst.: Operating System Concepts – 8th Edition, Silberschatz, Galvin and Gagne ©2009 1.2 Wykład 5:  Planowanie przydziału  procesora ( CPU Scheduling ) • Pojęcia podstawowe • Kryteria planowania • Algorytmy planowania • Szeregowanie wątków • Planowanie wieloprocesorowe ( Multiple-Processor Scheduling ) • Przykłady dla róŜnych s.o. • Ocena algorytmów Opracowano na podst.: Operating System Concepts – 8th Edition, Silberschatz, Galvin and Gagne ©2009 1.3 Cele • Wprowadzenie pojęcia planowania przydziału procesora, które jest podstawą wieloprogramowych systemów operacyjnych • Opisanie róŜnych algorytmów przydziału procesora • Przedyskutowanie kryteriów oceny wyboru algorytmu planowania przydziału  procesora dla określonego systemu Opracowano na podst.: Operating System Concepts – 8th Edition, Silberschatz, Galvin and Gagne ©2009 1.4 Pojęcia podstawowe • Maksymalizacja wykorzystania CPU w systeamch wieloprogramowych • Cykl fazy procesora i fazy we/wy ( CPU–I/O Burst Cycle ) – Wykonanie procesu  składa się z cykli działania CPU i oczekiwania na we/wy • Rozkład czasów faz procesora Opracowano na podst.: Operating System Concepts – 8th Edition, Silberschatz, Galvin and Gagne ©2009 1.5 Rozkład czasów faz procesora Opracowano na podst.: Operating System Concepts – 8th Edition, Silberschatz, Galvin and Gagne ©2009 1.6 Naprzemienny ciąg faz procesora i we/wy Opracowano na podst.: Operating System Concepts – 8th Edition, Silberschatz, Galvin and Gagne ©2009 1.7 Planista przydziału procesora ( CPU  Scheduler ) • Wybiera jeden proces spośród procesów w pamięci gotowych do wykonania i  przydziel mu procesor • Decyzje o przydziale procesora mogą zapadać, gdy proces: 1. Przechodzi ze stanu aktywności do stanu oczekiwania 2. Przechodzi ze stanu aktywności do stanu gotowości 3. Przechodzi ze stanu oczekiwania do stanu gotowości 4. Kończy działanie • Planowanie w sytuacjach 1 i 4 jest niewywłaszczające  ( nonpreemptive ) • W pozostałych sytuacjach planowanie jest wywłaszczające ( preemptive ) Opracowano na podst.: Operating System Concepts – 8th Edition, Silberschatz, Galvin and Gagne ©2009 1.8 Ekspedytor ( Dispatcher ) • Moduł ekspedytora przekazuje CPU procesowi wybranemu przez planistę  krótkoterminowego. Do jego obowiązków naleŜy:

(…)

… and Gagne ©2009
1.30
API planowania P-wątków
/* now join on each thread */
for (i = 0; i < NUM THREADS; i++)
pthread_join(tid[i], NULL);
}
/* Each thread will begin control in this function */
void *runner(void *param)
{
printf("I am a thread\n");
pthread exit(0);
}
Opracowano na podst.: Operating System Concepts – 8th Edition, Silberschatz, Galvin and Gagne ©2009
1.31
Planowanie wieloprocesorowe
• Planowanie dostępu do procesora bardziej złoŜone w przypadku
wieloprocesorowym
• Homogeniczne procesory
• Wieloprzetwarzanie asymetryczne (Asymmetric multiprocessing) – tylko
jeden z procesorów ma dostęp do systemowych struktur danych, co
zmniejsza potrzebę współdzielenia danych
• Wieloprzetwarzanie symetryczne (Symmetric multiprocessing) (SMP) –
kaŜdy z procesorów ma własne planowanie, wszystkie procesy…
… 1, kaŜdy następny
składnik ma mniejszą wagę niŜ jego poprzednik
Opracowano na podst.: Operating System Concepts – 8th Edition, Silberschatz, Galvin and Gagne ©2009
1.17
Planowanie priorytetowe
• Priorytet (liczba całkowita) jest przypisana kaŜdemu procesowi
• Procesor jest przydzielany procesowi o najwyŜszym priorytecie
– Wywłaszczające (Preemptive)
– Niewywłaszczające (nonpreemptive)
• SJF…
… uŜytkownika w
celu wznowienia wykonywania programu
• Opóźnienie ekspedycji (Dispatch latency) – czas, który potrzebuje
ekspedytor do wstrzymania jednego procesu i uaktywnieniu innego
Opracowano na podst.: Operating System Concepts – 8th Edition, Silberschatz, Galvin and Gagne ©2009
1.8
Kryteria planowania
• Wykorzystanie procesora (CPU utilization) – utrzymywanie CPU w stanie
maksymalnej moŜliwej zajętości…
... zobacz całą notatkę



Komentarze użytkowników (0)

Zaloguj się, aby dodać komentarz