Virtual Memory is physical memory + page file(swap). The reason for this is your can page in/out data from memory. If you only have 1GB of ram and your program needs 2gb to run, the OS will page out some memory to the HD to make it look like you have more memory.
From an application's stand point, it only ever sees the virtual memory. If you have 4GB of ram and 4GB of page file, the OS will pretend you have 8GB of total memory. Aka, virtual memory. One could also say your total "logical" memory.