Sobes.tech
Junior — Middle

Môžete vysvetliť mechanizmus fungovania plánovača úloh v operačnom systéme?

sobes.tech AI

Odpoveď od AI

Plánovač úloh (scheduler) v operačnom systéme je zodpovedný za rozdeľovanie procesorového času medzi spustené procesy a vlákna. Jeho hlavný cieľ je zabezpečiť efektívne a spravodlivé využívanie zdrojov CPU.

Hlavné princípy fungovania:

  • Fronta pripravených procesov — plánovač udržiava zoznam procesov, ktoré sú pripravené na vykonanie.
  • Výber procesu na vykonanie — na základe plánovacieho algoritmu (napríklad Round Robin, priority, viacúrovňové fronty) sa vyberie nasledujúci proces.
  • Časové kvantum — každému procesu je pridelené určité časové obdobie (kvantum), po ktorom môže prejsť riadenie na iný proces.
  • Spracovanie prerušení a udalostí — plánovač reaguje na udalosti ako ukončenie procesu, blokovanie na vstup/výstup, aby aktualizoval stav front.

Príklad algoritmu Round Robin:

// Pseudokód plánovača Round Robin
for {
    for _, proces := range frontaPripravených {
        spustiProces(proces, časovéKvantum)
        if proces.jeDokončený() {
            odstrániZoZoznamu(proces)
        } else {
            presuňNaKoniec(fronta, proces)
        }
    }
}

Týmto spôsobom plánovač zabezpečuje multitasking a rýchlu odozvu systému.