(Memory Management) - PowerPoint PPT Presentation

Loading...

PPT – (Memory Management) PowerPoint presentation | free to download - id: 731ece-M2FkN



Loading


The Adobe Flash plugin is needed to view this content

Get the plugin now

View by Category
About This Presentation
Title:

(Memory Management)

Description:

Lecture #9 (Memory Management) – PowerPoint PPT presentation

Number of Views:27
Avg rating:3.0/5.0
Slides: 49
Provided by: ackr
Learn more at: http://mclab.silla.ac.kr
Category:

less

Write a Comment
User Comments (0)
Transcript and Presenter's Notes

Title: (Memory Management)


1
Lecture 9
  • ?? ?? ??
  • (Memory Management)

2
???? ??(Memory Management)
  • ???? ??(Memory Management)
  • ?????? ??? ????? ???? ??? ????? ????? ?? ???? ??
  • ?? ? ?? ?????? ?????? ????? ?? ????? I/O ???? ??
    ??? ? ? ??? ? ?? CPU? ??(idle) ??? ??
  • ??? ?? ????? ?????? ?????
  • CPU? ????? ?? ? ??
  • ??? ??? ???(swapping)? ?? ??
  • ??? swapping? ??? ??? ??
  • ??? ?? ????? ?????? ??? ? ??? ?????? ????? ?????
    ??

3
???? ?? ?? ??(1)
  • ???(Relocation)
  • ????? ???? ? ??? ??
  • ????? ??? ?? ?????? ???? ??? ? ? ??
  • ????? swapping?? ?? ?? ??????? ??? ??
  • ???? ???? ???? ??(??)? ????? ???? ????? ??? ?? ??
    ???? ???? ??? ????? ??

4
(No Transcript)
5
???? ?? ?? ??(2)
  • ??(Protection)
  • ????? ??? ?? ?? ????? ???? ????? ???? ???? ??? ??
  • ????? ??? ? ? ?? ??? ???? ?? ??? ????? ???? ???
    ???? ?? ?????
  • ???? ??? ????? ????? ?? ????? ??

6
???? ?? ?? ??(3)
  • ??(Sharing)
  • ?? ?? ????? ?????? ??? ??? ??? ?? ?? ??? ? ???
    ????? ??
  • ???? ?????? ??? ???? ??? ??? ??
  • ? ????? ??? ???? ?? ??? ??? ???? ??? ???? ?? ???
    ????? ?? ?? ?? ?????

7
???? ?? ?? ??(4)
  • ???? ??(Logical Organization)
  • ????? ?? ?? ??? ?? ?? ?? ?? (module) ? ????
  • ???? ??(instruction module)? ?? ?? ???? ???? ???
  • ??? ??(data module)? ??? ??? ?? ? ? ??
  • ? ??? ????? ????? ???? ??? ? ??
  • ??? ????? ????? ??? ???? ????? ????? ????? ?? ???
    ????? ??
  • ?? ?? ?? ??
  • ?? ? ?? ??

8
???? ?? ?? ??(5)
  • ???? ??(Physical Organization)
  • ????? ???? ??? ???
  • ?????? ?? ???? ????? ???? ????
  • ??????? ????? ???? ???? ???? ?? ????
  • ?????? ?????? ??? ??? ??? ?? ???? ?? ??? ?? ????
  • ? ??? ?????? ????? ??? ?? ??? ????

9
??? ???? ?? ??
  • ?? ?? ????? ?? ????(Virtual Memory) ??? ???? ??
  • ???? ???? ???? ?? ???? ????? ?????? ?? ??
  • ??? ???? ?? ??
  • ?? ???? ?? ??? ???? ?? ??
  • ???? ????? ?? ???? ?????? ?? ??
  • fixed partitioning
  • dynamic partitioning
  • simple paging
  • simple segmentation

10
?? ?? ?? (Fixed Partitioning)(1)
  • ?????? ??? ?? ??(partitions) ?? ???? ???? ????
    ???? ??
  • Partitions? ??? ??? ???? ?? ??? ?? ? ??

11
?? ?? ??(2)
  • Partition ???? ??? ?? ????? ?? partition? ????
  • ?? partition? ???? ??? ????? ???(swapping)? ??
    ??? ????? ???
  • Partition ???? ? ? ????? ?? (overlay) ??? ????
    ????? ??
  • ???? ??? ?? ???? ??? ???? partition? ????
  • ?? ???? ?? ??? ???? ??? ??? partition? ???? ????

