Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky

Domáce Hardware Siete Programovanie Softvér Otázka Systémy

Čo sú to nepreemptívne algoritmy?

V nepreemptívnom plánovaní, keď proces začne vykonávať svoju činnosť, nemôže byť preemptovaný iným procesom skôr, ako dokončí svoje vykonávanie alebo dobrovoľne neuvoľní CPU.

Takto fungujú nepreemptívne algoritmy:

1. Výber procesu:

- Plánovač vyberá ďalší proces, ktorý sa má vykonať, na základe plánovacích zásad, ako je FCFS, najkratšia úloha ako prvá (SJF) alebo akýkoľvek iný plánovací algoritmus.

2. Neprerušiteľné vykonávanie:

- Akonáhle sa proces začne vykonávať, nemôže byť prerušený iným procesom. To znamená, že vybraný proces bude pokračovať vo vykonávaní, kým nedokončí svoje vykonávanie alebo sa dobrovoľne nevzdá CPU (napr. vykonaním I/O operácie).

3. Žiadne predkupné právo:

- Kým prebieha aktuálny proces, žiadny iný proces mu nemôže odobrať CPU. To zaisťuje dokončenie procesov bez prerušenia procesmi s vyššou prioritou.

4. Dokončenie:

- Proces pokračuje vo vykonávaní svojich pokynov, kým nedokončí vykonávanie alebo nedosiahne stav, kedy je zablokovaný (čakanie na I/O alebo nejaký zdroj). Po dokončení procesu je CPU k dispozícii na plánovanie ďalšieho procesu.

Nepreemptívne plánovacie algoritmy sa implementujú jednoduchšie ako preemptívne, pretože nie je potrebné časté prepínanie kontextu. Môžu však viesť k nižšej efektívnosti systému a suboptimálnemu výkonu, pretože procesy s vyššou prioritou môžu čakať, kým procesy s nižšou prioritou dokončia svoju realizáciu.

Príklady nepreemptívnych plánovacích algoritmov zahŕňajú:

- Kto príde, ten prv berie (FCFS): Procesy sa vykonávajú v poradí, v akom prichádzajú, bez zohľadnenia ich priority alebo požiadaviek na zdroje.

- Najskôr najkratšia úloha (SJF) bez preempcie: Tento algoritmus vyberie proces s najkratším odhadovaným časom vykonania pre ďalšie vykonanie. Akonáhle však proces začne vykonávať, nemôže byť prerušený iným procesom, aj keď tento príde neskôr s kratším odhadovaným časom vykonania.

Najnovšie články

Copyright © počítačové znalosti Všetky práva vyhradené