What is virtual memory, if OS didt have that concept What
are the problems can arise?
Answer Posted / kamlesh sancheti
Virtual Memory is a cost effective solution to slake the
thirst of memory hungry applications for a seamless
experience with your operating system. To understand the
concept of virtual memory you need a little knowledge about
the memory organization and working. There are basically two
types of memory you need to know. Random Access Memory (RAM)
is faster but costly. Memory like hard disk is slower but
relatively cheaper. Virtual memory is a stratagem to utilize
the hard drive memory to achieve enhanced performance from
the random access memory.
Whenever you run multiple programs/applications in your
desktop, you will be working on only a portion of a
particular application at an instant. Therefore it is a
waste of resource to load the entire memory required for a
particular application into the limited size random access
main memory. In a virtual memory environment each page of a
process is brought to main memory only when it is needed on
demand.
Data is stored in any memory in the form of binary digits.
The operating system handles memory management in the form
of chunks of memory called pages. A page is nothing but a
contiguous block of memory. One process might require
multiple pages of memory but only a few pages might be
active at a time. Virtual memory uses a technique called
demand paging to effectively use the available RAM memory.
Every page has an address which may be a virtual or logical
address. The main memory is divided into equal size chunks
called page frames and each page frame has a unique physical
address. So whenever a page needs to be accessed, the
operating system has to translate the virtual address into a
physical address and this is done by a Memory Management
Unit (MMU) with the help of mapping in a page table. The
virtual address corresponding to a page is mapped to a
physical address corresponding to a page frame in main
memory. Whenever a page is not in memory the operating
system fetches the page from hard disk in response to a page
fault exception. The operating system usually makes a
prediction based on past history using intelligent
algorithms regarding those pages that are least likely to be
needed again and places them in the hard disk.
Is This Answer Correct ? | 9 Yes | 0 No |
Post New Answer View All Answers
What are ddks?
What is storage management in operating system?
What is memory-management unit (mmu)?
Difference between a thread and process?
How long does it take to run chkdsk?
What is GUI?
What is virtual memory and where it exhist ?
Is a directory a regular file?
Is non-pre-emptive scheduling frequently used in a computer? Why?
What is context in operating system?
Explain the purpose of the open() and close() operations.
What are a virtual machines and site their advantages?
How are the wait/signal operations for monitor different from those for semaphores?
What is the difference between exclusive lock and shared lock?
How does dynamic loading aid in better memory space utilization?