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

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

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

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

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

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

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)

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

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

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

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

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

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

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

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

Principy operačních systémů. Lekce 3: Virtualizace 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

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

Memory Management vjj 1

OS Správa paměti. Tomáš Hudec.

Memory Management vjj 1

Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague

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

Správy cache. Martin Žádník. Vysoké učení technické v Brně, Fakulta informačních technologií v Brně Božetěchova 2, Brno

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

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

Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague

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

Systém adresace paměti

B4B35OSY: Operační systémy

Přednáška. Vstup/Výstup. Katedra počítačových systémů FIT, České vysoké učení technické v Praze Jan Trdlička, 2012

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

OS Správa paměti. Tomáš Hudec.

Fakulta informačních technologií Božetěchova 2, BRNO 26. dubna 2011

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

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

PAMĚŤOVÝ SUBSYSTÉM. Principy počítačů I. Literatura. Parametry paměti. Parametry paměti. Dělení pamětí podle funkce. Kritéria dělení pamětí

Mezipaměti počítače. L2 cache. L3 cache

Principy operačních systémů. Lekce 7: Obrana proti deadlocku

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

Pamět ová hierarchie, návrh skryté paměti 2. doc. Ing. Róbert Lórencz, CSc.

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)

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

Paměti a jejich organizace

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

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

Petr Krajča. 25. listopad, 2011

Woody a Steina Vasulkovi

Pokročilé architektury počítačů

IUJCE 07/08 Přednáška č. 6

Architektura počítačů

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

p8mm/p8mm.d 21. listopadu

TÉMATICKÝ OKRUH Počítače, sítě a operační systémy

4 Správa paměti. 4.1 Základní správa paměti

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

Von Neumannovo schéma

Ukázka zkouškové písemka OSY

Přidělování CPU Mgr. Josef Horálek

Metody připojování periferií BI-MPP Přednáška 2

á ý á á ú ú ř ý ý ů ě ů ř á á á á ě ě š ř ů á ě ě ě ů ř š ý š ě ů ž ář ř ř š ý ář á ě ř á ý ě ů á á á ě á ž ě ě ů ě ý ě ř ě šť Č ý á á ř á ě á ř ý ý á

Správa paměti. doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 /

Operační systémy. Přednáška 3: Plánování procesů a vláken

Select sort: krok 1: krok 2: krok 3: atd. celkem porovnání. výběr nejmenšího klíče z n prvků vyžaduje 1 porovnání

ěž Úč úč Í ěž Ž č Ž ž ů Á Č Č Ž Úč Ž Úč Ž ň ž Ů č č Ž Úč Ž Í č š ě ň ó ÚČ č Ž Úč č Č š Ž Š Š ÍŠ

VY_32_INOVACE_CTE_2.MA_19_Registry posuvné a kruhové. Střední odborná škola a Střední odborné učiliště, Dubno Ing. Miroslav Krýdl

E M B L E M A T I C K É M Y S T É R I U M Z A H R A D Y

Pamět ová hierarchie, návrh skryté paměti cache 2

Í ž ž Ž ž Ž Ž ž Š ď Ž Í ť ž Í Ž Ž Ž Í Ý Š Í Š ž Ž Š ž ž ť Ž Š

MS WINDOWS II. Jádro. Správa objektů. Správa procesů. Zabezpečení. Správa paměti

ž ú ú ý š ž ý ý ů ž ů ž ý ů š š ů ž ž ž ý Ú Ú Ú ň ž ý Š ý š ž ž ý š ú ý

Pokročilé architektury počítačů

ď é Í Í é é é Ž é Ž é Ž é Ž É é é

Semestrální práce KIV/PC Řešení kolizí frekvencí sítě vysílačů Zdeněk Bečvář A14B0466P 10. ledna 2016

Č Ž ú ú ú Š ú Š ú ú ó ú Č ú ú ú Č Ů ú ň ú ú Ě ú ú

