How correct is this picture that I drew up if I am to explain Virtual Memory to some of my colleagues?
There are hundreds of documents available online explaining virtual memory, but I am yet to find a good single sentence definition of Virtual Memory. There are a few that says, 'Virtual Memory is physical memory + RAM'. While that is true when we look at it one way, I believe that is more of a reply to the question 'What is the minimum size of virtual memory in a machine?'. This picture is a summary of what I understood from various docs I read up. Will it be incorrect if I explain Virtual Memory as:
Virtual Memory is the memory that applications/programs running on a machine see and to which they interact. It acts as an interface between the actual memory and applications running on the machine. Whether the application is accessing a memory location that is resident in the RAM or a location in SWAP will be transparent to the application and that is handled by this interface.
In other words, as far as various applications or programs running your machine is concerned, there is no physical memory or swap. To the application, it is all one memory and that is the virtual memory. How correct am I? I just want to make sure I understood the concept correctly and that I won't be passing incorrect information to my colleagues.