Mac OS X:Qual è il modo migliore per stimare la dimensione del codice e dei dati statici del programma?
Domanda
Voglio essere in grado di ottenere una stima della quantità di codice e dati statici utilizzati dal mio programma C++?
C'è un modo per scoprirlo guardando i file eseguibili o oggetto?O forse qualcosa che posso fare in fase di esecuzione?
Otool aiuterà?
Soluzione
- "size" è lo strumento tradizionale e funziona su tutte le versioni Unix.
- "otool" ha un controllo un po' più preciso della grana e ha molte opzioni.
.
$ size python
__TEXT __DATA __OBJC others dec hex
860160 159744 0 2453504 3473408 350000
Altri suggerimenti
Penso che otool possa aiutare.Nello specifico, "otool -s {segment} {section}" dovrebbe stampare i dettagli.Non sono sicuro che sia possibile ottenere informazioni su __DATA o __TEXT senza specificare una sezione.Forse quelle dimensioni sono riportate nell'intestazione mach:"otool -h"?
otool -s __DATA __data MyApp.bundle/Contents/MacOS/MyApp
otool -s __TEXT __text MyApp.bundle/Contents/MacOS/MyApp
Ad ogni modo, Apple documenta ciò che viene copiato in ciascuna sezione per segmento qui: Documentazione sul formato mach-o di Apple
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow