Operační systémy 2. Přednáška číslo 2. Přidělování paměti



Podobné dokumenty
Přidělování paměti II Mgr. Josef Horálek

Přidělování paměti I Mgr. Josef Horálek

Principy operačních systémů. Lekce 3: Virtualizace paměti

Principy operačních systémů. Lekce 2: Správa paměti

Při překrývání se využívá toho, že ne všechny moduly programu jsou vyžadovány současně. Jakmile skončí využívání jednoho

IMPLEMENTACE OPERAČNÍHO SYSTÉMU LINUX DO VÝUKY INFORMAČNÍCH TECHNOLOGIÍ

Operační systémy. Přednáška 8: Správa paměti II

Téma 6 Správa paměti a její virtualizace

Memory Management vjj 1

Memory Management vjj 1

09. Memory management. ZOS 2006, L.Pešička

Operační systémy 1. Přednáška číslo Souborové systémy

2010/2011 ZS P i r i nc č py po ít č čů a PAMĚŤOVÝ ĚŤ SUBSYSTÉM z pohledu OS OS

ÚVOD DO OPERAČNÍCH SYSTÉMŮ. Správa paměti. Přímý přístup k fyzické paměti, abstrakce: adresový prostor, virtualizace, segmentace

Základy informatiky. Operační systémy

OPERAČNÍ SYSTÉMY. Ing. Luděk Richter

Paměti a jejich organizace

Software Operaèní systém autorské dílo licenci multilicenci Aplikaèní software Komerèní programy upgrade OEM software Demoverze a zku ební verze

Software Operaèní systém autorské dílo licenci multilicenci Aplikaèní software Komerèní programy upgrade OEM software Demoverze a zku ební verze

Software Operaèní systém autorské dílo licenci multilicenci Aplikaèní software Komerèní programy upgrade OEM software Demoverze a zku ební verze

Operační systémy. Přednáška 7: Správa paměti I

Přednáška. Správa paměti I. Katedra počítačových systémů FIT, České vysoké učení technické v Praze Jan Trdlička, 2012

Paměti cache. Cache může být realizována softwarově nebo hardwarově.

Operační systémy. Správa paměti (SP) Požadavky na SP. Spojování a zavedení programu. Spojování programu (linking) Zavádění programu (loading)

Adresace paměti. 11.přednáška

Stavba operačního systému

Principy operačních systémů. Lekce 7: Souborový systém

Operační systémy. Jednoduché stránkování. Virtuální paměť. Příklad: jednoduché stránkování. Virtuální paměť se stránkování. Memory Management Unit

Management procesu II Mgr. Josef Horálek

Linux připojování zařízení. 6 praktická část

1. Jak pracuje počítač 3. Už víme, jak pracuje počítač, ale jak se pracuje s počítačem? 9

Logická organizace paměti Josef Horálek

Šablona klíčové aktivity III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

Souborový systém (File System FS) Souborové systémy. Souborová fragmentace. Disková fragmentace. Organizace dat na pevném disku

Operační systémy (OS)

ORGANIZACE A REALIZACE OPERAČNÍ PAMĚTI

Paměťový podsystém počítače

Systém adresace paměti

SÁM O SOBĚ DOKÁŽE POČÍTAČ DĚLAT JEN O MÁLO VÍC NEŽ TO, ŽE PO ZAPNUTÍ, PODOBNĚ JAKO KOJENEC PO PROBUZENÍ, CHCE JÍST.

Kapitola 10: Diskové a souborové struktury. Klasifikace fyzických médií. Fyzická média

Paměťová média. Motto dne: Z Berkeley vzešly dvě důležité věci LSD a BSD. Nevěříme, že je to náhoda.

Přednáška. Správa paměti II. Katedra počítačových systémů FIT, České vysoké učení technické v Praze Jan Trdlička, 2012

Petr Krajča. Katedra informatiky Univerzita Palackého v Olomouci. Petr Krajča (UP) KMI/YOS: Přednáška IV. 18. listopad, / 41

SOFTWARE A POČÍTAČOVÉ SÍTĚ. Alice Nguyenová

Petr Krajča. 25. listopad, 2011

Operační systémy Linux, Mac OS X a jejich srovnání