12
?? ?? ??(3)
  • ????? ??? ??????
  • Partition ???? ?? ????? ??? partition ??? ????
  • ? 2MB ????? 8MB partition? ???? 6MB ????? ????
    ??? ??
  • ?? ???(internal fragmentation)
  • ?? ??? ?? ?? partition? ???? ?? ???? ?? ? ??? ???
    ?? ??? ???? ??
  • ?? ?? partition ??? ?? IBMs OS/MFT
    (Multiprogramming with a Fixed number of Tasks)
    ?? ??

13
?? ?? ????? ?? ????(Placement Algorithm with
Partitions)(1)
  • ?? ?? partition(Equal-size partitions)
  • ?? ??? partition? ??? ????? ? partition? ????
  • ?? partition? ??? ????? ?? partition ? ??? ????
    ??? ?? ???
  • ?? partition? ?? ??? ?????? ?? ???? ??? ??? ?????
    ?? ?? ??? ????? swapping??

14
?? ????(2)
  • ?? ?? partition (Unequal-size partitions) use of
    multiple queues
  • ? ????? ??? ???? partition ??? ?? ?? partition?
    ????
  • ? partition ?? ?? ???(queue)? ??
  • ?? ???(internal fragmentation)? ???
  • ??? ??? ?? ??? ???? ????? ?? ???? ???? ?? ?? ??
    partition? ???? ???

15
?? ????(3)
  • ?? ?? partition use of a single queue
  • ? ????? ??? ???? partition ??? ?? ?? partition?
    ????
  • ?? ???? ????? ?? ????? ??? ?????

16
?? ?? ??(Dynamic Partitioning)
  • ?????? ?? ?? ??? ?? Partition?? ???? ??
  • ? ?????? ???? ??? ????? ????
  • ?????? ?? ?? ??? partition?? ????
  • ?? ???(external fragmentation) ?? ??
  • ?????? ?? ??? ???? ???? ? ????? ???? ???
  • ???? ??(memory compaction) ? ??
  • ???? ????? ?? ??? ???? ??? ??
  • IBMs OS/MVT (Multiprogramming with a Variable
    number of Tasks)?? ??

17
?? ?? ?? ??(1)
  • 3?? ????? ??? ?? 64K? ?? ?? ??? ?? ?? ?????
    ?????? ?? ??
  • ? ????? ?? ??? ??, ????? ???? 4? ???? ?? ???? 2?
    swapping ??

18
?? ?? ?? ??(2)
  • 96K ??? ??? ??
  • ????? ???? 2? ?? ???? 1? swapping 96K ??? ???
    ??
  • ???? ??(Compaction)?? 256K ??? ??? ????? ??

19
?? ?? ??? ?? ????(1)
  • ????? ??? ?? ??? ???? ??? ???? ????
  • ?? ???? ??(compaction) ??? ??? ??(time
    consuming)
  • ??? ????
  • Best-fit ??? ???? ?? ?? ?? ?? ??? ??
  • First-fit ??? ???? ?? ?? ??? ??? ??
  • Next-fit ??? ??? ????? ??? ???? ??? ??? ??

20
(No Transcript)
21
?? ?? ??? ?? ????(2)
  • Next-fit ????? ???? ????? ?? ? ??? ???? ??? ????
  • First-fit ????? ???? ???? ??? ???? ??? ??
  • Next fit ??????? ???? ?? ????
  • Best-fit ????? ?? ?? ??? ???
  • ? ?? ???? ??? ??? ??
  • ????? ???? ?? ????
  • ????? compaction? ?? ??? ?? ??

22
?? ?? ??? ??? ????(Replacement Algorithm)
  • ?????? ?? ?? ????? ?? ??? ?? ????? ?? ????? ????
    ???? ????? ??
  • ??? ????? swapping?? ??? ????? ?????
  • ?? ????(Virtual Memory) ???? ??
  • LRU(Least Recently Used)
  • FIFO(First-In First-Out)

