L7.Virtual_Memory_2pp - ECE4750/CS4420 Computer...

Info iconThis preview shows pages 1–7. Sign up to view the full content.

View Full Document Right Arrow Icon
1 ECE4750/CS4420 Computer Architecture L7: Virtual Memory Edward Suh C omputer S ystems L aboratory suh@csl.cornell.edu 2 Announcements HW1 due today Check the clarification and announcement on blackboard Submit a version early we will be strict with the deadline Prelim conflict should be reported by the end of this week ECE4750/CS4420 — Computer Architecture, Fall 2008
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
2 3 Overview Previous lecture: Improving cache performance Reduce hit time Reduce miss rate Reduce miss penalty Today: Virtual memory (VM) Why do we need it? What is it? How does it affect the cache design? Reading: Appendix C.3, C.4, Chapter 5.4 ECE4750/CS4420 — Computer Architecture, Fall 2008 4 Imagine Computers w/o VM What are the difficulties of programming such machines? ECE4750/CS4420 — Computer Architecture, Fall 2008 EDSAC, early 50’s Wireless sensor node (8-bit CPU, 4KB RAM)
Background image of page 2
3 5 Virtual Memory Concept ECE4750/CS4420 — Computer Architecture, Fall 2008 6 Simple Base and Bound Translation ECE4750/CS4420 — Computer Architecture, Fall 2008 Load X Program Address Space Main Memory current segment Virtual Address
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
4 7 Separate Areas for Program and Data ECE4750/CS4420 — Computer Architecture, Fall 2008 What is an advantage of this separation? Load X Program Address Space Main Memory data segment Data Bound Register Effective Addr Register Data Base Register + Bounds Violation? Program Bound Register Program Counter Program Base Register + Bounds Violation? program segment 8 Memory Fragmentation ECE4750/CS4420 — Computer Architecture, Fall 2008 16K 24K 24K 32K 24K user 1 user 2 user 3 16K 24K 16K 32K 24K user 1 user 2 user 3 user 5 user 4 8K Users 4 & 5 arrive leave 16K 24K 16K 32K 24K user 1 user 4 8K user 3 free
Background image of page 4
5 9 Paged Memory Systems Processor generated address can be interpreted as a pair <page number, offset> A page table contains the physical address of the base of each page ECE4750/CS4420 — Computer Architecture, Fall 2008 0 1 2 3 Address Space of User-1 1 0 2 3 page number offset Physical Memory 10 Private Address Space per User ECE4750/CS4420 — Computer Architecture, Fall 2008 VA1 User 1 Page Table VA1 User 2 Page Table VA1 User 3 Page Table Physical Memory free OS pages
Background image of page 5

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
6 11 A Problem in Early Sixties There were many applications whose data could not fit in the main memory, e.g., payroll Paged memory system reduced fragmentation but still required the whole program to be resident in the main memory Manual overlay: programmer keeps track of addresses in the main memory and initiates an I/O transfer when required Problems? ECE4750/CS4420 — Computer Architecture, Fall 2008
Background image of page 6
Image of page 7
This is the end of the preview. Sign up to access the rest of the document.

Page1 / 18

L7.Virtual_Memory_2pp - ECE4750/CS4420 Computer...

This preview shows document pages 1 - 7. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online