Administrace OS Unix. filesystém UFS mount snapshot RAID

ů ý ž ý ý ú Ý ů ý ů Ž Ž ú ů

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

Pár odpovědí jsem nenašla nikde, a tak jsem je logicky odvodila, a nebo jsem ponechala odpověď z pefky, proto je možné, že někde bude chyba.

Virtualizace. Lukáš Krahulec, KRA556

ž ř ř ý Ž š ý š š Ž ř š š š ř š ý š ý Ž ů Ž ž š ý Ž Č š ý š Ů Ů ř ř š š ř ý ý ž ý Ž šť š ý ý ý ý ů ůž ý ý ř ý ý ž ý Ž ý ú š ý Ž Í ů ý ů ů ů ú ý ů ř ý

Výhody a nevýhody jednotlivých reprezentací jsou shrnuty na konci kapitoly.

ř ý ý ř ě Úř ř ř š ú ř ý ěř Ú Č ě Í ú ř ú ý ů ě ě Í ř ě š ú ř ú ř Í ř ě ě Č ó Ž ě ýš ě š Č

Spuštění instalace. nastavení boot z cd v BIOSu vložení CD s instal. médiem spuštění PC. nastavení parametrů instalace (F2 čěština)

Pokročilé programování v jazyce C pro chemiky (C3220) Operátory new a delete, virtuální metody

Instalace SQL 2008 R2 na Windows 7 (64bit)

Přednáška 2. Systémy souborů OS UNIX. Nástroje pro práci se souborovým systémem. Úvod do Operačních Systémů Přednáška 2

V B r n ě, 2 4. b ř e z n a

Datové struktury 2: Rozptylovací tabulky

Výukový materiál Hardware je zaměřený především na výuku principů práce hardwaru a dále uvádí konkrétní příklady použití.

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

Ž Ý Ř Ě Ž ď ď Ž

PB153 Operační systémy a jejich rozhraní

Dynamické datové struktury I.

Ý š ž é ů Š ú ú ú Ó ů ú ú é Ó Ó Č ů ú Ú ň ů š ů š ů ú ú é é ž

š ř ž ů ř š ů ř Ž ř é Č ř ř ú Č ř ř ř é Č ř é ý é ýš ú Ť ý Í Ž Ž ú ú ň é ř Ž ř ů Ž ú ř Ž Ž ř ů ú ú Ž Ž ů ř é Č é é ž š é é ž š ř ř ř

Testování pamětí (Memory BIST)

ě

Architektury VLIW M. Skrbek a I. Šimeček

1. SYSTÉMOVÉ POŽADAVKY / DOPORUČENÁ KONFIGURACE HW A SW Databázový server Webový server Stanice pro servisní modul...

Část 1. Technická specifikace. Posílení ochrany demokratické společnosti proti terorismu a extremismu

Transkript:

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 Příprava studijního programu Informatika je podporována projektem financovaným z Evropského sociálního fondu a rozpočtu hlavního města Prahy. Praha & EU: Investujeme do vaší budoucnosti 1

Strategie nahrání (Fetch policy) Určuje, kdy má být virtuální stránka nahrána do hlavní paměti. Stránkování na žádost (demand paging) Virtuální stránky jsou nahrávány do hlavní paměti až v okamžiku, když se na ně proces pokusí přistoupit. Před-stránkování (prepaging) Virtuální stránky se nahrají do hlavní paměti ještě dříve než se na ně přistupuje. 2

Strategie umístění (Placement policy) Určuje, kam do hlavní paměti bude stránka nahrána. V systémech s čistou segmentací hraje důležitou roli (např. best-fit, first-fit,...). V systémech se stránkováním je bezpředmětná. 3