Pokročilé architektury počítačů

Přidělování zdrojů (prostředků)

Topologická struktura měřicích systémů

Operační systémy. Přednáška 9: Správa paměti III

I. Dalšívnitřní paměti

Struktura a architektura počítačů (BI-SAP) 11

Téma 8 Virtuální paměť Obsah

Linux CryptoFS. Petr Novický

Pamět ová hierarchie, virtuální pamět. doc. Ing. Róbert Lórencz, CSc.

Principy počítačů a operačních systémů

Logická struktura pevného disku

Architektura počítače

Operační systémy a sítě

PRINCIPY OPERAČNÍCH SYSTÉMŮ

PROTOKOL O LABORATORNÍM CVIČENÍ

Úvod do architektur personálních počítačů

Alfanumerické displeje

monolitická vrstvená virtuální počítač / stroj modulární struktura Klient server struktura

PROCESOR. Typy procesorů

Bootkity v teorii a praxi. Martin Dráb martin.drab@ .cz

Administrace Unixu a sítí

Vnitřní a vnější paměti Část: vnitřní paměti

"SUSEN - dodávky základního hardware a základního software, etapa III.

Operační systémy 2. Struktura odkládacích zařízení Přednáška číslo 10

ZAŘÍZENÍ PRO ČTENÍ KARET TRUST 630 USB 2.0. Návod k prvnímu použití zařízení

Operační systémy. Tomáš Hudec.

Instalace OS, nastavení systému

Paměťová hierarchie. INP 2008 FIT VUT v Brně

Principy činnosti sběrnic

Název školy: Základní škola a Mateřská škola Žalany

Operační systémy Rozdělení a popis. Autor: Ing. Jan Nožička SOŠ a SOU Česká Lípa VY_32_INOVACE_1124_Operační systémy Rozdělení a popis_pwp

Změna nastavení systému Windows

Operační systém. Mgr. Renáta Rellová. Pracovní list. Výukový materiál zpracován v rámci projektu EU peníze školám

Implementace numerických metod v jazyce C a Python

Základní informace. Operační systém (OS)

Základní pojmy informačních technologií

Výpočetní technika. PRACOVNÍ LIST č. 7. Ing. Luděk Richter

Operační systémy 1. Přednáška číslo Struktura odkládacích zařízení

František Hudek. březen ročník

Přednáška. Správa paměti III. Katedra počítačových systémů FIT, České vysoké učení technické v Praze Jan Trdlička, 2012

Architektury CISC a RISC, uplatnění v personálních počítačích

Adresní mody procesoru

DUM č. 10 v sadě. 31. Inf-7 Technické vybavení počítačů

Rozdělení operačních systémů

Cílem kapitoly je seznámit studenta s pamětmi. Jejich minulostí, současností a hlavnímu parametry.

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

Operační systémy. Mgr. Jiří Pech, Ph.D. Elektronická skripta. Jihočeská Univerzita. Přírodovědecká fakulta

Další aspekty architektur CISC a RISC Aktuálnost obsahu registru

Architektura a koncepce OS OS a HW (archos_hw) Architektura a koncepce OS Jádro OS (archos_kernel) Architektura a koncepce OS Typy OS (archos_typy)

Operační systémy a databáze. Petr Štěpán, K13133 KN-E-129 Téma 5. Správa paměti

Operační systémy a programování

Přednáška. Systémy souborů. FAT, NTFS, UFS, ZFS. Katedra počítačových systémů FIT, České vysoké učení technické v Praze Jan Trdlička, 2012

Informační Systém pro Psychiatrii HIPPO

Transkript:

Operační systémy 2 Přednáška číslo 2 Přidělování paměti

Základní pojmy Paměť = operační paměť paměť, kterou přímo využívají procesory při zpracování instrukcí a dat Funkce modulu přidělování paměti: Sledování stavu každého místa op. paměti Určování strategie přidělování paměti Realizace přidělování paměti Realizace uvolňování paměti Realizace virtuální paměti

Techniky přidělování paměti 1.Přidělování jedné souvislé oblasti paměti 2.Přidělování paměti po sekcích 3.Dynamické přemísťování sekcí 4.Stránkování 5.Stránkování na žádost 6.Segmentace 7.Segmentace a stránkování na žádost

