Virtual memory is a technique that allows the execution of processes which are not completely available in memory. The main visible advantage of this scheme is that programs can be larger than physical memory. Virtual memory is the separation of user logical memory from physical memory.
If you want more clear Idea then read it from here :
http://www.tutorialspoint.com/operating_system/os_virtual_memory.htm