Strategie nahrazování (Repacement policy) Určuje, které stránky v hlavní paměti budou nahrazeny. Rezidentní velikost (Resident set size) Kolik rámců stránek v hlavní paměti bude alokováno pro každý proces. Rezidentní rozsah (Resident scope) Určuje zda kandidáti pro náhradu stránky budou pouze stránky patřící procesu, který způsobil výpadek stránky, a nebo všechny stránky (i stránky patřící ostatním procesům) v hlavní paměti. Nahrazovací algoritmy Z množiny kandidátů vybere stránku, která se nahradí (např. Aging alg., WSclock alg.,...). 4

Strategie nahrazování Rezidentní velikost fixed-allocation policy Každý proces dostane přidělen fixní počet rámců v hlavní paměti. Tento počet může záviset na typu procesu (interaktivní,, dávková, ), může být určen programátorem, administrátorem,... Nevýhoda: Pokud je přiděleno málo rámců, bude docházet k častým výpadkům stránek. Pokud je přiděleno moc rámců, do hlavní paměti se vejde pouze malý počet procesů. variable-allocation policy Počet rámců přidělených procesu se dynamicky mění podle potřeby. Velký počet výpadků stránek obvykle indikuje nutnost přidat další rámce danému procesu (PFF Page Fault Frequency alg.). Variable-allocation policy je efektivnější, ale vyžaduje softwarové řešení v jádru OS. 5

Strategie nahrazování Rezidentní rozsah Local replacement policy Mezi kandidáty pro náhradu stránek patří pouze stránky patřící procesu, který způsobil výpadek stránky. Global replacement policy Mezi kandidáty patří všechny stránky v hlavní paměti. Pro nahrazování stránek existují tyto možnosti Fixed-allocation, local scope Variable-allocation, global scope. Variable-allocation, local scope 6

Strategie ukládání (Cleaning policy) Určuje, kdy se modifikované stránky budou zapisovat na disk. Ukládání na žádost (Demand cleaning) Stránka je uložena na disk až v okamžiku nahrazování. Průběžné ukládání (Precleaning policy) Modifikované stránky jsou průběžně ukládány na disk. Ukládání je efektivnější protože probíhá ve větších objemech. Page buffering Ukládáme pouze stránky, které by mohly být nahrazeny. Stránky vhodné pro náhradu jsou umístěny do dvou seznamů: modifikované a nemodifikované. Stránky ze seznamu modifikované jsou periodicky v dávce zapisovány na disk a přesunuty do seznamu nemodifikované. Stránky ze seznamu nemodifikované jsou buď ze seznamu vyloučeny, pokud se k nim bude ještě přistupovat, a nebo přepsány pokud jsou nahrazeny. 7

Řízení zatížení (Load control) Pokud proces způsobuje časté výpadky stránek, je označen jako přetížený (thrashing). Pokud pracovní množiny (working sets) všech procesů překročí kapacitu hlavní paměti, dojde k přetížení celého systému. Způsob jak snížit přetížení hlavní paměti je odložení (swap) některých procesů na disk a uvolněné rámce přidělit ostatním procesům. Periodicky, některé procesy přesunuty z paměti na disk a jiné z disku zpět do paměti. 8

Alokace odkládacího prostoru (swap area) Static swap area Když je proces spuštěn, je pro něj rezervován alokační prostor. Výhoda: Procesy jsou odkládány na stejné místo na disku. Nevýhoda: Alokujeme více než je v daném okamžiku nutné. Problém se zvětšujícími se procesy. Dynamic swap area Alokujeme místo na disku pro každou stránku až při odkládání a uvolníme ho pří zpětném přesunu do paměti. Nevýhoda: Proces muže být ukončen při nedostatku odkládacího prostoru. Složitější SW pro správu odkládacího prostoru. 9

Algoritmy pro náhradu stránek Všechny rámce stránek v hlavní paměti jsou obsazené. Potřebujeme nahrát další virtuální stránku do hlavní paměti. Algoritmus pro náhradu stránek musí určit stránku, která bude nahrazena. Většina algoritmů je založena na principu lokality (stránky, ke kterým se přistupovalo v nedávné minulosti, se bude přistupovat s velkou pravděpodobností v blízké budoucnosti). 10

