Základy operačních systémů

Slides:



Advertisements
Podobné prezentace
OZD: Hašování RNDr. Michal Žemlička.
Advertisements

Tento výukový materiál vznikl v rámci Operačního programu Vzdělávání pro konkurenceschopnost 1. KŠPA Kladno, s. r. o., Holandská 2531, Kladno,
13AMT Procesory I. Lecture 2 Ing. Martin Molhanec, CSc.
SOFTWARE dálkové studium PODNIKÁNÍ 2. listopad 2006.
Souborové systémy.
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ů.
Principy překladačů Běhová podpora Jakub Yaghob. Běhová podpora Statická podpora jazyka Překladač Interface na knihovny Hlavičkové soubory Dynamická podpora.
Principy překladačů Mezikód Jakub Yaghob.
Principy překladačů Interpretované jazyky Jakub Yaghob.
Generování mezikódu Jakub Yaghob
Principy překladačů Architektury procesorů Jakub Yaghob.
Kontakty Webpage přednášky: – Slajdy (MS PowerPoint): –ftp://ulita.ms.mff.cuni.cz/predn/PRG017 Technické.
Vzdělávací materiál / DUMVY_32_INOVACE_02B5 Správa pamětí AutorIng. Petr Haman Období vytvořeníčerven 2013 Ročník / věková kategorie2. ročník Vyučovací.
Diskový oddíl Souborový systém RAID 9/2012.
Obchodní akademie, Ostrava-Poruba, příspěvková organizace Vzdělávací materiál/DUM VY_32_INOVACE_02A13 Autor Ing. Jiří Kalousek Období vytvoření duben 2014.
Architektura a vývoj PC 2.
A4B33OSS (J. Lažanský) verze: Podzim 2010 Virtuální paměť 1 Obsah Téma 8 – Virtuální paměť 1.Principy virtuální paměti 2.Stránkování na žádost 3.Politika.
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.
3. konzultace (5 hodin) Studijní materiály najdete na adrese:
Vnitřní (operační paměť)
Real time jádro operačního systému Lukáš Hamáček.
Základy operačních systémů
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é.
Téma 6 – Správa paměti a její virtualizace
Systém souborů. Množina souborů různých typů – Data – Spustitelné programy – Konfigurační a pomocné informace – I/O zařízení Způsob organizace množiny.
Systém souborů. Množina souborů různých typů – Data – Spustitelné programy – Konfigurační a pomocné informace – I/O zařízení Způsob organizace množiny.
Základy operačních systémů Meziprocesová komunikace a synchronizace Jakub Yaghob.
Kontakty Webpage přednášky: – Slajdy (MS PowerPoint): –ftp://ulita.ms.mff.cuni.cz/predn/PRG017 Technické.
9. přednáška služby správce procesů ( resched, ready, resume, suspend, kill, sleep, wakeup ) -Memory Management -cache paměť, adresové prostory.
Základy operačních systémů
Kontakty slajdy: ftp://ulita.ms.mff.cuni.cz/predn/POS.
10. přednáška 4. května 2015 Operační systémy LS 2014/2015.
Kontakty Webpage přednášky: – Slajdy (MS PowerPoint): –ftp://ulita.ms.mff.cuni.cz/predn/PRG017 Technické.
Operační systémy Správa paměti © Milan Keršláger
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.
Kontakty Webpage přednášky: – Slajdy (MS PowerPoint): –ftp://ulita.ms.mff.cuni.cz/predn/PRG017 Technické.
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.
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.
VIRTUÁLNÍ PAMĚŤ EP1. Kryštof Supek. Umožňuje předložit běžícímu procesu adresní prostor paměti, který je větší, než je fyzicky připojená paměť RAM Procesor.
Překladače Operační paměť © Milan Keršláger
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.
A4B33OSS (J. Lažanský) verze: Podzim Obsah Téma 7 – Správa paměti 1.Požadavky a problémy správy paměti 2.Historické přístupy správy paměti 3.Segmenty.
Stránkování MATĚJ JURIČIČ 2015/2016 EP1 SPŠ A VOŠ JANA PALACHA KLADNO.
Paměti PC HDD, CD/DVD, USB Flash RAM a ROM Vnější paměť Disková paměť
Vypracoval / Roman Málek
Zvídavé otázky 1. Prevence a detekce uváznutí
OPERAČNÍ SYSTÉMY Část 4 – správa souborů
SW počítače - operační systém
Procesor Procesor (CPU – Central Processing Unit) je ústřední výkonnou jednotkou počítače, která čte z paměti instrukce a na jejich základě vykonává program.
Operační systémy 11. Správa paměti
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.
Správa paměti - úvod 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: 
Fragmentace paměti 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: 
Výukový materiál zpracován v rámci projektu
PB 169 Počítačové sítě a operační systémy
Návrhový vzor Flyweight
PB169 – Operační systémy a sítě
Operační systémy 9. Spolupráce mezi procesy
PB153 OPERAČNÍ SYSTÉMY A JEJICH ROZHRANÍ
Správa paměti.
PB153 OPERAČNÍ SYSTÉMY A JEJICH ROZHRANÍ
1. ročník oboru Mechanik opravář motorových vozidel
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: 
Správa disků
Adresace paměti 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.
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: 
Paměť.
Systém souborů 1.
Transkript prezentace:

