Ho un processo che riporta in "top" che ha 6 GB di memoria residente e 70 GB di memoria virtuale allocata. La cosa strana è che questo particolare server ha solo 8 GB fisici e 35 GB di spazio di swap disponibili.
Dal manuale "top":
o: VIRT -- Virtual Image (kb)
The total amount of virtual memory used by the task. It includes
all code, data and shared libraries plus pages that have been
swapped out. (Note: you can define the STATSIZE=1 environment vari-
able and the VIRT will be calculated from the /proc/#/state VmSize
field.)
VIRT = SWAP + RES.
Data questa spiegazione, mi aspetterei che l'allocazione della memoria virutale per un processo sia limitata al mio scambio + memoria fisica disponibile.
Secondo 'pmap', il codice, la libreria condivisa e le sezioni di memoria condivisa di questo processo sono tutte minime - non più di 300 M circa.
Ovviamente, la macchina e il processo continuano a funzionare correttamente (anche se lentamente), quindi cosa mi manca qui?