23
Buddy System(1)
  • ?? ?? ??? ?? ?? ??? ??? ???? ?? ??? ??
  • Unix SVR4??? kernel memory allocation? ?? ???
    ????? ??
  • 2K (L lt K lt U) ??? ???? ??? ?? ??
  • 2L smallest size of allocatable block
  • 2U largest size of allocatable block
    (generally, the entire memory available)

24
Buddy System(2)
  • ?? ????
  • 2U ??? ?? ??? ???? ????
  • S ??? ???? ????
  • ?? 2U-1 lt S lt 2U ?? 2U ??? ?? ??? ???
    ????
  • ???, 2U-1 ??? ? ?? buddies ? ???
  • ?? 2U-2 lt S lt 2U-1 ?? ? ?? buddy ?? ???
    ????
  • ??? ???, ??? buddy ?? ??? ?? ?? ??? buddy? ???
  • ?? ??? S ?? ??? ?? ??? ??? ??? ????
  • ? ?? buddy? ???? ?? ??? ?? ? ? ??? buddy? ????

25
Buddy System(3)
  • ????? ?? ?? buddy ???? ????
  • i ?? ???? 2i ??? buddy ???
  • i ?? ????? ???? ? ?? buddy? ???? ? ?? buddy? i ??
    ????? ???? ??? buddy? ?? (i1) ?? ???? ????
  • 2i-1 lt k lt 2i? ?? k? ???? ??? ????
  • ?? i ?? ???? ????
  • i ?? ???? ?? ??? (i1) ?? ???? ????
  • ??? ??? ????? ?? ??? ?? ??? ????

26
Buddy System(4) ??
27
(No Transcript)
28
Buddy Systems (5)
  • ????? 25? ?? ???? ????
  • ? ??? ??? ??? 50? ????
  • ????? ???? ??? ???? ???
  • ???? ??? ??? ??
  • ????? ?? M? 2? ??? ??? ???
  • M 2U bytes
  • ? ??? ??? 2? ??? ??
  • ? M 10 ??, ??? ? ?? ??? ?? ??? 5 ??

29
???? ???(Program Relocation)
  • ????? ??? ????? ??
  • Swapping? ??? ??(compaction) ??? ????? ???? ??
    ??????? ?? ???
  • ????? ???? ??? ??? ??? ? ??
  • ????? ??? ??? ?? ??? ????
  • ??? ??? ??? ??? ?? ??? logical address ? physical
    address ? ????? ??? ? ??

30
?? ??(Address Types)
  • ?????? ????? ??? ???, ??? ???? ?????? ????
  • ??? ??(physical address or absolute address)
  • ?? ?????? ???? ??
  • ??? ??(logical address)
  • ?????? ???? ???? ????? ???? ?? ?? ??
  • ????? ????? ??? ?? ??? ??? ??? ??? ????
  • ?? ??(relative address)
  • ??? ??? ??? ?
  • ???? ?? ?????? ???? ??

31
?? ??
32
?? ??(Address Translation)
  • ???? ?? ???? ???? ???? ??? ??? ?? ??? ????
  • ??? ?? ???? ??? ?? ?? ??? ??? ??? ??? ?????? ????
  • ????? ???? ??? ?? ?? ??? ??? ????
  • ??? ??? ?? ?????? ?????? ??? ????? ?? ????? ??

33
?? ?? ???? ?(1)
  • ???? ?? base register / bound register
  • ????? ?? ??? ??
  • base register (in CPU) ?????? ?? ??? ??
  • bound register ? ????? ??? ??? ??
  • ????? ???? ?? ??? ?? ???? ????
  • Base register ?? ?? ?? ?? ??? ?? ??? ??? ????
  • ??? ??? ??? bound register ?? ?????? ????
  • hardware protection ??? ??
  • ????? ???? ??? ?? ???? ???? ??

34
?? ?? ???? ?(2)
35
??? ??(Simple Paging)
  • ?????? ??? ??? ??? ???? ????
  • ???(Frames ?? Page Frames)
  • ????? ?? ??? ??
  • ? ????? ???? ??? ??? ???? ???
  • ???(Pages) ??? ??? ???? ??
  • ???? ???? ?? ??? ????? ???? ????
  • ??? ????? ?????? ??? ??? ??? ??? ??
  • ???? ???? ???? ?? ???? ???? ????? ?? ??? ??? ????

36
??? ?? ??(1)
  • Now suppose that process B is swapped out

