Home » RAMMap: guida all’analisi profonda della memoria RAM su Windows

RAMMap: guida all’analisi profonda della memoria RAM su Windows

Tempo di lettura: 4 minuti

RAMMap è un’utility Sysinternals che permette un’analisi estremamente dettagliata di come Windows usa ogni pagina di RAM, andando molto oltre Task Manager e i classici grafici “semplice/complesso”.

Concetti di base della memoria

  • Windows gestisce la RAM per liste di pagine: Active (in uso), Standby (cache riutilizzabile), Modified (da scrivere su disco), Free/Zeroed (libera), Transition, Bad, ecc.
  • RAMMap è utile per capire se la RAM è occupata da processi, cache file, kernel/driver, page table, o da pagine potenzialmente difettose.

Download, avvio e snapshot

  • Si scarica RAMMap dal sito Sysinternals/Microsoft e si esegue come amministratore; non richiede installazione (portable).
  • È possibile salvare snapshot della memoria e ricaricarli, così da confrontare lo stato della RAM in momenti diversi (prima/dopo un test, dopo un leak, ecc.).

Scheda “Use Counts”

  • “Use Counts” mostra l’incrocio tra “tipo di allocazione” (righe: Process Private, Mapped File, Metafile, Nonpaged Pool, Paged Pool, Driver Locked, ecc.) e “lista di pagine” (colonne: Active, Standby, Modified, Transition, Zeroed, Free, Bad).
  • Per analisi pratica:
    • Se Process Private domina la colonna Active, il consumo RAM è dovuto a uno o più processi; si va poi in “Processes” per identificare il colpevole.
    • Se Mapped File o Metafile dominano Standby/Active, significa forte utilizzo della cache file system o file mappati in memoria.
    • Valori nella colonna Bad indicano possibili pagine di RAM fisica difettose, utili per sospettare problemi hardware.

Scheda “Processes”

  • “Processes” elenca tutti i processi con colonne Private, Standby, Modified, Page Table, ecc., ossia quante pagine fisiche sono associate a ciascun processo e in quale lista.
  • Per debugging:
    • Ordina per Private per trovare processi che consumano più RAM attiva.
    • Confronta Standby/Modified per capire quanta memoria legata a quel processo è stata rilasciata dalla working set ma resta ancora in cache.

Scheda “Priority Summary”

  • Mostra la RAM in Standby suddivisa per priorità; la colonna Repurposed indica quante pagine sono state riutilizzate da nuove allocazioni.
  • Un valore Repurposed elevato su priorità 5+ segnala che il sistema è (o è stato) sotto forte pressione di memoria, suggerendo possibile necessità di più RAM fisica.

Scheda “Physical Pages”

  • Elenca ogni singola pagina fisica (4 KB) con lista (Active/Standby/…), tipo d’uso, priorità e, se presente, il file mappato corrispondente.
  • È una vista da sviluppatore/forensics:
    • Puoi filtrare o cercare per nome file per vedere quanti frame fisici occupa un certo binario o una DLL.
    • Utile per capire se un driver o un componente specifico sta bloccando molti frame.

Schede “File Summary” e “File Details”

  • “File Summary” mostra tutti i file mappati con la quantità di RAM totale, Active, Standby, Modified, ecc.
  • “File Details” scende al livello delle singole pagine fisiche per ogni file, permettendo di vedere quante e quali pagine RAM appartengono a quel file.

Tabella – Schede principali RAMMap

SchedaCosa mostraA cosa serve in pratica
Use CountsTipi di allocazione × liste di pagineCapire se la RAM è usata da processi, cache, kernel, driver. 
ProcessesPagine di RAM per processo (Private, Standby, ecc.)Individuare processi “RAM hog” e pattern di leak. 
Priority SummaryStandby suddivisa per priorità e RepurposedValutare se il sistema lavora costantemente “a RAM piena”. 
Physical PagesOgni pagina fisica con uso e file associatoAnalisi fine, debugging driver e file mappati. 
File SummaryRAM per file mappato (totale/Active/Standby)Scoprire quali file occupano più cache RAM. 
File DetailsPagine fisiche per singolo fileDrill-down forensics su singoli binari/file. 

Azioni “Empty…” e ottimizzazione

  • I comandi Empty Working Sets/System Working Set/Modified Page List/Standby List/Standby Priority 0 permettono di forzare lo svuotamento di varie liste (pagine attive, cache, modified).
  • Hanno senso per test mirati (benchmark, verifiche di caching, riproduzione problemi), ma non vanno usati in modo indiscriminato in produzione perché possono generare spike di I/O e peggiorare le prestazioni nel breve termine.

