Rilevare problema frammentazione della memoria in un processo
-
22-09-2019 - |
Domanda
Quali sono i vari meccanismi con cui si può rilevare se un processo di esecuzione sta portando ad frammentazione della memoria?
Ci sono strumenti a disposizione per lo stesso? Suggerimento per gli strumenti che funzionano con il codice di 'C' e può essere eseguito su Windows, Linux e VxWorks sarà utile.
Soluzione
Proprio come un suggerimento, si consiglia di provare Valgrind. Io non sono certo è quello che stai cercando, ma può tornare utile.
Altri suggerimenti
C'è un maxfreeblocksize in VxWorks, se continua gettin sempre più in basso la sua indicazione suo ottenendo frammentato
Su Linux è possibile visualizzare l'output di:
cat /proc/buddyinfo
Si dice quante pagine di un determinato ordine sono disponibili. Se ci sono molto poche pagine di ordine superiore disponibili e le pagine di ordine per lo più inferiori sono disponibili e indica la memoria di sistema è piuttosto frammentato. Cercare la voce "Normale".