+ All Categories
Home > Documents > Správa paměti

Správa paměti

Date post: 05-Jan-2016
Category:
Upload: osborn
View: 55 times
Download: 3 times
Share this document with a friend
Description:
Správa paměti. Vnitřní (operační paměť). Funkce modulu správce paměti. Udržuje informace o využití paměti Přiděluje paměť procesům Paměť, kterou procesy uvolní, přidá k volné paměti Je-li třeba, odebírá paměť procesům - PowerPoint PPT Presentation
22
Správa paměti Vnitřní (operační paměť)
Transcript
Page 1: Správa paměti

Správa paměti

Vnitřní (operační paměť)

Page 2: Správa paměti

Funkce modulu správce paměti

• Udržuje informace o využití paměti• Přiděluje paměť procesům• Paměť, kterou procesy uvolní, přidá k volné

paměti• Je-li třeba, odebírá paměť procesům• Rozpozná případy, kdy proces skončí bez

uvolnění paměti (např. násilné ukončení)• Zajišťuje ochranu paměti (nedovolí procesům

přístup mimo vymezený prostor)

Page 3: Správa paměti

Operační paměť

• Obvykle umístěna na základní desce

• Některé části mohou být na rozšiřujících deskách (např. videopaměť)

1kB RAM paměť , 1982

1GB RAM paměť , 2009

Page 4: Správa paměti

Adresování

• Absolutní adresa• Relativní adresa

Page 5: Správa paměti

Adresový prostor

• Fyzický adresový prostor• Logický adresový prostor

• LAP <= FAP reálné přidělování paměti• LAP > FAP virtuální přidělování paměti

Page 6: Správa paměti

Reálné metody přidělování paměti

• Přidělení jedné souvislé oblasti• Přidělení bloků pevné velikosti• Přidělení bloků proměnné velikosti• Segmentace• Stránkování

Page 7: Správa paměti

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

Paměť OS

Paměť procesu

Nevyužitá paměť

$0000

Mezní registr

Page 8: Správa paměti

Swapování

• Celá paměť od mezního registru nahoru je uložena do vnější paměti (na pevný disk).

• Princip zásobníku• Multiprogramový systém (ne multiprocesní)• Některé nadstavby MS DOSu, Windows 2

Page 9: Správa paměti

Přidělování bloků pevné velikosti

Paměť OS

Používá proces 1

nevyužito

nevyužito

Používá proces 2

Volná paměť

Přiděleno procesu 1

Přiděleno procesu 2

Page 10: Správa paměti

Přidělování bloků proměnné velikosti (dynamické přidělování paměti)

Paměť OS

Používá proces 1

Používá proces 2

Volná paměťnull

Page 11: Správa paměti

Segmentace

• Každý proces má přiděleno několik nezávislých segmentů, například– Kód procesu (pevná délka, pevný obsah)– Globální konstanty (pevná délka, pevný obsah)– Globální proměnné (pevná délka, proměnný

obsah)– Zásobník (proměnná délka i obsah)

Page 12: Správa paměti

Segmentace

Paměť OS

kód

data

Rozšířená data

Volná paměť

zásobník

SS

ES

DS

CS

Registry procesoru

Page 13: Správa paměti

Stránkování

• Paměťový prostor procesu je rozdělen na stejně dlouhé úseky – stránky (např. 4096 B)

• Procesu se prostor jeví jako spojitý, je logicky spojitý, logické adresy jsou z intervalu <0,počet stránek x velikost stránky>

• Fyzicky jsou stránky na různých místech paměti, fyzicky je adresový prostro procesu nespojitý

Page 14: Správa paměti

Stránkování

7

6

5

4

3

2

1

0

0 volno

1 Proces 1

2 Proces 2

3 Proces 3

4 Proces 1

5 Volno

6 Proces 2

Tabulka obsazení pamětipaměť

Page 15: Správa paměti

Výběr vhodného místa paměti pro proces

• Předcházíme fragmentaci paměti• Metody– First fit (první souvislý blok, do kterého se

požadavek vejde)– Best fit (blok s nejblíže vyšší velikostí, než je

požadavek)– Last fit– Worst fit (největší volný blok)– …

Page 16: Správa paměti

Setřásání paměti

• Řešení již vzniklé fragmentace• Obvykle časově náročné• Používá se jen v nutných případech, tj. když

nelze nalézt souvislý blok požadované velikosti• Správce paměti informuje každý proces o

změně fyzického paměťového prostoru• Tato zpráva má větší prioritu než jakákoliv

činnost procesu

Page 17: Správa paměti

Virtuální paměť

• http://www.youtube.com/watch?v=59t_0uYbeL8

Page 18: Správa paměti

Virtuální paměť

• Fyzická paměť rozdělena na rámce (fyzické kolejnice)

• Logická paměť rozdělena na stránky (místa pro uložení kolejnic)

• Stránka má buď– Přidělen rámec, nebo– Je odložena (do vnější paměti)

• Některé stránky nelze odložit (systémové procesy)

Page 19: Správa paměti

Virtuální paměť, stránkování na žádost

Rámec 4

Rámec 3

Rámec 2

Rámec 1

Rámec 0

Stránka 7

Stránka 6

Stránka 5

Stránka 4

Stránka 3

Stránka 2

Stránka 1

Stránka 0

Vnější paměť

Page 20: Správa paměti

Proces žádá o stránku 4

Rámec 4

Rámec 3

Rámec 2

Rámec 1

Rámec 0

Stránka 7

Stránka 6

Stránka 5

Stránka 4

Stránka 3

Stránka 2

Stránka 1

Stránka 0

Vnější paměť

Page 21: Správa paměti

Metody výběru oběti

• FIFO – Je odložena stránka, která má rámec přidělen nejdéle

• LIFO• LFU = Less Frequently Used• LRU = Last Recently Used• NRU = Not Used Recently (hodinový

algoritmus cyklicky prochází stránky a nuluje jejich used bit

Page 22: Správa paměti

Segmentace se stránkováním na žádost

Proces 1

Proces 2

kód

data

zásobník

kód

data

zásobník

Stránka 7

Stránka 6

Stránka 5

Stránka 4

Stránka 3

Stránka 2

Stránka 1

Stránka 0

Rámec 3

Rámec 2

Rámec 1

Rámec 0

Vnější paměť


Recommended