RAMMap è un tool portable di Sysinternals (Microsoft), scaricabile gratuitamente dal sito ufficiale e non richiede installazione su Windows 10/11.

Passi per il download

Vai su https://learn.microsoft.com/it-it/sysinternals/downloads/rammap (o versione EN: https://learn.microsoft.com/en-us/sysinternals/downloads/rammap).[2]
Clicca sul link Download RAMMap (file ZIP ~671 KB, versione attuale 1.61).
Salva il file in una cartella sicura, ad esempio Desktop o Download.

Estrazione e avvio

  • Fai clic destro sul file ZIP e seleziona Estrai tutto (o usa 7-Zip/WinRAR per estrarlo).
  • Apri la cartella estratta e scegli l’eseguibile corretto:
    • RAMMap.exe per sistemi 32-bit (rari).
    • RAMMap64.exe per Windows 10/11 64-bit (standard).​
  • Fai clic destro su RAMMap64.exe e seleziona Esegui come amministratore (obbligatorio per leggere la memoria fisica).
  • Accetta l’EULA (licenza) cliccando Agree.

Verifica e note importanti

  • Il tool si avvia immediatamente mostrando le schede di analisi; non crea icone o modifiche al sistema.
  • Compatibile con Windows 10/11 (e Vista+), funziona su client/server; evita siti di terze parti per scaricare, usa solo Microsoft per sicurezza.
  • Se hai antivirus aggressivo, potrebbe bloccare l’esecuzione: aggiungilo alle eccezioni (falso positivo comune per tool Sysinternals).

La scheda Physical Pages in RAMMap mostra un elenco dettagliato di ogni singola pagina fisica di RAM (tipicamente 4 KB ciascuna), per l’intera memoria installata, con attributi specifici come la lista di appartenenza, il tipo di uso e il file associato se presente.

Colonne principali

  • Physical Page: Indirizzo fisico della pagina (es. 0x1A2B3000).
  • List: Lista del memory manager (Active, Standby, Modified, Free, Zeroed, Transition, Bad).
  • Use: Tipo di allocazione (Process Private, Mapped File, Driver Locked, Page Table, Paged Pool, Nonpaged Pool, ecc.).
  • Priority: Priorità nella Standby List (0 bassa, 7 alta; per cache, più alto = più recente/frequente).
  • File: Nome del file mappato (se applicabile, es. C:\Windows\System32\ntoskrnl.exe); vuoto per memoria privata/processi.

Come interpretare i dati

Ogni riga rappresenta una pagina fisica: ad esempio, una pagina in Active con Use=Process Private significa che è allocata a un processo utente e in uso attivo; una in Standby con Mapped File è cache di un file disco, riutilizzabile senza I/O.
Usa Ctrl+F per cercare un file/processo specifico o il filtro in basso (es. “Mapped File”) per restringere a tipi d’uso sospetti come pool leak o driver difettosi.
Valori in Bad indicano pagine hardware problematiche; Priority alta persistente su Standby suggerisce cache “calda” da non toccare.

Casi d’uso pratici

  • Debug driver leak: Filtra per “Driver Locked” e ordina per indirizzo per vedere se un driver tiene pagine bloccate inutilmente.
  • Analisi file cache: Cerca file specifici per verificare quante pagine fisiche occupa la loro cache e se è Active/Standby.
  • Forensics avanzata: Esporta o snapshot per correlare pagine con processi sospetti (utile in malware analysis).

Tabella – Esempi di interpretazione

ListUsePriorityFile es.Significato pratico
ActiveProcess Private(vuoto)Pagina privata di un processo in uso attivo. 
StandbyMapped File5pagefile.sysCache file disco, priorità media (riutilizzabile). 
ModifiedDriver Lockedntkrnlmp.exeDati driver modificati, da scrivere su disco. 
Free(vuoto)Pagina libera, zeroed e pronta per allocazione. 
BadPage Table(vuoto)Pagina hardware difettosa, possibile RAM guasta. 

\ Get the latest news /

5 1 voto
Valutazione dell'articolo
Iscriviti
Notificami
guest
0 Commenti
Vecchi
Più recenti Le più votate
Feedback in linea
Visualizza tutti i commenti
PAGE TOP
0
Esprimete la vostra opinione commentando.x
×