The kernel keeps a count of how much memory each process uses in two ways, RSS (resident set size) and "virtual size". For our purposes here, "virtual memory used" is the same as "virtual address space used", meaning "how much area in the virtual address space is consumed." On a 32-bit process, there is usually 3GB of total virtual address space available. If you mmap() a 1GB file, you use 1GB of virtual memory, even if that file has not been touched or a single byte of it read into the virtual address space. Once you start touching that memory area, the file is read in from disk, and you start to consume physical memory (and your RSS goes up). Some operating systems refer to "virtual memory" in another way.