Professional Documents
Culture Documents
7-OS Virtual Memory
7-OS Virtual Memory
|
(OS: Operating Systems) | (Memory Management) | 1
Virtual Memory
Background
Demand Paging
Process Creation
Page Replacement
Allocation of Frames
Thrashing
Operating System Examples
|
(OS: Operating Systems) | (Memory Management) | 2
Learning Objectives
(demand paging)
|
(OS: Operating Systems) | (Memory Management) | 3
Background
(
)
single program
overlay
(sub program)
Multiprogram
(virtual memory) OS
|
(OS: Operating Systems) | (Memory Management) | 4
Background
2 main program
Sub
Program
|
(OS: Operating Systems) | (Memory Management) | 5
Background
(Virtual memory)
(logical memory)
(physical memory)
(execution)
(Logical address) (physical address
space)
Virtual memory
Demand paging
Demand segmentation
|
(OS: Operating Systems) | (Memory Management) | 6
|
(OS: Operating Systems) | (Memory Management) | 7
Demand Paging
page
Page
invalid reference (abort)
not-in-memory (bring to memory)
|
(OS: Operating Systems) | (Memory Management) | 8
|
(OS: Operating Systems) | (Memory Management) | 9
Valid-Invalid Bit
valid-invalid bit
1
1
1
1
0
validinvalid
bit page table entry 0 page
fault
0
0
page table
|
(OS: Operating Systems) | (Memory Management) | 10
|
(OS: Operating Systems) | (Memory Management) | 11
Page Fault
page trap to OS
page fault
OS
empty frame
Swap page frame
Reset tables, validation bit = 1.
: Least Recently Used
block move
|
(OS: Operating Systems) | (Memory Management) | 12
|
(OS: Operating Systems) | (Memory Management) | 13
(free frame)?
(page)
|
(OS: Operating Systems) | (Memory Management) | 14
Process Creation
Virtual memory
- Copy-on-Write
- Memory-Mapped Files
|
(OS: Operating Systems) | (Memory Management) | 17
Copy-on-Write
Copy-on-Write (COW) parent and child
processes share page
page page
COW page
Free pages pool zeroed-out pages.
|
(OS: Operating Systems) | (Memory Management) | 18
Memory-Mapped Files
map pages
|
(OS: Operating Systems) | (Memory Management) | 19
|
(OS: Operating Systems) | (Memory Management) | 20
Page Replacement
page-fault
service routine page replacement
modify (dirty) bit overhead
Page replacement logical
memory physical memory virtual memory
physical memory
|
(OS: Operating Systems) | (Memory Management) | 21
|
(OS: Operating Systems) | (Memory Management) | 22
Page Replacement
|
(OS: Operating Systems) | (Memory Management) | 24
|
(OS: Operating Systems) | (Memory Management) | 25
|
(OS: Operating Systems) | (Memory Management) | 26
First-In-First-Out
Algorithm
Reference string: 1, 2, 3, 4, 1, 2, 5,(FIFO)
1, 2, 3, 4, 5
3 frames (3 pages )
4 frames
9 page faults
1 1 5 4
FIFO Replacement Beladys Anomaly
|
(OS: Operating Systems) | (Memory Management) | 27
|
(OS: Operating Systems) | (Memory Management) | 28
|
(OS: Operating Systems) | (Memory Management) | 29
Optimal Algorithm
page
4 frames example
1, 2, 3, 4, 1, 2, 5, 1, 2, 3, 4, 5
1
6 page faults
3
4
|
(OS: Operating Systems) | (Memory Management) | 30
|
(OS: Operating Systems) | (Memory Management) | 31
(Counter implementation)
(entry) page , page , counter
page counter
|
(OS: Operating Systems) | (Memory Management) | 32
|
(OS: Operating Systems) | (Memory Management) | 33
|
(OS: Operating Systems) | (Memory Management) | 35
bit, = 0 ( )
1 ( )
(Second chance)
|
(OS: Operating Systems) | (Memory Management) | 36
|
(OS: Operating Systems) | (Memory Management) | 37
Counting Algorithms
LFU (least frequently used) Algorithm:
(OPT)
|
(OS: Operating Systems) | (Memory Management) | 38
Page-Buffering Algorithm
page fault
(clustering)
|
(OS: Operating Systems) | (Memory Management) | 39
|
(OS: Operating Systems) | (Memory Management) | 40
Windows NT
demand paging clustering page
|
(OS: Operating Systems) | (Memory Management) | 42
|
(OS: Operating Systems) | (Memory Management) | 43
Solaris 2
(free pages)
Lotsfree threshold parameter
(pageout process)
Pageout scans pages using modified clock algorithm.
Scanrate
slowscan fastscan
Pageout
|
(OS: Operating Systems) | (Memory Management) | 44
|
(OS: Operating Systems) | (Memory Management) | 45