Virtual Memory Implementation:: Working Set
Virtual Memory Implementation:: Working Set
Working Set
Consider a page reference string
0, 1, 2, 2, 1, 1, 2, 2, 1, 1, 2, 2, 100,000 references
The size of the working set is 2 pages.
Page
thrashing
Fault
Rate
Enough to
hold the
working set
Available M
!"#$%%%%%%%%&''($)%
16-512 entries
TLB
M
Set-associative
or fully
associative cache
No match
*+,-.%%%%%
&''($)%
Solution?
Store the page table in Virtual Memory.
Thus, page table is also paged!
Page table
base register
p.0 of page table
p.1 of page table
p.2 of page table
p.3 of page table
Page table of
page table
(Directory)
p.0
p.1
p. i
Physical Memory M
Virtual address space
12
Directory
Entry
9
Offset in
page table
Virtual Address
9
Offset
in page
MMU
CPU
Memory
Disk
Controller
DISK
Parity
Checker
Hamming Code
Hamming code not only detects if there is an error, but
also locates where the error is, and subsequently
corrects it. Here is an example:
(4, 5, 6, 7),
(2, 3, 6, 7),
and (1, 3, 5, 7).
What is special
about these sets
of bits?