We think you have liked this presentation. If you wish to download it, please recommend it to your friends in any social system. Share buttons are a little bit lower. Thank you!
Presentation is loading. Please wait.
Published byAthena Selvey
Modified about 1 year ago
Hierarchy Cache Memory : Provide invisible speedup to main memory
Hierarchy Virtual Memory : Provide invisible extension to main memory
Virtual Memory How Why? – Allows multiple programs to coexist invisibly Each program thinks it has all memory
Virtual Memory Why? – Allow programs to use more main memory than is physically present
Terminology Virtual Address : address program uses Physical Address : real address in RAM virtual address is mapped to
Terminology Page : block of memory in virtual address space Page Frame : location in physical memory a page is placed
Terminology Page Fault : request for a page that is not in physical memory Paging : copying desired page from hard drive to RAM I need this address:
Terminology Page Fault : request for a page that is not in physical memory Paging : copying desired page from hard drive to RAM I need this address: Bring in from hard drive
Terminology Page Fault : request for a page that is not in physical memory Paging : copying desired page from hard drive to RAM I need this address: Bring in from hard drive Record where I put it 3
Paging Page Table : Records frame frame block mapping – Valid bit : records if page present – Dirty bit : modified, needs to be stored
Addressing Virtual address space is 256 bytes – 8 bit address 8 pages, 32 bytes in each page 2 3 2 5 8 bits - Virtual PageOffset 3 bits5 bits
Addressing Physical memory is 128 bytes – 7 bit address 4 page frames, 32 bytes in each 2 2 2 5 7 bits - Physical Page Frame Offset 2 bits5 bits
Mapping Program asks for virtual address: 00001101 8 bits - Virtual PageOffset 000 Page 0 01101 Byte 13
Mapping Program asks for virtual address: 00001101 Page Table says that is page frame 2 : 10 8 bits - Virtual PageOffset 000 Page 0 01101 Byte 13 7 bits - Physical Page Frame Offset 10 Frame 2
Mapping Program asks for virtual address: 00001101 Page Table says that is page frame 2 : 10 Offset in frame same as offset in page: 01101 8 bits - Virtual PageOffset 000 Page 0 01101 Byte 13 7 bits - Physical Page Frame Offset 10 Frame 2 01101 Byte 13
Mapping Program asks for virtual address: 00001101 Gets value at: 1001101 8 bits - Virtual PageOffset 000 Page 0 01101 Byte 13 7 bits - Physical Page Frame Offset 10 Frame 2 01101 Byte 13
Another 16 bytes of virtual space, 8 of RAM Page size : 2 bytes
Another 16 bytes of virtual space, 8 of RAM 4 bit address3 bit address Page size : 2 bytes 1 bit offset What does 0111 map to?
Larger Scale Virtual addressed up to 8K Physical up to 4K Page size 1k
Larger Scale Virtual addressed up to 8K Physical up to 4K Page size 1k
Page Sizes Small page size = larger page table
Page Sizes Small page size = larger page table Large page size = more unused data in pages
Paging & Caching Page table held in main memory by OS
Paging & Caching Page table held in main memory by OS Every mapping goes to main memory… Cache is worthless!
TLB Transition look-aside buffer Cache for page table – Subset of page table – Fully associative – May be multiple levels
TLB Using TLB
Memory Management & Virtual Memory. Hierarchy Cache Memory : Provide invisible speedup to main memory.
Virtual Memory Chantha Thoeun. Overview Purpose: Use the hard disk as an extension of RAM. Increase the available address space of a process.
4.3 Virtual Memory. Virtual memory Want to run programs (code+stack+data) larger than available memory. Overlays programmer divides program into pieces.
Virtual Memory Pranav Shah CS147 - Sin Min Lee. Concept of Virtual Memory Purpose of Virtual Memory - to use hard disk as an extension of RAM. Personal.
1 Memory Systems Virtual Memory Lecture 25 Digital Design and Computer Architecture Harris & Harris Morgan Kaufmann / Elsevier, 2007.
Virtual Memory By: Dinouje Fahih. Definition of Virtual Memory Virtual memory is a concept that, allows a computer and its operating system, to use a.
Virtual Memory. Virtual Memory: Topics Why virtual memory? Virtual to physical address translation Page Table Translation Lookaside Buffer (TLB)
Virtual Memory Review Goal: give illusion of a large memory Allow many processes to share single memory Strategy Break physical memory up into blocks (pages)
Virtual Memory. DRAM as cache What about programs larger than DRAM? When we run multiple programs, all must fit in DRAM! Add another larger, slower level.
Lecture 21 Last lecture –Cache Memory Direct mapping Fully associative Set associative Today’s lecture –Virtual memory Why virtual memory? Virtual address.
Chapter 9 Virtual Memory Produced by Lemlem Kebede Monday, July 16, 2001.
CSE378 Virtual Mem. Impl.1 Translation Buffers (TLB’s) To perform virtual to physical address translation we need to look-up a page table Since page table.
Multilevel Caches Microprocessors are getting faster and including a small high speed cache on the same chip.
©UCB CS 161 Ch 7: Memory Hierarchy LECTURE 24 Instructor: L.N. Bhuyan
IT253: Computer Organization Lecture 12: Virtual Memory Tonga Institute of Higher Education.
Virtual Memory Expanding Memory Multiple Concurrent Processes.
Paging (continued) & Caching CS-3013 A-term Paging (continued) & Caching CS-3013 Operating Systems A-term 2008 (Slides include materials from Modern.
Computer Architecture Lecture 28 Fasih ur Rehman.
CS 333 Introduction to Operating Systems Class 11 – Virtual Memory (1) Jonathan Walpole Computer Science Portland State University.
Recap. The Memory Hierarchy Increasing distance from the processor in access time L1$ L2$ Main Memory Secondary Memory Processor (Relative) size of the.
Virtual Memory. Why do we need VM? Program address space: 0 – 2^32 bytes –4GB of space Physical memory available –256MB or so Multiprogramming systems.
1 Chapter 8 Virtual Memory Virtual memory is a storage allocation scheme in which secondary memory can be addressed as though it were part of main memory.
Operating Systems Unit 7: – Virtual Memory organization Operating Systems.
Introduction: Memory Management 2 Ideally programmers want memory that is large fast non volatile Memory hierarchy small amount of fast, expensive memory.
Virtual Memory Really this is in OS – but We need to see how the OS will interact with the HW Peer Instruction Lecture Materials for Computer Architecture.
The Memory Hierarchy Lecture 31 20/07/2009Lecture 31_CA&O_Engr. Umbreen Sabir.
Operating Systems Chapter 8 Memory Management. Logical vs. Physical Address Space The concept of a logical address space that is bound to a separate physical.
Fall 2000M.B. Ibáñez Lecture 17 Paging Hardware Support.
CS399 New Beginnings Jonathan Walpole. Virtual Memory (1)
3/1/2002CSE Virtual Memory Virtual Memory CPU On-chip cache Off-chip cache DRAM memory Disk memory Note: Some of the material in this lecture are.
1 Lecture 20: Cache Hierarchies, Virtual Memory Today’s topics: Cache hierarchies Virtual memory Reminder: Assignment 8 will be posted soon (due.
Topics covered: Memory subsystem CSE243: Introduction to Computer Architecture and Hardware/Software Interface.
Memory Management memory hierarchy programs exhibit locality of reference - non-uniform reference patterns temporal locality - a program that references.
Lectures 8 & 9 Virtual Memory - Paging & Segmentation System Design.
Silberschatz, Galvin and Gagne 2002 Modified for CSCI 399, Royden, Operating System Concepts Operating Systems Lecture 33 Paging Read Ch. 9.4.
Memory Organization. Data Organization Big endian –Most significant byte stored in first memory location each additional n bytes stored in next n locations.
CMP 301A Computer Architecture 1 Lecture 4. Outline zVirtual memory y Terminology y Page Table y Translation Lookaside Buffer (TLB)
Chapter 91 Logical Address in Paging Page size always chosen as a power of 2. Example: if 16 bit addresses are used and page size = 1K, we need 10.
Silberschatz, Galvin and Gagne Operating System Concepts Paging Logical address space of a process can be noncontiguous; process is allocated.
Introduction to Virtual Memory and Memory Management 1 Introduction to Virtual Memory and Memory Management ARM Advanced RISC Machines.
Review °Apply Principle of Locality Recursively °Manage memory to disk? Treat as cache Included protection as bonus, now critical Use Page Table of mappings.
1 Some Real Problem What if a program needs more memory than the machine has? —even if individual programs fit in memory, how can we run multiple programs?
1 Virtual Memory Main memory can act as a cache for the secondary storage (disk) Advantages: –illusion of having more physical memory –program relocation.
1 2004 Morgan Kaufmann Publishers Multilevel cache Used to reduce miss penalty to main memory First level designed –to reduce hit time –to be of small.
COSC 3330/6308 Second Review Session Fall Instruction Timings For each of the following MIPS instructions, check the cycles that each instruction.
Memory and cache CPU Memory I/O. CEG 320/52010: Memory and cache2 The Memory Hierarchy Registers Primary cache Secondary cache Main memory Magnetic disk.
VICTORIA UNIVERSITY OF WELLINGTON Te Whare Wananga o te Upoko o te Ika a Maui COMP 203 / NWEN 201 Computer Organisation / Computer Architectures Virtual.
1 Memory Management (II) Chapter 8. 2 Paging Implementation n Each page table entry contains a present bit to indicate whether the page is in main memory.
Virtual Memory Adapted from lecture notes of Dr. Patterson and Dr. Kubiatowicz of UC Berkeley and Rabi Mahapatra & Hank Walker.
© 2017 SlidePlayer.com Inc. All rights reserved.