Plánování úloh a procesů v dávkových systémech
Z FAV wiki
(Rozdíly mezi verzemi)
(→Shortest Job First (SJF)) |
|||
| Řádka 12: | Řádka 12: | ||
* Předpoklad, že je předem známá doba vykonávání úlohy | * Předpoklad, že je předem známá doba vykonávání úlohy | ||
* Nepreemptivní, jedna fronta příchozích úloh, plánovač vybere vždy úlohu s nejkratší dobou běhu | * Nepreemptivní, jedna fronta příchozích úloh, plánovač vybere vždy úlohu s nejkratší dobou běhu | ||
| − | + | * Nevýhodou je, že na dlouho trvající úlohy se nemusí vůbec dostat | |
== Shortest Remaining Time (SRT) == | == Shortest Remaining Time (SRT) == | ||
Verze z 23. 8. 2011, 23:07
Obsah |
First-Come First-Served (FCFS)
- Někdy používán název FIFO
- Zpracování podle času příchodu úlohy, „kdo dřív přijde, ten dřív mele“
- Nepreemptivní FCFS je nejjednodušší plánovací algoritmus
- Je spravedlivý
Shortest Job First (SJF)
- Předpoklad, že je předem známá doba vykonávání úlohy
- Nepreemptivní, jedna fronta příchozích úloh, plánovač vybere vždy úlohu s nejkratší dobou běhu
- Nevýhodou je, že na dlouho trvající úlohy se nemusí vůbec dostat
Shortest Remaining Time (SRT)
- Preemptivní varianta SJF
- Plánovač vždy vybere úlohu, jejíž zbývající doba běhu je nejkratší
- Např. právě prováděné úloze to bude trvat 10 min., do systému přijde úloha trvající 1 minutu - systém prováděnou úlohu pozastaví a nechá běžet novou úlohu
- Problém: možnost vyhladovění úloh
Multilevel Feedback
- N rozdílných prioritních úrovní, každá úroveň má svou frontu úloh
- Úloha vstoupí do systému s nejvyšší prioritou
- Na každé prioritní úrovni je stanoveno maximu času CPU, které může úloha na této úrovni obdržet
- Pokud úloha překročí limit, její priorita se sníží
- Na nejnižší úrovni může proces běžet neustále nebo může být překročení považováno za chybu
- Procesor obsluhuje nejvyšší neprázdnou frontu
- Výhoda: rozlišuje mezi I/O a CPU úlohami (upřednostňuje I/O)