Virtual Memory
What is virtual memory?
- Virtual memory is an extension of primary storage (RAM) located on secondary storage
- In situations where RAM is close to being full, virtual memory can be used so that the computer remains operational
- Programs and data not currently being executed are transferred to virtual memory
- Programs and data are transferred back to RAM when they are needed
- Virtual memory is much slower than RAM and it's use will impact negatively on system performance
- To avoid the use of virtual memory, increase the size of the RAM
RAM (primary storage) | Virtual Memory (secondary storage) | |||||||
|
⇔ |
|
- In the example above, the computer is turned on and the elements of the operating system are loaded into RAM
- The user opens some spreadsheet and video editing software but RAM is full
- The program not currently being used (video editing) is transferred to virtual memory
RAM (primary storage) | Virtual Memory (secondary storage) | |||||||
|
⇔ |
|
- When the user want to use the video editing software again, it is transferred back from virtual memory to RAM
Worked example
A computer only has 4GB of RAM, Fynn says that virtual memory can be used instead of adding more RAM.
- Explain how virtual memory can compensate for the lack of RAM in Fynn's computer [3]
- Explain why it would be beneficial for Fynn to get more RAM instead of relying on virtual memory [2]
How to answer these questions
- What is the definition of virtual memory? how does it work?
- What is the downside of using virtual memory? turn this into an advantage of adding more RAM
Answers
- How can Virtual Memory compensate
- Virtual Memory is used when RAM is full
- ...part of the secondary storage used as (temporary) RAM
- Data from RAM is moved to the secondary storage/Virtual Memory (to make space in RAM)
- RAM can then be filled with new data
- When data in Virtual Memory is needed it is moved back to RAM
- Benefit of more RAM
- More RAM will improve the performance of the computer // More RAM will speed up the access to data
- Virtual Memory is slower to access than RAM direct (because it has to go back to RAM first)
- Moving data between RAM and VM takes processor time