Stáhnout prezentaci
Prezentace se nahrává, počkejte prosím
ZveřejnilVratislav Soukup
1
Uvedení autoři, není-li uvedeno jinak, jsou autory tohoto výukového materiálu a všech jeho částí. Tento projekt je spolufinancován ESF a státním rozpočtem ČR. Název SŠ:SOU Uherský Brod Autoři:Ing. Radim Bublík Název prezentace: (DUMu) Správa procesů Tematická oblast:Operační systémy Ročník: 1. ročník oboru Mechanik opravář motorových vozidel Číslo projektu:CZ.1.07/1.5.00/34.0369 Datum vzniku:19. 3. 2013
2
Záměrem této sady výukových materiálů s názvem Operační systémy je poskytnout žákům potřebné informace o logické struktuře a fundamentálních principech fungování moderních operačních systémů, s nimiž (nebo jejich obdobami) se budou velmi pravděpodobně setkávat po celý svůj život. Jednotlivé DUMy (prezentace a pracovní listy) v této sadě pokrývají vybrané tematické oblasti, které jsou probírány v předmětu Informační a komunikační technologie na naší SŠ. Tato prezentace je konkrétně zaměřena na tematický celek Správa procesů.
3
Správa procesů je složitý mechanismus. Zahrnuje tyto elementy: Evidence procesů Běh procesůa multitasking Multithreading Správa front procesů Přidělování procesoru Komunikace procesů Priorita [1]
4
Program... soubor na vnějším paměťovém médiu, obsahující kód (instrukce) a případně nějaká konstantní data Proces... instance programu určená nejen jeho kódem, ale i dalšími vlastnostmi, jako je jeho stav, priorita, identifikační číslo, programový čítač, přidělené prostředky (včetně paměti), atd. [1]
5
Proces se může nacházet v různých stavech: nový (new) - proces byl právě vytvořen, jsou mu přidělovány prostředky běžící (running) - proces má právě přidělen procesor, jeho kód je vykonáván připravený (ready) - čeká na přidělení procesoru čekající (waiting) - čeká na přístup k I/O prostředku, o který požádal nebo čeká na událost (např. stisknutí klávesy) ukončený (terminated) - proces byl ukončen
6
Správce procesů vede tabulku procesů, záznam v této tabulce o konkrétním procesu se nazývá Process Control Block (PCB). Je to souhrn všech dat, která OS potřebuje k řízení procesů. Součástí PCB obvykle bývají tyto informace: PID (identifikační číslo procesu), případně další identif. čísla určující např. přístupová práva nebo vztah k jiným procesům stav procesu programový čítač určující, která instrukce se právě provádí (nebo má být provedena) hodnoty registrů ukazatele do front, ve kterých proces čeká (procesor, I/O zařízení) informace pro Správce paměti (tabulky obsazení paměti, evidence stránek, segmentů procesu) účtovací informace (týkají se přidělování procesoru) další momentálně přidělené prostředky (zařízení, otevřené soubory) [1]
7
Proces může vzniknout několika způsoby: spuštěním programu jiným procesem (kromě prvního spuštěného procesu v OS, samozřejmě), pak každý z procesů má jiný programový kód klonováním již spuštěného procesu (fork) – celý paměťový prostor původního procesu je zkopírován do nového adresového prostoru, pak je novému procesu vytvořen vlastní záznam v tabulce procesů (PCB) s některými údaji původními a některými novými, pak oba procesy pokračují souběžně od stejného místa
8
Některé OS (např. Unixy) vytvářejí stromovou strukturu procesů, ve které je zachyceno, který proces byl kterým spuštěn. Spouštějící proces (nadřízený uzel) se nazývá rodič (parent) a spouštěný proces je jeho synovským/dceřiným procesem (child). V kořeni stromu je “praproces”, který buď přímo nebo zprostředkovaně spustil všechny ostatní běžící procesy. Každý další proces má kromě svého vlastního PID také uloženo identif. číslo rodičovského procesu (PPID = Parent PID). Mezi rodičovským a synovským procesem existuje jistý vztah závislosti. Obvykle po ukončení rodičovského procesu bývají ukončeny všechny procesy jeho podstromu (všechny synovské procesy), až na výjimky, které z dobrých důvodů mají pokračovat v práci (např. zálohování nebo dlouhodobé výpočty). [1]
9
Typickým příkladem je ukončení všech procesů spuštěných uživatelem po jeho odhlášení (všechny jsou v podstromu jeho přihlašovacího či inicializačního procesu). Rodičovský proces může počkat na dokončení práce synovského procesu (použije volání jádra wait) nebo pokračovat ve své činnosti. Může taktéž v kterémkoliv okamžiku synovský proces ukončit (abort), například tehdy, když synovský proces splnil svůj úkol, pro který byl spuštěn. [1]
10
[1] VAVREČKOVÁ, Šárka. SLEZSKÁ UNIVERZITA V OPAVE. Operační systémy: Přednášky [online]. 2006, 2012-15-11 [cit. 2013-03-19]. Dostupné z: http://axpsu.fpf.slu.cz/~vav10ui/obsahy/os/ospredn/ospredn.pdf
Podobné prezentace
© 2024 SlidePlayer.cz Inc.
All rights reserved.