Optimální algoritmus Princip: Nahradí se stránka, která již nebude používána (pokud taková existuje). Jinak nahradíme stránku, která bude používána za nejdelší dobu od tohoto okamžiku. Realizace: Každé stránce přiřadíme číslo, které říká, kolik instrukcí se musí provést před tím, než se k této stránce bude přistupovat. Optimální algoritmus nahradí stránku s nejvyšším číslem. Výhody: Dosahuje nejlepších výsledků. Nevýhody: Musíme znát budoucnost. V praxi nelze použít. Slouží pro porovnávání ostatních algoritmů. 11

Not Recently Used Alg. (NRU) Každé stránce jsou přiřazeny dva bity R a M: R bit je nastaven, když ke stránce přistupujeme (čtení/zápis) M bit je nastaven, když stránku modifikujeme (zápis). Tyto bity jsou uloženy např. v TLB, tabulce stránek. Jsou aktualizovány hardwarem při každém přístupu na stránku. Při spuštění procesu jsou oba bity vynulovány. Periodicky (např. při přerušení od časovače) je bit R nulován tak, abychom rozlišili, které stránky byly používány nedávno. 12

NRU Při výpadku stránky, lze stránky rozdělit do 4 kategorií: Kategorie 0: R=0 M=0, Kategorie 1: R=0 M=1, Kategorie 2: R=1 M=0, Kategorie 3: R=1 M=1. Algoritmus NRU náhodně nahradí stránku z nejnižší kategorie, která není prázdná. NRU je jednoduchý na pochopení a implementaci, a poskytuje odpovídající výsledky. 13

First-In First-Out Alg. (FIFO) OS si udržuje seznam všech stránek, které jsou právě v hlavní paměti. Nejstarší stránky jsou na začátku seznamu. Posledně nahrané stránky jsou na konci seznamu. Při výpadku stránky, je nejstarší stránka ze začátku seznamu vyhozena z hlavní paměti a nová stránka je přidána na konec seznamu. Nevýhoda: FIFO bere v úvahu pouze, kdy se stránka načetla do hlavní paměti, ale nikoliv jak často se ke stránce přistupuje. 14

Second Chance Alg. Jednoduchá modifikace FIFO pomocí bitu R, který se nastavuje při přístupu ke stránce a periodicky se nuluje. Princip: Při výpadku stránky procházíme seznam od začátku. Pokud R bit je 0, je stránka stará a nepoužívaná, proto ji nahradíme. Pokud R bit je 1, potom tento bit vynulujeme, stránku přesuneme na konec seznamu a pokračujeme v hledání. 15

Second Chance Alg. 16

Clock Alg. Modifikace algoritmu second chance. Informace o virtuálních stránkách je udržována v cyklické frontě orientované ve směru hodinových ručiček. Při výpadku stránky, začneme hledat od stránky, na kterou ukazuje ručička: Pokud R = 0, potom stránku nahradíme, Pokud R = 1, potom vynulujeme bit R a posuneme ručičku a hledáme dál. 17

Least Recent Used Alg. (LRU) Dobrá aproximace optimálního algoritmu. Princip: Stránky hodně používané během několika posledních instrukcí budou s velkou pravděpodobností ještě používány během několika následujících instrukcí. LRU Při výpadku stránky nahradíme stránku, která nebyla používána po nejdelší dobu. Teoreticky realizovatelné, ale drahé. Úplná implementace LRU seznam stránek setříděný podle doby přístupu, aktualizován při každém přístupu do paměti. 18

LRU HW Implemetace I Máme speciální 64-bit HW čítač C. Každá položka v tabulce stránek má políčko, které obsahuje kopii čítače C. Čítač C je automaticky inkrementován při každé instrukci. Při přístupu na danou stránku aktuální hodnota čítače C je uložena do položky v tabulce stránek patřící dané stránce. Při výpadku stránky, nahradíme stránku s nejmenší hodnotou C. 19

