Ben c'est virtuel, comme son nom l'indique.
En l'occurrence, les 205 Go ça doit être la somme des mémoires virtuelles de tous les processus, chiffre qui à vrai dire, ne représente absolument rien d'intéressant. (ou alors, il faudra m'expliquer quoi)
La théorie vite fait: (Ça m'étonne quand même que tu ne saches pas comment ça fonctionne
)
Chaque processus dispose d'un espace d'adressage théorique de 4 Go (adressage sur 32 bits) ou 16 Eo (adressage sur 64 bits), totalement séparé des autres processus. Mais seule une partie de cet espace théorique représente des ressources physiques réelles. La mémoire virtuelle est allouée par « pages » de 4 Ko (ou plus, selon la configuration de l'OS et/ou la quantité de mémoire disponible).
Une page de mémoire virtuelle peut pointer n'importe où dans la mémoire physique de l'ordinateur, et plusieurs processus peuvent partager certaines ressources, et potentiellement à des adresses différentes.
En général, tu vas essayer de partager le code des dll entre tous les processus par exemple. (Mais cela demande de les mapper au même endroit dans la mémoire pour chaque processus, à cause des relogements absolus)
Le système peut aussi allouer des pages de mémoire virtuelle pour mapper un fichier quelconque en mémoire (mmap/MapViewOfFile…) si besoin.
Bref -> si la taille de mémoire virtuelle indique 2 Go alors cela veut dire que dans son espace d'adressage, le processus a accès à 2 Go de données « réelles » d'une manière ou d'une autre, peu importe leur provenance. (Cela peut être des pages de mémoire partagées, des pages de mémoire mises en swap, ou bien un fichier mappé en mémoire, etc.). Mais cela ne veut en aucun cas dire que le processus a alloué 2 Go de mémoire pour lui tout seul, ni qu'il occupe 2Go en swap.
(Par contre je crois qu'il y a une limite physique au nombre total de pages mémoire qui peuvent être mappées en même temps, mais là je ne connais pas les détails exacts)
D'ailleurs, j'ai remarqué un truc bizarre dans le Moniteur d'activité de OSX: