Quando eseguo vm_stat
sul mio MacBook Pro 10.6.8 con 2 GB di RAM ottengo il seguente:
Mach Virtual Memory Statistics: (page size of 4096 bytes)
Pages free: 90518.
Pages active: 205479.
Pages inactive: 32417.
Pages speculative: 134461.
Pages wired down: 61009.
"Translation faults": 26323651.
Pages copy-on-write: 177180.
Pages zero filled: 15230394.
Pages reactivated: 3.
Pageins: 388108.
Pageouts: 0.
Object cache: 14 hits of 797355 lookups (0% hit rate)
Se si sommano la memoria libera, attiva, inattiva, speculativa e cablata e si moltiplica per 4096 (per trasformare le pagine in byte), si ottengono 2.145.828.864 anziché il previsto 2.147.483.648. Ci sono 1.654.784 byte mancanti (o 404 pagine). Questo non è un numero costante, tuttavia fluttua:
$ vm_stat 1 | perl -MList::Util=sum -nle 'next unless /^\s*\d/; print 524288-sum((split)[0 .. 4])'
193
147
146
60
57
220
215
385
379
285
283
194
Queste pagine mancanti sono solo un'annotazione dei rapporti perché la quantità di un tipo di pagina è cambiata al momento in cui vm_stat
stampa il prossimo tipo di pagina? O c'è qualche altro tipo di memoria che mi manca?