Memory management unit, Operating System

When a program issues a memory load or store operation, the virtual addresses (VAs) used in those operations have to be translated into "real" physical memory addresses (PAs). This translation is themain task of theMMU (MemoryManagement Unit). TheMMUmaintains a page table (a big hash table) that maps virtual pages to physical pages. Since memory accesses are happening all the time, the MMU needs to be extremely fast and implemented correctly. For these reasons, MMUs are almost always implemented in hardware. Note that we can't map every single byte of virtual memory to a physical address; that would require a huge page table. Instead, the MMU maps virtual pages to physical pages. Also, since we want to isolate each program's address space from the address spaces of other applications, the MMU must keep a separate page table for each process; this implies that different processes could use the same virtual address to refer to different data, and that would not be a problem since these virtual addresses would be mapped into different physical addresses. The page table also marks all virtual pages that are allocated (and therefore are being used), so that it is possible to know which virtual pages have valid mappings into physical pages. All virtual pages that are not being mapped to a physical page are marked as invalid; segfaults occur when a program tries to reference or access a virtual address that is not valid. In addition to valid bits, page table entries (PTEs) also store a lot of other information, such as "read" and "write" bits to indicate which pages can be read/written.

Posted Date: 3/12/2013 5:36:07 AM | Location : United States







Related Discussions:- Memory management unit, Assignment Help, Ask Question on Memory management unit, Get Answer, Expert's Help, Memory management unit Discussions

Write discussion on Memory management unit
Your posts are moderated
Related Questions
about error detection in operating system and how does it take place?


Define the Communications Techniques - Application interaction protocols    Communications techniques are well defined. They give developer the programmatic mechanism to transf

Write a short note about schedulers. Processes migrate between the various scheduling queues throughout its life time. The operating system should select for scheduling purpose

Q. List three instances of deadlocks that aren't related to a computer system environment. Answer: Two cars passage a single-lane bridge from opposite directions.

A daemon is a process that removes itself from the terminal and disconnected, executes, in the background, waiting for requests and responding to them. It may also be described as

What is preallocation? Why do it? Allocating space for a file before making the file to allow for expansion. This reserves space for a certain file so that other files can't gr

Define I/O and CPU Bursts   Applications typically to through cycle of CPU bursts and Input/output bursts. Since the CPU sits idle during I/O operations, efficiency is improved

Define the DosSleep(ms) Function used in the os/2 DosSleep()  suspends the currently executing  thread for some time interval specified in the  ms parameter. If a value of 0 is

when demand is 24000 units/year, production rate is 48000 units/year, setup cost is rs 200 per setup, carring cost is rs 20 per units/year, and economic batch quantity is 692.8203