Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky
Medzi hlavné zodpovednosti plánovača patrí:
* Výber procesu na vykonanie: Zo súboru procesov pripravených na spustenie (buď čakajúc v pripravenom fronte alebo novoprijatie) si plánovač vyberie proces „ďalšieho“, ktorý pridelí čas CPU. Algoritmus použitý na uskutočnenie tohto výberu je kľúčovým aspektom dizajnu plánovača.
* prepínanie medzi procesmi (prepínanie kontextu): Keď sa plánovač rozhodne prepnúť na iný proces, uloží stav aktuálneho procesu (registre, pamäťové ukazovatele atď.) A načíta stav vybraného procesu. To umožňuje procesom plynulo pokračovať v vykonávaní, odkiaľ skončili.
* Priority riadenia procesu: Mnoho plánovačov priraďuje priority procesom a uprednostňuje dôležitejšie alebo naliehavé úlohy. Procesy s vysokou prioritou môžu získať viac času CPU ako procesy s nízkou prioritou.
* Presadzovanie spravodlivosti (niekedy): Aj keď je potrebné uprednostňovať určité úlohy, dobrý plánovač sa snaží spravodlivo distribuovať čas CPU medzi všetky procesy, aby sa zabránilo hladovaniu (situácia, v ktorej sa proces nikdy nebude behať).
* Manipulácia s I/O operácie: Keď proces iniciuje operáciu I/O (napríklad čítanie z disku), môže sa zablokovať. Plánovač potom môže prepnúť na iný proces, čím sa zlepšuje reakcia systému.
Typy algoritmov plánovania:
Špecifický algoritmus používaný plánovačom procesu výrazne ovplyvňuje jeho výkon a charakteristiky. Rôzne algoritmy ponúkajú rôzne kompromisy, napríklad:
* prvé, prvé, prvé (FCFS): Jednoduché, ale môže viesť k dlhým čakacím časom na kratšie procesy.
* najkratšia práca ako prvá (sjf): Minimalizuje priemernú čakaciu dobu, ale vyžaduje si vopred poznanie času vykonávania každého procesu.
* Plánovanie priority: Uprednostňuje procesy na základe dôležitosti. Môže viesť k hladovaniu procesov s nízkou prioritou.
* Round Robin: Každý proces dostane malý časový kúsok (kvantový) čas CPU pred vylúčením.
* Plánovanie viacúrovňového frontu: Procesy sa rozdeľujú do frontov s rôznymi prioritami a algoritmami plánovania.
* Plánovanie frontov viacúrovňovej spätnej väzby: Procesy môžu migrovať medzi frontmi na základe ich správania (napr.
Stručne povedané, plánovač procesov je základnou súčasťou operačného systému, ktorý je zodpovedný za efektívne pridelenie zdrojov CPU medzi konkurenčné procesy a maximalizáciu priepustnosti a reakcie systému. Výber algoritmu plánovania výrazne ovplyvňuje celkový výkon a spravodlivosť systému.