ch9 memory management

56
บบบบบ 9 กกกกกกกกกกกกกกกกกก กกก Memory Management

Upload: phichya-laemluang

Post on 18-Nov-2014

113 views

Category:

Documents


0 download

TRANSCRIPT

Memory Management

9

(Swapping) (Contiguous Allocation) (Paging) (Segmentation)

Memory Management

2

Input queue Memory Management 3

addressing 3 )

Compile time: Load time: relocatable code Execution time: relocatable code logical address physical address

Memory Management

4

user program

Memory Management

5

Logical address (Virtual address) Physical address (MMU) logical address physical address compile-time load time execution-time

Memory Management

6

Memory-Management Unit (MMU)

MMU relocation register user program Memory Management 7

Dynamic relocation

Memory Management

8

Dynamic Loading Memory Management 9

Dynamic Linking

(stub) routine Memory Management 10

Overlays overlay

Memory Management

11

Overlays

Memory Management

12

Swapping backing store Backing store image Roll out, roll in (lower-priority) backing store roll out roll inMemory Management

13

Swapping () swap backing store Unix, Linux, Windows

Memory Management

14

Swapping

Memory Management

15

Contiguous Allocation

2 low memory high memory 2 Memory Management 16

Contiguous Allocation ()

(Single-partition allocation) user program Relocation-register Relocation register limit register Memory Management 17

Relocation and Limit Registers

Memory Management

18

Contiguous Allocation ()

(Multiple-partition allocation) user program (Hole) (allocated partitions) free partitions hole

Memory Management

19

OS OS OS OS

process 5

process 5

process 5 process 9

process 5 process 9

process 8

process 10

process 2

process 2

process 2

process 2

Memory Management

20

3 First-fit: Best-fit: Worst-fit:

Memory Management

21

() First-fit best-fit worst-fit

Memory Management

22

Fragmentation

External Fragmentation Internal Fragmentation

Memory Management

23

Fragmentation ()

(compaction) - Memory Management 24

(Paging)

(frames) 512 8 kbytes ( (pages) Memory Management 25

(Paging) () n n (page table)

Memory Management

26

Page number (p) Page offset (d) Memory Management 27

()

Memory Management

28

Paging

Memory Management

29

Paging ()

Memory Management

30

(Free Frames)

Before allocation

Memory Management

After allocation

31

Page Table

Page-table base register Page-table length register associative memory translation look-aside buffers (TLBs)

Memory Management

32

Paging Hardware TLB

Memory Management

33

Valid-invalid bit valid invalid

Memory Management

34

Valid (v) or Invalid (i) Bit

Memory Management

35

Hierarchical Paging Hashed Page Tables Inverted Page Tables

Memory Management

36

Hierarchical Paging

Memory Management

37

32 4 K 20 page offset 12 20 10 10 page number page offsetpi 10 p2 10 d 1238

Memory Management

()

Memory Management

39

32

Memory Management

40

Hashed Page Tables > 32

Memory Management

41

Hashed Page Tables ()

Memory Management

42

Inverted Page Table (Virtual Address) (Hash Table) Memory Management 43

Inverted Page Table

Memory Management

44

(Shared Pages) (Shared code) read-only text editors, compilers, window systems (Private code and data)

Memory Management

45

Memory Management

46

Segmentation

Segmentation segment segment

Memory Management

47

Segmentation ()

main program, procedure, function, method, object, local variables, global variables, common block,Memory Management 48

Memory Management

49

Segmentation 1 1 2 4

3 4

2

3

user spaceMemory Management

physical memory space50

Segmentation

2 segment-number offset , Segment table 2 base limit Segment-table base register (STBR) Segment-table length register (STLR) Memory Management 51

Segmentation ()

dynamic segment table segment segment segment number Memory Management 52

Segmentation () first fit/best fit external fragmentation segment table validation bit 0 illegal segment

Memory Management

53

Segmentation

Memory Management

54

Segmentation

Memory Management

55

Segment

Memory Management

56