7. přednáška 3. 4. 2014 - konzistence dat (příklad) -multithreading (monoprocesor) -sdílení času -analýza časového kvanta -priorita -přepínání (procesů,

Slides:



Advertisements
Podobné prezentace
© 2000 VEMA počítače a projektování spol. s r. o..
Advertisements

HRADLOVÁ POLE REKONFIGUROVATELNÁ ZA PROVOZU ZAŘÍZENÍ Soběslav Valach Ústav automatizace a měřicí techniky, FEKT, VUT Brno, Czech Republic.
Základy databázových systémů
Přednáška č. 3 Normalizace dat, Datová a funkční analýza
Komunikace periférii.
SOFTWARE dálkové studium PODNIKÁNÍ 2. listopad 2006.
Přednáška č. 5 Proces návrhu databáze
Operační systémy. OPERAČNÍ SYSTÉMY pomoc operátorovi, podpora vlastností reálného času, víceuživatelských a více úlohových systémů.
Vzdělávací materiál / DUMVY_32_INOVACE_02B2 Správa procesů AutorIng. Petr Haman Období vytvořeníProsinec 2012 Ročník / věková kategorie2. ročník Vyučovací.
Maturitní okruh č. 7. Odstínit aplikace od specifik HWSpráva procesůSpráva pamětiSpráva souborůSpráva vstupů a výstupůSpráva sítěSystém ochrany a bezpečnostiSystém.
Operační systémy Přednášky pro výuku předmětu Operační systémy Ing. Antonín Vaněk, CSc. DFJP, Univerzita Pardubice září 2003.
Operační systémy.
Databázové systémy. Práce s daty Ukládání dat Aktualizace dat Vyhledávání dat Třídění dat Výpočty a agregace.
Databázové systémy Architektury DBS.
Orbis pictus 21. století Tato prezentace byla vytvořena v rámci projektu.
13AMP 2. přednáška Ing. Martin Molhanec, CSc.. Stav procesu (kontext) Stav procesu je úplná informace, kterou je nutné uschovat při přerušení procesu,
Správa procesů.
Gymnázium, SOŠ a VOŠ Ledeč nad Sázavou I NFORMAČNÍ A KOMUNIKAČNÍ TECHNOLOGIE Ing. Jan Roubíček.
Lokální počítačové sítě Novell Netware Ing. Zdeněk Votruba Technická fakulta ČZU Laboratoř výpočetních aplikací.
13AMP 3. přednáška Ing. Martin Molhanec, CSc.. Co jsme se naučili naposled I. Co je to kontext úlohy Co je to kontext úlohy Task switching (přepnutí úlohy)
Vývoj výpočetního modelu
3. konzultace (4 hodiny) 6. března 2015 Operační systémy LS 2014/2015.
Orbis pictus 21. století Tato prezentace byla vytvořena v rámci projektu.
1/29 PB153 OPERAČNÍ SYSTÉMY A JEJICH ROZHRANÍ Procesy 05.
Zablokování (deadlock, smrtelné objetí, uváznutí)
Správa procesů.
8. přednáška přepínání kontextu -plánování (pojmy, kritéria, prioritní fronty, vybrané typy) Studijní materiály najdete na adrese:
3. konzultace (5 hodin) Studijní materiály najdete na adrese:
Vnitřní (operační paměť)
A4B33OSS (J. Lažanský) verze: Podzim 2012 Procesy a vlákna 1 Obsah Téma 3 – Procesy a vlákna 1.Výpočetní procesy a jejich stavy 2.Stavový diagram procesů.
Operační systémy Název a adresa školy
Co je to OS Správce prostředků –spravuje a přiděluje systémové zdroje systému úlohám, stará se o jejich efektivní sdílení procesoru (ů) operační paměti.
Výrok „Vypadá to, že jsme narazili na hranici toho, čeho je možné dosáhnout s počítačovými technologiemi. Člověk by si ale měl dávat pozor na takováto.
Kontakty Webpage přednášky: – Slajdy (MS PowerPoint): –ftp://ulita.ms.mff.cuni.cz/predn/PRG017 Technické.
Orbis pictus 21. století Tato prezentace byla vytvořena v rámci projektu.
1/28 PB153 OPERAČNÍ SYSTÉMY A JEJICH ROZHRANÍ Vlákna 06.
Základy operačních systémů Meziprocesová komunikace a synchronizace Jakub Yaghob.
Optimalizace versus simulace 8.přednáška. Obecně o optimalizaci  Maximalizovat nebo minimalizovat omezujících podmínkách.  Maximalizovat nebo minimalizovat.
Základy operačních systémů
Operační systémy. Výpočetní systém Stroj na zpracování dat vykonávající samočinně předem zadané operace.
2. konzultace (4 hodiny) Studijní materiály najdete na adrese:
1/37 PB153 OPERAČNÍ SYSTÉMY A JEJICH ROZHRANÍ Plánování CPU 07.
1/32 PB153 OPERAČNÍ SYSTÉMY A JEJICH ROZHRANÍ Plánování CPU 07.
Operační systémy LS 2014/ přednáška 30. března 2015.
Operační systémy LS 2014/ přednáška 16. března 2015.
OPERAČNÍ SYSTÉMY učební text pro žáky SŠ.
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.
Počítačová bezpečnost 2. Bezpečnost v OS © Milan Keršlágerhttp:// Obsah: ● jádro,
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.
Operační systémy 2015/ přednáška 21. března 2016.
Stránkování MATĚJ JURIČIČ 2015/2016 EP1 SPŠ A VOŠ JANA PALACHA KLADNO.
Vypracoval / Roman Málek
Zvídavé otázky 1. Prevence a detekce uváznutí
Služby Windows Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Libor Otáhalík. Dostupné z Metodického portálu ISSN: 
Operační systémy - úvod
Soubor Soubor v informatice označuje pojmenovanou sadu dat uloženou na nějakém datovém médiu, se kterou lze pracovat nástroji operačního systému jako.
DIGITÁLNÍ UČEBNÍ MATERIÁL
PB 169 Počítačové sítě a operační systémy
Počítačová bezpečnost 2. Bezpečnost v OS
Téma 4 – Plánování práce procesorů
Operační systémy 9. Spolupráce mezi procesy
Správa paměti.
PB 169 Počítačové sítě a operační systémy
Segmentace Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Libor Otáhalík. Dostupné z Metodického portálu ISSN: 
3. konzultace (4 hodiny) 4. března 2016.
Operační systémy.
7. přednáška 4. dubna 2016 Operační systémy 2015/2016.
Přepínání procesů Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Libor Otáhalík. Dostupné z Metodického portálu ISSN: 
Správa procesů.
Monitor Object 1.
Transkript prezentace:

7. přednáška konzistence dat (příklad) -multithreading (monoprocesor) -sdílení času -analýza časového kvanta -priorita -přepínání (procesů, režimů) -multitasking (proč, vývoj, vlastnosti) -přepínání kontextu -prioritní fronty -plánování běhu procesů (pojmy, rozdělení, kriteria, typy) Studijní materiály najdete na adrese:

Problém konzistence - příklad Scénář Proces vytvořil vlákna T 1 a T 2. T 1 počítá C = A + B. T 2 používá hodnotu X: A = A – X; B = B + X T 1 a T 2 pracují souběžně, avšak jejich rychlosti nejsou známy. Úmysl programátora Nechť A = 2; B = 3; X = 10 T 2 udělá A = A – X; B = B + X[A=-8,B=13,C=5] T 1 spočítá C = A + B, hodnota C nezávisí na X. Možná realita T 2 udělá A = A – X a pak je mu odebrán procesor.[A=-8,B=13,C=-5] T 1 spočítá C = A + B = A – X + B T 2 udělá B = B + X a to už hodnotu C neovlivní. V proměnné C jsou dva různé výsledky. Poznámka Kdyby nedošlo k preempci vlákna T2, žádný problém by nenastal!

Multithreading Example on a Uniprocessor time Time quantum expires Process created Blocked Running Ready Thread A (Process 1) Thread B (Process 1) Thread C (Process 2) I/O request Request complete Time quantum expires

- zajišťuje iluzi souběžného zpracování několika procesů - time slicing - při preempci operační systém nepovolí žádnému procesu běžet neomezenou dobu, pouze určitý časový interval, jestliže proces běží dlouho, odebere mu OS v rámci přerušení časovače procesor a přidělí jej jinému procesu, délky intervalů běhu procesu jsou jednotky až desítky ms - v průměrném případě se časové sdílení neuplatní, proces většinou stihne udělat vše co potřebuje a vyvolá nějakou službu, její součástí bývá čekání na nějakou událost, takže se procesor stejně přidělí někomu jinému Sdílení času

Analýza časového kvanta - musí být podstatně větší, než režijní interval operačního systému spojený se změnou procesu (přerušení časovačem a provedení dispečerských operací) - musí být větší než typická doba interakce procesu s okolím (ne o moc, aby se nepenalizovaly I/O vázané procesy) přidělení časového kvanta doba odpovědi (s) časové kvantum (q) q - s konec interakce přidělení časového kvanta proces přeplánován časové kvantum (q) doba odpovědi (s) opětovné přidělení časového kvanta běh jiného procesu časové kvantum větší než typická doba interakce časové kvantum menší než typická doba interakce

Priorita - statická priorita - je přidělena při vytvoření, nemění se - statický časový interval - při přeplánování je čítač nastaven na konstantní hodnotu, stejnou pro všechny procesy - dynamická priorita, dynamický časový interval - mění se na základě vlastností a chování procesů, vyšší průchodnost operačního systému - správce procesů sleduje dobu, po kterou měl proces procesor (součet momentů Running), pokud je delší než určitá doba, sníží se priorita, náročné procesy běží dlouho, krátké procesy hotovy dříve - možnost zrušení procesu při zacyklení - při přepínání kontextu se zjišťuje, vyčerpal-li proces celý svůj interval, přidělí se tím větší priorita, čím menší doba byla čerpána z povoleného intervalu (časté čekání na periferie, …)

- u současných OS může k výměně procesů dojít kdykoliv - je spojena s přerušením (interrupt) nebo s výjimkou (trap) - clock interrupt souvisí s časovým sdílením - I/O interrupt souvisí s požadavkem na externí zařízení - výpadek stránky souvisí s MMU - výjimka způsobí ukončení procesu, závisí to i od OS, někdy se může objevit pokus o obnovu stavu - k přepínání dochází mezi procesy nebo mezi módy, funkce OS může být aktivována tzv. supervisor call Přepínání (procesy, režimy) UdálostPříčinaVyužití InterruptProvedení běžné instrukce na vnější popud Reakce na asynchronní externí událost TrapReakce na událost během provádění instrukce Zpracování chyby nebo výjimečného stavu Supervisor callExplicitní požadavekVolání funkce operačního systému - přepnutí kontextu: context switch, požadavek na přerušení, uloží se kontext aktivního procesu, zavede se kontext nového procesu do registrů procesoru, ukončí se přerušovací služba, běží nový proces, odebrání procesu, přidělení procesu - procesor se vrací z přerušení na jiné místo - přepnutí režimu: přerušení nemusí vyvolat přepnutí kontextu, provedou se privilegované instrukce a řízení se vrátí přerušenému procesu, stačí uchovávat stav procesoru, nižší režie

Proč multitasking ? procesorV/V Model - zvýšení využití procesoru - pravděpodobnost čekání na V/V - pravděpodobnost pro n procesů - využití procesoru  p n pnpn

preemptivní multitasking - libovolné přerušení procesu bez jeho spolupráce, zvětší se kontext (kompletní stav procesoru, pomocných procesorů, …), prostředky se povolí pouze jednomu procesu (I/O kanály, tisk, porty…) - nebezpečí zablokování, řeší se prostřednictvím serverů - speciální procesy pro práci s prostředky, mají své klienty, přepnutí lze vyvolat kdykoliv, v rámci kteréhokoliv přerušení, vývoj: vzájemné volání, omezené přepínání, neomezené přepínání, kooperativní multitasking, preemptivní multitasking Výhody preemptivního multitaskingu: * přechod k jinému programu bez nutnosti přerušovat práci * snadná implementace činností, které musí probíhat paralelně (správa počítačové sítě, …), zajištění běhu dalších procesů * lepší kooperace programů (není potřeba soubory) * nutná podmínka pro víceuživatelské prostředí * lepší využití kapacity výpočetního systému (procesor ne- zahálí při čekání) Nevýhody preemptivního multitaskingu: * degradace programu při spuštění více úloh, dnes irelevantní * větší režie OS spojená s plánováním * větší, složitější, dražší, náročnější na HW * větší nároky na bezpečnost

Přepínání kontextu procesů proces P 0 proces P 1 operační systém uložení kontextu P 0 předání kontextu P uložení kontextu P 1 předání kontextu P idle běží privilegované instrukce

Plánování běhu procesů - pojmy - režim výběru – nonpreemptive (bez předbíhání), vybraný proces běží, dokud se sám neukončí, nevhodné pro víceuživatelské systémy, preemptive (s předbíháním), běžící proces lze přerušit, ochrana před monopolizací procesoru - procesy vázané na I/O – proces opakovaně alternuje mezi potřebou procesoru a periferie, dávka procesorové orientace (jednotky ms) je následována I/O operacemi (řádově delší doba) - procesorově orientovaný proces – dokázal by využívat procesor po neomezenou dobu (dlouhé procesy) - priorita procesu – narušení disciplíny FIFO (spravedlivá obsluha), prioritní úrovně (pro každou z nich je samostatná FIFO), procesy nízké priority mohou stárnout, procesy mohou měnit prioritu dynamicky

dlouhodobé – strategické plánování, povolení vytvoření procesu, stupeň multitaskingu střednědobé – taktické plánování, řízení odkládání, rozhodující roli sehrává dostupná paměť, provádí správa paměti, řízení stupně multiprogramování krátkodobé – operativní plánování, plánování procesoru, aktivace přerušením časovače, I/O přerušením, službou OS, signály (semafor), uživatelsky orientované (odpověď, průchod), systémově orientované (využití, spravedlnost, propustnost) - monoprocesor, multiprocesor, RT - minimalizace doby odpovědi, co nejvyšší propustnost, co nejvyšší využití procesoru Plánování běhu procesů - rozdělení

Prioritní fronty Processor RQ 0 Blocked queue Release Event wait Event occurs RQ 1 RQ 2 RQ n... Preemption Dispatch Admit

Kriteria plánování Uživatelsky orientované (výkonnost) - doba obrátky (od předložení procesu do jeho zpracování, zahrnuje čas zpracování + čekání na zdroje), je možné měřit pro každý job - čas odezvy (pro interaktivní procesy), je lépe měřitelný než doba obrátky Systémově orientované (výkonnost) - propustnost, snaha o maximální množství procesů zpracovaných za jednotku času, závisí na délce procesů, je ovlivněno plánovací politikou, utilizací procesoru,... - využití procesoru, čas, kdy je procesor zaměstnán, jde o významné kritérium, u jednouživatelských OS a RT je méně důležité

Plánování běhu procesů