Životní cyklus procesu

Z MiS
(Rozdíly mezi verzemi)
Přejít na: navigace, hledání
(Vytvoření stránky)
 
(Doplněn text)
Řádka 1: Řádka 1:
 
[[Category:VSE]][[Category:Informatika]][[Category:Stránky s obrázky]]
 
[[Category:VSE]][[Category:Informatika]][[Category:Stránky s obrázky]]
<div class="NaStred">
+
<div class="NaStred">[[Image:stavy_procesu.png]]</div>
[[Image:stavy_procesu.png]]
+
== Stavy procesu ==
</div>
+
Stavy procesu
 +
INIT &mdash; Created (new)
 +
*Program byl spuštěn.
 +
*Úkoly:
 +
**Načte z disku kód programu do paměti
 +
**Vyhradí paměť pro data
 +
**Přiřadí PID
 +
**Zapíše do tabulky procesů
 +
**Kopíruje se prostředí rodičovského procesu.
 +
**...
 +
READY &mdash; Ready in memory
 +
*Proces je připraven a může být prováděn.
 +
RUNNING
 +
* User running × kernel running
 +
BLOCKED &mdash; Sleeping in memory (blocked)
 +
*Proces čeká na data, která dorazí až za dlouho.
 +
*Nebo proces požádal, aby počkal danou dobu (Thread.sleep(200))
 +
*Příklad:
 +
**Zapisuje do roury a buffer je zaplněn.
 +
Swapped
 +
*Data procesu jsou odloženy na disku, protože není v paměti dost místa.
 +
*Ready swapped (ready-suspended)
 +
*BLOCKED/SWAPPED &mdash; Sleeping swapped (blocked-suspended)
 +
Zombie
 +
 
 +
== Plánovač (scheduler) ==
 +
*Součást jádra, zajišťuje přepínání procesů zařizuje součást jádra.
 +
 
 +
;Požadavky
 +
*fairness
 +
**všechny procesy by měly dostat přibližně stejný prostor...
 +
**ale priority jsou možné
 +
*efficiency
 +
**omezit čas, který využívá OS sám.
 +
*odezva
 +
**uživatel by měl mít pocit, že všechny procesy reagují hned.
 +
*turnaround
 +
**dávky úloh by měly skončit co nejdříve
 +
*propustnost
 +
**maximalizovat počet dokončených úloh

Verze z 18. 9. 2013, 09:39

Stavy procesu.png

Stavy procesu

Stavy procesu INIT — Created (new)

READY — Ready in memory

RUNNING

BLOCKED — Sleeping in memory (blocked)

Swapped

Zombie

Plánovač (scheduler)

Požadavky
Osobní nástroje
Jmenné prostory
Varianty
Akce
Výuka
Navigace
Nástroje