Estou copiando isso de uma página man que escrevi para plog , já que eu estava tentando deixar claro:
It is important to understand the difference between virtual address space and physical memory in interpreting some of the above statistics. As the name implies, virtual address space is not real; it’s basically a map of all the memory currently allocated to a process. The limit on the size of this map is the same for each processes (generally, 2-4 GB), and it is not accumulated (ie, you may have dozens or hundreds of processes, each with its own 2-4 GB virtual address space, on a system that only actually has 512 MB of physical memory).
Data cannot actually be stored or retrieved from virtual address space; real data requires real, physical memory. It is the kernel’s job to manage one in relation to another. Virtual space stats (VirtualSz, Data+Stack, and Priv&Write) are useful for considering the structure of a process and the relationship to physical memory use, but with regard to amount of RAM actually used, the physical memory stats (ResidentSz, Share, and Proportion) are what counts.
Top não tem todas essas métricas, mas a pontuação da VIRT é o espaço de endereço virtual, RES refere-se à memória física, assim como o SHR. Se você estiver preocupado com o uso relativo de memória (ou seja, um processo comparado a outro), a pontuação do RES é mais relevante.
Certas partes do VIRT são relevantes em relação a outros processos; viseiras como contentores de limite openVZ baseados na quantidade total de espaço de endereço gravável privado , não em RSS. Top não reporta isso, mas pmap e plog do (veja a manobra de plog de "Priv & Write"; isso foi realmente parte do meu motivo ao escrevê-lo).