37
??? ?? ??(2)
  • ???? A? C? ?? ??? ?? ???? ???? 5 ???? ???? ?? ???
    ???? D? ????
  • ???? D? ??? ??? ??? ???? ???
  • ?? ???(external fragmentation)? ???? ???
  • ? ????? ??? ????? ?? ???? ????

38
??? ???(Page Tables)
  • ????? ? ????? ??? ??? ???(page table) ? ????
  • ??? ???? ? ??? ??? ???? ???? ????? ??? ??? ???
    ????
  • ??? ??? ???? ???? ??? ???? ???? ??? ??? ??? ?? ?
    ??
  • ?? ??? ???? ???? ???? ??? ???? ????

39
??? ??? ??? ??(1)
  • ?????? ? ??? ??? ??? ??(page number) ? ??? ????
    ?? ??(offset) ? ????
  • ???? ?? (page number, offset)
  • ??? CPU register? ?? ???? ????? ??? ???? ?? ???
    ??? ????
  • ??? ??(??? ??, ???)? ???? CPU? ??? ???? ???? ???
    ??? ??? ?? (??? ??, ???)? ????

40
??? ??? ??? ??(2)
  • ??? ??? 2? ??? ?? ??? ??? ?? ??? ??
  • ??
  • 16 ?? ??, 1KB? ??? ??? ??
  • 10 bits ? offset, 6 bits ? page number
  • 16 ?? ??
  • 16 ??? ??? ??? ????? ?? ????? ???? ??? ???? ??
    ??? ??(?? ??)

41
(No Transcript)
42
??? ??? ??? ??(3)
  • ??? ??? 2? ??? ?????? ?????, ????, ?? ?? ??? ???
    ??? ??? ??
  • ??? ??? ?? ??? ???? ????? ??? ??? ????? ????
  • ?? ??? ?? ??? ????? ?? ????
  • ??? ?? (n,m)? ?? ??? ????? ??? ?? k? ??? ??? m?
    ???? ??? ?? (k,m)? ???

43
??? ??? ?? ??
44
???? ??(Simple Segmentation)(1)
  • ? ????? ?? ?? ??? ??? ???? ???
  • ????(Segments) ????? ???? ?? ?? ??? ??
  • ????? ?????? ??? ?? ???? ??? ???? ????
  • ?? ?? ????? ??? ??? ????? ???? ??? ? ??
  • ?? ???(internal fragmentation)? ??
  • ? ????? ???? ???? ??? ??
  • ?? ???(external fragmentation)? ???
  • ?? ????? ?????? ?? ? ??

45
???? ??(Simple Segmentation)(2)
  • ??? ??? ??? ????? ?????? ? ? ??
  • ????? ???? ??? ??? ? ??
  • ????? ?? ?? ??? ????
  • ?) ???? ??, ??? ?? ?
  • ????? ???? ??? ??? ????? ?????? ???? ??? ????
  • ????? ? ???? ?? ???? ??? (segment table)? ????
  • ???? ???? ??? ??? ?? ????
  • ????? ?? ??? ??
  • ????? ?? (for protection)

46
???? ??? ??? ??
  • ???? ????? ??? ??
  • ???? ?? (segment number)? ???? ???? ??
    ??(offset)?? ??
  • ??? ?? (???? ??, ???)
  • ????? ?? ??? ?? CPU register? ????? ???? ???? ??
    ??? ????
  • ??? ???? ??
  • ??? ?? (segment number, offset) (n,m)? ????
    CPU? ???? ????? ???? ?? ?? k? ???? ?? l? ????
  • ??? ??? ??? m? ???? ?? ?? k?? ??? ???
  • ????? ??? ??????? ???? ?? ??? m? ???? ?? l? ????

47
???? ??? ?? ??
48
??? ??? ???? ??? ??
  • ???? ??
  • ?? ??? ?? ? ??? ????? ??
  • ??? ?? ??? ??? ??
  • ??? ??
  • ?? ?? ?? ???? ????
  • ??????? ??? ??? (transparent) ???? ??? ???????
    ???(visible)
  • ??? ??
  • ???? ??? ????? ????? ????? ??? ? ??? ?? ?? ??? ??
    ??? ??? ? ??
  • ???? ?? ?? ?? ??? ???? ???? ???? ???? ?? ??
    ??(protection bit)? ????? ??
About PowerShow.com