Přidělování jedné souvislé oblasti paměti Nejsou nutné žádné zvláštní technické prostředky Není možné multiprogramování 3 části paměti OS úloha nevyužitá část

Přidělování jedné souvislé oblasti paměti Technické vybavení mezní registr OS (ochrana paměti) Výhody jednoduchost možnost pracovat i s malou pamětí Nevýhody není využita celá paměť je-li úloha čekající není využita paměť ani procesor úlohu nelze vykonat požaduje-li větší paměť než je k dispozici

Přidělování jedné souvislé oblasti paměti

Přidělování paměti po sekcích Paměť se rozdělí na samostatné sekce, každá obsahuje paměťový prostor jedné úlohy Moduly Sledování stavu každé sekce používá se, nepoužíva se, rozsah Plánovač úloh strategie přidělování Přidělení paměti Uvolnění paměti

Přidělování paměti po sekcích Ochrana paměti mezní registry Nevýhoda časté změny stavových registrů, není únosné, aby OS kontroloval všechny registry při každém zápisu do paměti Metody Statické přidělování přidělí se vždy stejně velký blok Dynamické přidělování dle potřeby

Přidělování paměti po sekcích Výhody multiprogramování není nutné speciální technické řešení jednoduchá implementace Nevýhody fragmentace paměti Vnější Vnitřní

Přidělování paměti po sekcích Volné (červené) prostory v jednotlivých úlohách vnitřní fragmentace

Vnější fragmentace OS OS Úloha 1 Úloha 1 Úloha 2 Úloha 3 Ukončení úlohy 2 Úloha 3 Úloha 4 Nelze umístit

Dynamické přemísťování sekcí Řeší problém vnější fragmentace. Periodické slučování volných oblastí do jedné. Může vzniknout problém v úloze pokud se přemístí v paměti za běhu nutno modifikovat některé informace Technické vybavení dodržování typů proměnných (kvůli přesunu) registry relokace

Dynamické přemísťování sekcí Výhody eliminace fragmentace možnost více sekcí oproti předchozí metodě lepší využití paměti i procesoru Nevýhody náročné technické vybavení snížení rychlosti limitováno rozsahem paměti

Dynamické přemísťování sekcí

Stránkování paměti Adresový prostor každé úlohy se rozdělí na stejně velké sekce stránky. Na stejně velké díly (bloky) se rozdělí operační paměť. Pak se mohou snadněji stránky přesouvat mezi bloky. Bloky se stránkami jedné úlohy na sebe nemusí navazovat Každá stránka má registr (tabulky stránek)

Stránkování paměti Moc velké stránky fragmentace Malé stránky moc registrů (náročné) Funkce modulu Sledování stavu tabulka stránek pro každou úlohu Tabulka bloků volný nebo užitý Plánovač úloh Přidělování a uvolňování bloků

Stránkování paměti

Stránkování paměti Výhody Odstranění fragmentace Větší počet úloh Nevýhody Náročné řešení Snížení rychlosti Tabulky zabírají paměť a snižují rychlost Vnitřní fragmentace i na malou úlohu velká stránka (stránky mají pevnou velikost) Omezeno fyzickým rozsahem paměti

Stránkování na žádost Virtuální paměť celá úloha se neumístí do operační paměti součet všech adresových prostor může překročit kapacitu paměti V paměti pouze právě prováděná část úlohy Problém pokud se program odkazuje na právě nezavedenou část úlohy Je nutná strategie rozhodování co má být v paměti zavedeno

Stránkování na žádost Tabulka stránek se rozšíří o stavový bit, určující zda je stránka zavedena Problém, není-li místo pro další stránku musí se nějaká odstranit (do záložní paměti). Může se stát, že tato je vzápětí požadována

Stránkování na žádost Funkce modulu Sledování stavu paměti tabulky stránek (každá úloha), bloků (jedna v systému), tabulka souborů (pro každý adresový prostor úlohy) v záložní paměti Rozhodování o přidělení paměti Přidělování paměti Uvolňování paměti

Stránkování na žádost Algoritmy výměny FIFO (First In First Out) první tam, první ven LRU (Least Recently Used) nejdéle nepoužívaná Použití u IBM/370