LRU HW Implemetace II Pro počítač s n rámci stránek, LRU hardware udržuje matici n x n bitů, na začátku inicializovaných na 0. Při přístupu ke stránce uložené v rámci k : nejdříve HW nastaví všechny bity v řádku k na 1, potom nastaví všechny bity ve sloupci k na 0. V jakémkoliv okamžiku, řádek s nejnižší binární hodnotou reprezentuje nejméně používanou stránku. 20

Příklad: HW Implementace LRU Ke stránkám ve 4 rámcích bylo přistupováno v tomto pořadí: 0 1 2 3 2 1 0 3 2 3 Obrázky ukazují aktuální hodnoty v matici 4x4 po jednotlivých krocích: 0 1 2 3 0 1 2 3 0 1 2 3 0 1 2 3 0 1 2 3 0 0 1 1 1 0 0 0 1 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 1 0 1 1 1 1 0 0 1 1 1 0 0 0 1 1 0 0 0 2 0 0 0 0 2 0 0 0 0 2 1 1 0 1 2 1 1 0 0 2 1 1 0 1 3 0 0 0 0 3 0 0 0 0 3 0 0 0 0 3 1 1 1 0 3 1 1 0 0 0 1 2 3 0 1 2 3 0 1 2 3 0 1 2 3 0 1 2 3 0 0 0 0 0 0 0 1 1 1 0 0 1 1 0 0 0 1 0 0 0 0 1 0 0 1 1 0 1 1 1 0 0 1 1 1 0 0 1 0 1 0 0 0 0 1 0 0 0 0 2 1 0 0 1 2 0 0 0 1 2 0 0 0 0 2 1 1 0 1 2 1 1 0 0 3 1 0 0 0 3 0 0 0 0 3 1 1 1 0 3 1 1 0 0 3 1 1 1 0 21

LRU SW Implementace Předchozí algoritmy jsou závislé na speciálním hardwaru. Můžeme použít softwarové řešení nazývané NFU (Not Frequently Used). S každou stránkou je spojen SW čítač a bit R, na počátku nastavené na 0. Při přístupu na stránku je nastaven bit R na 1. Při přerušení od časovače R bit je přičten k čítači u každé stránky a vynulován. Při výpadku stránky, stránka s nejnižším čítačem je nahrazena. 22

Aging Alg. Problém: Algoritmus NFU nic nezapomíná (nerozlišuje kdy se ke stránce přistupovalo). Řešení: pomocí principu stárnutí. Pří přerušení od časovače: Obsah čítače je posunut doprava o jeden bit před přičtením bitu R. Bit R je přičten do nejlevějšího bitu čítače. Bit R je vynulován. Při výpadku stránky, nahradíme stránku s nejmenší hodnotou čítače. 23

Příklad: Aging Alg. c l o c k t i c k 0 c l o c k t i c k 1 c l o c k t i c k 2 c l o c k t i c k 3 c l o c k t i c k 4 R b i t s f o r p a g e s 0-5 R b i t s f o r p a g e s 0-5 R b i t s f o r p a g e s 0-5 R b i t s f o r p a g e s 0-5 R b i t s f o r p a g e s 0-5 1 0 1 0 1 1 1 1 0 0 1 0 1 1 0 1 0 1 1 0 0 0 1 0 0 1 1 0 0 0 0 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 1 1 0 0 0 0 0 1 1 1 1 0 0 0 0 0 1 1 1 1 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 1 0 1 1 0 0 0 0 2 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 1 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 4 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 1 0 1 1 0 0 0 0 0 1 0 1 1 0 0 0 5 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 1 0 1 0 0 0 24

