Junior — Middle
Kas saaksite selgitada ülesannete planeerija toimimise mehhanismi operatsioonisüsteemis?
sobes.tech AI
Vastus AI-lt
Tööde ajastaja (scheduler) operatsioonisüsteemis vastutab protsessori aja jaotamise eest käimasolevate protsesside ja voogude vahel. Selle peamine eesmärk on tagada CPU ressursside tõhus ja õiglane kasutamine.
Põhiprintsiibid:
- Valmis protsesside järjekord — ajastaja hoiab nimekirja protsessidest, mis on valmis täitmiseks.
- Järgmise protsessi valimine — plaanimisalgoritmi (nt Round Robin, prioriteedid, mitmetasandilised järjekorrad) alusel valitakse järgmine protsess.
- Aja kvant — igale protsessile määratakse kindel ajavahemik (kvant), mille järel võib juhtimine üle minna teisele protsessile.
- Katkestuste ja sündmuste töötlemine — ajastaja reageerib sündmustele, nagu protsessi lõpetamine, sisendi/väljundi blokeerimine, ning uuendab järjekordade olekut.
Näide Round Robin algoritmist:
// Round Robin ajastaja pseudokood
for {
for _, protsess := range valmisJärjekord {
täidaProtsess(protsess, ajakvant)
if protsess.onLõppenud() {
eemaldaJärjekorrast(protsess)
} else {
liiguJärjekorraLõppu(protsess)
}
}
}
Sel viisil tagab ajastaja mitmeülesannalise töö ja süsteemi reageerimisvõime.