Stránkování na žádost Výhody Odstranění fragmentace Není omezení fyzickým rozsahem paměti Efektivní využití Multiprograming Nevýhody Nákladnost Vnitřní fragmentace Nutnost ošetřit zahlcení systému

Segmentace paměti Segment logické seskupení informací (hlavní program, podprogram, data ) Každá úloha je tvořena několika segmenty Každý odkaz na paměť obsahuje: segment číslo segmentu offset paměťové místo v segmentu

Segmentace paměti Je nutné technickými prostředky systému přemapovat dvourozměrnou adresu (segment, offset) na jednorozměrnou Tabulka segmentů počáteční adresa, rozsah Offset nesmí být větší než je velikost segmentu

Segmentace paměti Výhody snadné odhalení potencionálních chyb v programech offset ukazuje mimo segment možnost sdílení kódu mezi úlohami (podprogramy Sqrt) Fragmentace stejný problém jako u stránkování, rozdíl je v tom, že segmenty nemají stejnou délku Zhušťování Tento systém se v praxi nevyužívá

Segmentace se stránkováním Kombinace obou předchozích technik Používá se např. u Motorol 68x00 a i386 Adresový prostor každého procesu je rozdělen na lokální část (pouze tento proces) a globální (sdílenou) část Dvě tabulky: LDT (local description table) GDT (global description table)

Segmentace se stránkováním Logická adresa je dvojice (selector, offset) Selector číslo segmentu, zda je v LDT či GDT a informace na ochranu paměti Z těchto informací se vytvoří lineární adresa pokud je mimo segment vznikne chyba (memory fault) Každý segment je stránkován lineární adresa obsahuje číslo stránky a offset

Segmentace se stránkováním U i386 je velikost stránky 4kB velikost segmentu musí být násobkem Pro zvýšení rozsahu fyzické paměti je možné swapovat stránky na disk

Správa paměti v reálných operačních systémech

MS DOS Segmentace paměti Není žádná ochrana paměti Kterýkoliv proces může zapisovat kam chce Jednoprogramový systém tedy běží jen jeden program (+ rezidenty např. antivir, ovladače znakové sady)

Windows Virtuální metoda segmentace se stránkováním na žádost Každý proces má několik segmentů U Windows 3.X se používaly společné segmenty pro dynamicky linkované knihovny procesy spolu takto mohly komunikovat Novější Windows už tyto praktiky běžně nepoužívají

Windows Odkládací soubor se jmenuje pagefile.sys a je (obvykle) v kořenovém adresáři Ovládání ovládací panely, karta Systém, záložka Upřesnit Též pravým tlačítkem myši na ikonu Tento počítač a zvolit Vlastnosti Možné tento soubor sdílet pokud používáme současně více Windows Možné zakázat používání odkládacího souboru jeho nastavením na velikost 0

Procesor x386 (a lepší) mají zabudovánu základní ochranu paměti k paměti v režimu jádra mohou přistupovat pouze procesy běžící v režimu jádra Každá stránka má nastaven příznak jak k ní lze přistupovat čtení, zápis, spouštění kódu

UNIX (Linux) V počátcích přidělování jedné souvislé oblasti tehdejší hardware nic jiného neuměl Později virtuální paměť se segmentací ale odkládal se paměťový prostor celého procesu Linux stránkování na žádost

Linux Odkládá se nejdéle nepoužívaná stránka Pokud je spuštěn jeden program vícekrát může se sdílet část paměti s kódem Pokud je stránka v swapovacím prostoru a chceme jí pouze číst nenačítá se do paměti

Linux Obvykle se používá odkládací disk (swap) Formátování: mkswap /dev/hda3 Začátek používání: swapon /dev/hda3 Ukončení: swapoff /dev/hda3 Zápis v /etc/fstab: /dev/hda3 none swap sw 0 0 Lze též použít odkládací soubor Vytvoření dd if=/dev/zero of=/soubor bs=4g Pak se všude místo /dev/hda3 píše /soubor

Mac OS X Stránkování na žádost Vytváří se soubory swapfile0, swapfile1, atd Po zaplnění jednoho se vytvoří další Jsou v adresáři /private/var/vm Převzato z OS NeXT

Konec Děkuji za pozornost