Základy operačních systémů Správa paměti Jakub Yaghob

Hierarchie paměti

Správce paměti Část OS, která spravuje paměťovou hierarchii se nazývá správce paměti (memory manager) informace o volné/plné části paměti přidělování paměti výměna paměti s diskem

Přiřazení adresy Při překladu Při zavádění Za běhu je již známo umístění procesu generuje se absolutní kód Při zavádění OS rozhodne o umístění generuje se kód s relokacemi Za běhu proces se může stěhovat i za běhu relokační registr

Překlad, spojování, zavedení .obj .obj .lib .obj .dll .obj .dll .h .h staticky dynamicky .obj .c CC Link .exe Loader proces .obj

Overlay Proces potřebuje více paměti než je skutečně k dispozici Programátor rozdělí program na nezávislé části a část nezbytnou pro všechny části

Výměna (swapping) Proces musí být v hlavní paměti, aby jeho instrukce mohly být vykonávány procesorem OS uživatelský prostor proces 1 proces 2 hlavní paměť záložní paměť

Překlad adresy Proces pracuje v logickém (virtuálním) adresovém prostoru HW pracuje s fyzickým adresovým prostorem logický adresový prostor fyzický adresový prostor překlad adresy

Spojité přidělování - 1 Jeden paměťový oddíl OS limit relokace uživatelský prostor LA < FA +

Spojité přidělování - 2 Více paměťových oddílů - pevné OS OS 100 K

Spojité přidělování - 3 Více paměťových oddílů - volné OS OS OS OS OS 100 K 100 K 100 K 100 K 100 K 200 K 200 K 200 K 200 K 200 K 150 K 150 K 150 K 150 K 150 K 150 K 150 K 150 K 150 K 150 K

Informace o obsazení paměti Bitmapa bloky pevné velikosti Spojový seznam seznam volných bloků spojování uvolněného bloku se sousedy

Algoritmy na přidělování - 1 First-fit první volný dostatečné velikosti Next-fit jako first-fit začíná se na poslední prohledávané pozici Best-fit nejmenší volný dostatečné velikosti Worst-fit největší volný

Algoritmy na přidělování - 2 First-fit + rychlý - občas rozdělí velkou díru Next-fit jako first-fit ale rychlejší Best-fit - pomalý (prohledává celý seznam) + nechává velké díry vcelku - nechává malinké díry, do kterých se nic nevejde Worst-fit - rozdělí velké díry

Algoritmy na přidělování – Buddy systém Paměť rozdělena na bloky o velikosti 2n Bloky stejné velikosti v seznamu Při přidělení zaokrouhlit na nejbližší 2n Pokud není volný, rozštípnou se větší bloky na příslušné menší velikosti Při uvolnění paměti se slučují sousední bloky (buddy)

Fragmentace paměti Externí Interní Sesypání volný paměťový prostor rozdělen na malé kousky pravidlo 50% Interní nevyužití celého přiděleného prostoru Sesypání pouze při přiřazení adresy za běhu nebo segmentaci

Virtuální paměť - 1 Procesy pracují s virtuální adresou Adresa se převádí na fyzickou Převod nemusí vždy existovat Obraz virtuální paměti je částečně v hlavní paměti a částečně na pomocné paměti Výhody Dříve zejména iluze větší paměti Dnes hlavně ochrana

Virtuální paměť - 2 Virtuální Adresový Prostor Fyzický Adresový Převod adresy OS

