Professional Documents
Culture Documents
Pameeti I8I
Pameeti I8I
3000
Úloha 2 Volný blok
0 4000
0 1
1000 5000
1 3
2000 6000
2 5
3000 7000
3 6
4000 8000
9000
Volný blok
10 000
Stránkování
= referenční bit
= se nastaví vždy, když odkazuje na stránku, ať už pro čtení nebo zápis
= hodnota tohoto bitu pomáhá operačnímu systému vybrat stránku, která by
měla být vyřazena v případě, že dojde k chybě stránky
= stránky, které se nepoužívají jsou lepšími kandidáty než stránky, které jsou
využívány často
= deakHvace ukládání stránky do mezipaměH
= funkce důležitá pro stránky, které se mapují na registry zařízení
= pokud operační systém vyčkává ve smyčce a čeká, až nějaké vstupní/výstupní zařízení
zareaguje na zadaný příkaz, je nezbytné, aby hardware stále načítal slovo ze zařízení a
nepoužíval starou kopii v mezipaměE
= Rmto bitem lze ukládání do mezipaměG vypnout
= stroje, které mají oddělený I/O prostor a nepoužívají mapování I/O paměE tento bit
nepotřebují.
Stránkování
Stránkování
= Výhody:
= eliminuje fragmentaci;
= umožňuje zvýšit počet úloh, pro které lze vytvořit paměťové
prostory současně;
= lepší využiR procesoru a operační paměG;
= eliminuje se režie zhušťování;
= Nevýhody:
= technické prostředky pro transformaci stránek zvyšují obvykle
cenu výpočetního systému a současně snižují jeho rychlost;
= uchovávání tabulek zabírá část operační paměH;
= současně se zvyšuje režie (čas procesoru) o dobu potřebnou k
udržování těchto tabulek;
Techniky přidělování pamě8
= Dosud
= úloha mohla být zpracována jen tehdy, když ji byla přidělena
paměť pro celý adresový prostor;
= časté nevyužité volné oblasti;
= Řešení
= veliké paměti;
= simulace rozsáhlé paměti
= virtuální paměť
= stránkování na žádost
= segmentace paměti.
Memory Management Unit
(MMU)
Page 0
Page 1
Page 2
Memory
map
Real
memory
Page n External
memory
Virtual
memory
Swapování
= Možné problémy
= program se odvolává na oblast adresového prostoru, která
není zavedena v operační paměH;
= strategie rozhodování, které stránky mají být uchovány v
operační paměH;
= Technické řešení
= rozšíření tabulky stránek o stavový bit;
= false - stránka je v operační paměG;
= true - stránka není v operační paměG;
Stránkování na žádost
Došlo ke
Je k změně Zapiš stránku zpět
dispozici na na disk
volný stránce?
blok?
= Nejjednodušší design
= mít tabulku jedné stránky sestávající z řady rychlých
hardwarových registrů s jedním záznamem pro virtuální
stránku v mezipaměH, která je indexována podle čísla virtuální
stránky, jak již zde bylo představeno
= když je proces spuštěn, operační systém načte registry s
tabulkou stránek procesu převzatou z kopie uložené v hlavní
paměH
= během vykonávání procesu nejsou pro tabulku stránek
potřeba žádné další odkazy na paměť
= tato metoda je přímá a nevyžaduje žádné další odkazy na
paměť během mapování
= nevýhodou je její nákladnost, pokud je tabulka stránek větší
Obecné řešení 2
= druhý design
= celá tabulka stránek že může být přímo v paměH
= všechny hardwarové potřeby pak tvoří jediný registr, který
odkazuje na začátek tabulky stránek
= tento design umožňuje změnu virtuální mapy na fyzickou
mapu při přepnuS kontextu opětovným načtením jednoho
registru
= nevýhoda je v tom, že vyžaduje jeden nebo více odkazů na
paměť ke čtení položek tabulky stránek během provádění
každé instrukce, což je velmi pomalé
Translation lookaside buffer
= TLB
= hardwarové zařízení pro mapování virtuálních adres na fyzické
adresy bez nutnosH procházet tabulku stránek
= speciální hardwarová cache v MMU
= má za úkol řešení hlavního problému, kterému se budeme věnovat, a
to je zrychlení stránkování
Fungování TLB