Working Set Alg. Pro každý proces definujeme: Aktuální virtuální čas (CVT) = množství času CPU, které proces skutečně využil. Pracovní množina (WS) = množina stránek, ke kterým proces přistupoval během poledních α jednotek svého CVT. Každá položka v tabulce stránek obsahuje TLU čas posledního použití, R referenced bit, M modified bit. Při přístupu (čtení/zápis) ke stránce nastavíme bit R na 1. Při modifikaci stránky nastavíme ještě bit M na 1. Periodicky při přerušení od časovače vynulujeme bit R. 25

Working Set Alg. Při výpadku stránky Nechť AGE = CVT TLU. Procházíme tabulku stránek a testujeme R bit: Pokud (R = 1), potom TLU = CVT and R = 0. Pokud (R = 0 and AGE > α ), potom nahradíme tuto stránku (nepatří do WS). Pokud (R = 0 and AGE α), potom si zapamatujeme stránku s největším AGE (tato stránka patří do WS). Pokud všechny stránky patří do WS, nahradíme stránku s největším AGE (pokud jich bude více, vybereme náhodně jednu). Nevýhoda: musíme procházet celou tabulku stránek. 26

Working Set Clock Alg. Lepší implementace working set algoritmu. Informace o rámcích stránek jsou uloženy v kruhové frontě orientované ve směru hodinových ručiček. Každá položka fronty obsahuje TLU čas posledního použití, R referenced bit, M modified bit. 27

Working Set Clock Alg. Při výpadku stránky je stránka, na kterou ukazuje ručička, testována jako první: Pokud (R = 1),potom TLU = CVT, R = 0 a posuneme ručičku. Pokud (R = 0 and AGE > α and M = 0), potom do tohoto rámce nahrajeme novou stránku. Pokud (R = 0 and AGE > α and M = 1) naplánujeme zápis obsahu rámce na disk a posuneme ručičku. Pokud jsme otestovali celou frontu: Pokud aspoň jeden zápis byl naplánován, potom novou stránku nahrajeme do prvního uloženého rámce. Pokud žádný zápis nebyl naplánován, potom všechny stránky patří do WS. Pokusíme se použít první čistý rámec (M = 0). Pokud neexistuje žádný čistý rámec, uložíme obsah aktuálního rámce a nahrajeme do něj novou stránku. 28

Shrnutí A l g o r i t m u s V l a s t n o s t i O p t i m a l S l o u ž í p o u z e j a k o b e n c h m a r k N R U ( N o t R e c e n t l y U s e d ) V e l m i h r u b ý F I F O ( F i r s t - I n, F i r s t - O u t ) N a h r a d í i d ů l e ž i t é s t r á n k y S e c o n d c h a n c e V ý r a z n é v y l e p š e n í F I F O C l o c k R e a l i s t i c k ý L R U ( L e a s t R e c e n t l y U s e d ) V ý b o r n ý, t ě ž k o s e i m p l e m e n t u j e N F U ( N o t F r e q u e n t l y U s e d ) H r u b á a p r o x i m a c e L R U A g i n g E f e k t i v n í a p r o x i m a c e L R U W o r k i n g s e t V ý b o r n ý, š p a t n á i m p l e m e n t a c e W S C l o c k E f e k t i v n í a l g o r i t m u s 29

Windows XP 32 bitový x86 VAS 2GB User Space + 2GB System Space 3GB User Space +1GB System Space Velikost stránek Malé 4KB Velké 4MB (2MB na systémech s Physical Address Extension PEA) Překlad VA na FA Dvouúrovňová tabulka stránek + TLB Tříúrovňová tabulka stránek + TLB (na PEA) 30

Windows XP 64 bitový x64 VAS: 8192GB (8TB) User Space + 6657GB System Space Velikost stránek: malé 4KB/velké 2MB Překlad VA na FA Čtyřúrovňová tabulka stránek + TLB Nahrávání stránek Při spuštění: prepaging Po nahrání: demand paging Náhrada stránek Aging alg. Systém udržuje dostatečný počet volných rámců. Periodicky provádí náhradu a ukládání stránek. 31