Virtuální paměť - 3 Stránkování Segmentace podporovaná všemi velkými CPU a OS jednorozměrný VAP Segmentace dnes pouze Intel IA-32 dvojrozměrný VAP

Stránkování - 1 VAP rozdělen na úseky stejné délky – stránky velikost je mocnina 2 FAP rozdělen na úseky stejné délky jako stránky – rámce převod adres stránkovací tabulkou příznak existence mapování výpadek stránky

Stránkování - 2 VA FA p d f d Stránkovací tabulka p f

Stránkování - 3 oddělené VAP VAP Proces A VAP Proces B FAP ST A ST B

Stránkování - 4 sdílená paměť VAP Proces A VAP Proces B FAP ST A ST B

Stránkovací tabulky Leží v hlavní paměti Problémy: Velké Pomalé

Víceúrovňové stránkování VA FA p1 p2 d f d ST1 p1 f ST2 ST2 p2 f

TLB lokalita chování programů asociativní paměť Platné Stránka Dirty Ochrana Rámec 1 125 RW 654 44 132 485 12 55 R X 142 111 54 108 88 543

Nulaúrovňové stránkovací tabulky Využívá pouze TLB TLB řízena i OS Oblíbené u 64-bitových CPU UltraSPARC III

Inverzní stránkovací tabulky FAP menší než VAP 64-bitové CPU IA-64 VA FA p d f d hash table p f p f hash fn p f

Výpadek stránky výjimka procesoru uložit stav CPU (kontext) zjistit VA kontrola platnosti adresy a práv nalezení volného rámce zrušit mapování na nalezený rámec pokud je vyhazovaný rámec vyhazován, spustit ukládání na disk načíst z disku požadovanou stránku do rámce zavést mapování obnovit kontext

Algoritmy pro výměnu stránek Optimální stránka NRU (Not Recently Used) FIFO Druhá šance Hodiny LRU (Least Recently Used) Náhodná

Optimální stránka Optimální stránka v okamžiku výpadku stránky vybírám stránku, na níž se přistoupí za největší počet instrukcí nedá se implementovat

NRU (Not Recently Used) každá stránka příznaky A (Accessed) a D (Dirty) typicky implementovány HW lze simulovat SW jednou za čas se smažou všechna A při výpadku rozdělím stránky podle A, D vyberu stránku z nejnižší neprázdné třídy A D 1 2 3

FIFO, druhá šance FIFO Druhá šance vykazuje anomálie (Belady) úprava FIFO pokud A=1, zařadím na konec FIFO nevykazuje anomálie

Hodiny modifikace druhé šance jedna x dvě ručičky využívána ve Win2000, Linuxu G H F A E B D C

LRU (Least Recently Used) Stránky často používané v předchozím krátkém časovém úseku budou v nejbližších okamžicích znovu použity lze implementovat v HW 64-bitový čítač, zápis při použití matice n x n bitů podle počtu rámců při použití rámce k nastavit v matici řádek k na 1 a vynulovat sloupec k vybírám řádek s nejnižší binární hodnotou

NFU (Not Frequently Used) SW simulace LRU SW čítač ke každé stránce jednou za čas projdu všechna A a přičtu je k odpovídajícím čítačům vybírám stránku s nejnižším čítačem nezapomíná modifikace – stárnutí (aging) čítače

Alokační strategie Lokální Globální každý proces má svoji množinu rámců a v ní provádí algoritmy pro výměnu pracovní množina Globální procesy sdílí všechny rámce

Implementace stránkování znovuspuštění instrukce sdílení stránek odstranění položky TLB při rušení mapování

Segmentace - 1 program rozdělen na segmenty VAP dvojrozměrný – (s, d) část programu se stejnými vlastnostmi (kód, data, zásobníky) mají různé délky mohou měnit svoji délku za běhu VAP dvojrozměrný – (s, d) FAP jednorozměrný převod adresy segmentovou tabulkou příznak existence mapování výpadek segmentu

Segmentace - 2 VA FA s d + Segmentová tabulka s b

Segmentace - 3 FAP vypadá stejně jako při spojitém přidělování OS

Výhody/problémy segmentace při výpadku nutné vyměnit celý segment a ty mohou být velké lze sesypat segmenty ve FAP nelze mít segment větší než FAP

Kombinace segmentace+stránkování odstraňuje nevýhody segmentace neprovádí se výpadky segmentů VAP Segment data Lineární Adresový Prostor Fyzický Adresový Prostor PAG SEG VAP Segment kód OS OS