Virtual memory, Operating System

Assignment Help:

In modern operating systems, applications do not directly access the physical memory. Instead, they use so-called virtual memory, where each virtual address is translated to a physical address. Why would one do this? Here are some of the reasons that virtual memory is useful:

 To isolate and protect processes from each other,

 To manage the limited physical memory ef?ciently,


To give each process the illusion of having the whole address space for itself.

Since each program thinks it has the whole memory to itself, programs can use a lot of virtual memory. In fact, a computer might use huge amounts of virtual memory, much more than the amount of actual physical memory available. Most of the time this works fairly well, since processes typically only need to use a small amount of their virtual memory at once, and often a lot can be shared among processes (such as with shared libraries). But if the system gets into a situation where the active virtual memory demands exceed the available physical memory, we will need to use another mechanism, such as "swapping" memory pages to disk.

Virtual memory uses one level of indirection in the translation from virtual addresses to physical addresses.


Related Discussions:- Virtual memory

Virtual memory and paging, A- Consider a computer system that provides a vi...

A- Consider a computer system that provides a virtual memory space that consists of 8  pages. The physical memory contains 4 pages where the page size is 4Kbytes. Assume that at sp

Bag of tasks, The producer-consumermodel above has a standard human analogy...

The producer-consumermodel above has a standard human analogy of an assembly line. Humans have specialized skills, however, whereas threads running the same program do not need to

Bind a real-time thread to an lwp, Q. Suppose an operating system maps user...

Q. Suppose an operating system maps user-level threads to the kernel utilizing the many-to-many model where the mapping is done through the use of LWPs. In addition the system allo

Explain types of file allocation- linked list allocation, Linked list alloc...

Linked list allocation: At this time the blocks are stored using linked lists. The block size require not be the same. Thus internal fragmentation is avoided. Consider

Major advantage of the layered approach to system design, Q. What is the ma...

Q. What is the major advantage of the layered approach to system design? What are the de-merits of using the layered approach? Answer: As in all cases of modular design as well

Explain hashed page table method, Hashed page table method A general ap...

Hashed page table method A general approach for managing address spaces larger than 32 bits is to use a hashed page table with the hash values being the virtual-page number.

What is a path name, What is a path name? A pathname is the path from t...

What is a path name? A pathname is the path from the root by all subdirectories to a specified file. In a two-level directory structure a user name and a file name explain a pa

Define how to manage the interaction of client and server, Managing the int...

Managing the interaction of client and server  Among the differences between traditional application programs and client server ones is that developers must create a mechanism

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd