05 - Procesy a vlákna - plánování
Níže je uveden pouze náhled materiálu. Kliknutím na tlačítko 'Stáhnout soubor' stáhnete kompletní formátovaný materiál ve formátu PDF.
Kooperativní plánování (= nepreemptivní)
Přepnutí kontextu při jedné z událostí:
1. běžící proces/vlákno přejde do stavu blokovaný
2. běžící proces/vlákno skončí
3. běžící proces/vlákno vytvoří nový proces/vlákno (nevynucuje přeplánování)
4. běžící proces/vlákno se dobrovolně vzdá procesoru
Kooperativní plánování neumožňuje přerušení běžícího procesu/vlákna
a přidělení procesoru novému procesu/vláknu!
A7B38UOS Úvod do operačních systémů 05 - Procesy a vlákna - plánování
On-line plánování– základní algoritmy 1
FCFS – First Come First Served:základní algoritmus dávkového zpracování
•
procesy plánovány v pořadí, v jakém
přicházejí
•
Nepreemptivní
Zpracování pěti procesů ( viz [1]):
0
5
10
15
20
1
2
3
4
5
2
8
5
5
6
4
4
4
3
6
2
2
3
0
1
Service
Arrival
Process
Viz [1]
A7B38UOS Úvod do operačních systémů 05 - Procesy a vlákna - plánování
On-line plánování – základní algoritmy 2
RR – Round Robin:
algoritmus je založen na cyklickém přepínání
procesů/vláken. Po dobu časového kvanta (time slice,
quantum) je proces zpracováván procesorem. Pak dojde
k přepnutí kontextu (na jiný proces).
• preemptivní plánování
• fairness
• předpokladá se stejná priorita všech procesů/vláken
0
5
10
15
20
1
2
3
4
5
2
8
5
5
6
4
4
4
3
6
2
2
3
0
1
Service
Arrival
Process
Viz [1]
A7B38UOS Úvod do operačních systémů 05 - Procesy a vlákna - plánování
On-line plánování – základní algoritmy 3
PP – prioritní plánování (Priority Schedulling):• algoritmus je založen na přepínání procesů/vláken na základě priorit jednotlivých
procesů/vláken
• CPU zpracovává proces/vlákno s nejvyšší prioritou (preemtivně/nepreemptivně)
Priorita: číslo typu integer přidělené každému procesu/vláknu
• Statická – konstantní během provádění procesu
• Dynamická - může se měnit během provádění procesu (změnu provádí jádro,
tedy plánovač, v závislosti na systémových cílech)
• Kombinovaná - proces má obě priority, základní plánování podle statické priority,
z více procesů se stejnou statickou prioritu, dostane procesor proces s vyšší
dynamickou prioritou.
A7B38UOS Úvod do operačních systémů 05 - Procesy a vlákna - plánování
On-line plánování – základní algoritmy 4