Guerrilla 7:, August 4, 2016 Guerrilla 7:,
Guerrilla 7:,
Why do we need? Guerrilla 7:,
Why do we need? Give each program the illusion that it has its own private address space. Provide protection between processes. Add disk to memory hierarchy. Guerrilla 7:,
Solution: Paged Memory System Program s view of memory can be broken up into pages Guerrilla 7:,
Solution: Paged Memory System Program s view of memory can be broken up into pages Guerrilla 7:,
Solution: Paged Memory System Program s view of memory can be broken up into pages Offset bits = log 2 (Page Size) VPN = VA bits - Offset bits PPN = PA bits - Offset bits could possibly be greater than Physical Memory Guerrilla 7:,
From VPN To PPN: Page Table Allow storage of program pages non-contiguously! PT resides in main memory: too large to keep in register. Guerrilla 7:,
From VPN To PPN: Page Table Allow storage of program pages non-contiguously! PT resides in main memory: too large to keep in register. Guerrilla 7:,
From VPN To PPN: Page Table Contains mapping from VA to PA. Guerrilla 7:,
From VPN To PPN: Page Table Contains mapping from VA to PA. Guerrilla 7:,
From VPN To PPN: Page Table Contains mapping from VA to PA. What is the page is invalid? What if the user does not have right to access a certain page? Guerrilla 7:,
PTE: Page Table Entry Guerrilla 7:,
Speedup: TLB A cache for Page Table Usually small, 32-128 entries Guerrilla 7:,
Speedup: TLB A cache for Page Table Usually small, 32-128 entries Usually fully associative cache. Why? Guerrilla 7:,
Speedup: TLB A cache for Page Table Usually small, 32-128 entries Usually fully associative cache. Why? TLB Reach: Amount of virtual address space that can be simultaneouly mapped by TLB TLB Reach = number of TLB entries * page size Guerrilla 7:,
Address Translation using TLB Guerrilla 7:,
Address Translation walkthrough Guerrilla 7:,
Oh I have a Page Fault Guerrilla 7:,
Guerrilla 7:,
Error Detection/Correction Code Memory system generates errors - accidentally flipped-bits) Guerrilla 7:,
Error Detection/Correction Code Memory system generates errors - accidentally flipped-bits) Extra bits are added to each M-bit data chunk to produce an N-bit code word Those extra bits are a function of the real data. Guerrilla 7:,
Single-Error Correction: Hamming ECC Guerrilla 7:,
Single-Error Correction: Hamming ECC Guerrilla 7:,
Memory-mapped IO Program accesses device with control and data register. Guerrilla 7:,
Polling Guerrilla 7:,
Polling CPU waits until the device is ready Little overhead Good for regular, frequent accesses Guerrilla 7:,
Interrupt Guerrilla 7:,
Interrupt Device sends interrupt to processor, processor halts program and goes to interrupt handler Large overhead - need to save program state Handler is inaccessible to user program Good for infrequent accesses Guerrilla 7:,
RAID Dependency and RAID Guerrilla 7:,
Dependability Measures Guerrilla 7:,
RAID Summary RAID 0: No redundancy RAID 1: Disk Mirroring/Shadowing RAID 2-4: Data Striping + Parity. (bit-striping, byte-striping, block striping) RAID 5: Interleaved parity. Guerrilla 7:,
RAID1 Guerrilla 7:,
RAID3 Guerrilla 7:,
RAID4 Guerrilla 7:,
RAID5 Guerrilla 7:,
Disk Access Time Guerrilla 7:,
Disk Access Time Guerrilla 7:,
Disk Access Time Guerrilla 7:,
Disk Access Time Guerrilla 7:,
Ending Guerrilla 7:,