Data Storage Digest

Do-It-Yourself Windows File Recovery Software: A Comparison

results »

What is Virtual Memory?

Virtual memory is the extra memory created by the operating system for times when all of the available memory (RAM) is in use. A typical form in which virtual memory exists is called the paging file. Users can determine the size of the paging file to suit their computer's needs, but generally it is at least half of the available RAM (it should be higher if the system is particularly lacking in RAM).

In order to better explain virtual memory, it is important to have at least a basic understanding of what RAM is. RAM is an acronym for random access memory. Physically, it is a small, flat "stick" inside your computer tower - there is usually more than one stick of RAM.

Every time a program is running or operating on your system, its information is taken from your hard drive and placed onto your ram. The more running programs, the less spare space there will be on the RAM. Of course, there are times when your RAM reaches "maximum" capacity. Thankfully, Windows has a contingency plan for this situation - the paging file. The paging file is an area of the hard drive that is put aside to assist the user when all of the RAM is in use. It acts in the same way as RAM, but is not as efficient and a great deal slower - it is really just an extra kick to keep the system from stuttering to a halt when the load is too great.

In a virtualized computing environment, administrators often use virtual memory management to allocate additional memory to a virtual machine that has run out of resources (such as a cloud desktop with too many applications). Such virtualization management tactics improve the performance of the virtual machine and management flexibility.

Many experts would say that virtual memory is an integral aspect of modern computer architecture. Nearly all implementations of it divide a virtual address space into pages which are blocks of memory addresses (hence "page file"). These addresses tell the CPU where to find the files it is looking for or needs to run.

The main benefits of virtual memory are freeing programs and applications from having to manage a shared memory space (causing conflicts and errors), greater security due to the isolation of memory, and using more memory than physically available - paging. Paging is not used in ideal circumstances however, since it is a temporary storage to avoid overwriting memory addresses stored in the RAM.

A typical downside is that virtual memory systems trigger erratic and unpredictable "traps" that may produce unwanted "stutter" during input output operations. Traps are also known as exceptions or faults, and occur in this case by invalid memory access. When these traps occur, the system usually switches to kernel mode, in which it attempts to deal with what is already occupying that space in the memory in order to carry out the second operation that is trying to interrupt it by accessing the used memory.

To sum up, virtual memory is the "plan b" for an operating system when it is suffering unwanted errors due to a lack of available physical memory. It allocates an area of the hard disk to act as temporary storage while the physical memory continues to be at full capacity. Increasing the size of this virtual memory can in some cases alleviate "hangs" in the system.


No comments yet. Sign in to add the first!