Mac OS X:Was ist der beste Weg, um die Code- und statische Datengröße eines Programms abzuschätzen?

StackOverflow https://stackoverflow.com/questions/35491

  •  09-06-2019
  •  | 
  •  

Frage

Ich möchte eine Schätzung darüber erhalten, wie viel Code und statische Daten von meinem C++-Programm verwendet werden.

Gibt es eine Möglichkeit, dies herauszufinden, indem man sich die ausführbaren Dateien oder Objektdateien ansieht?Oder vielleicht etwas, was ich zur Laufzeit tun kann?

Hilft otool?

War es hilfreich?

Lösung

  • „size“ ist das traditionelle Tool und funktioniert auf allen Unix-Varianten.
  • „otool“ hat eine etwas feinere Kornkontrolle und bietet viele Optionen.

.

$ size python
__TEXT  __DATA  __OBJC  others  dec     hex
860160  159744  0       2453504 3473408 350000

Andere Tipps

Ich denke, otool kann helfen.Konkret sollte „otool -s {segment} {section}“ die Details ausdrucken.Ich bin mir nicht sicher, ob Sie Informationen zu __DATA oder __TEXT erhalten können, ohne einen Abschnitt anzugeben.Möglicherweise werden diese Größen im Mach-Header angegeben:„otool -h“?

otool -s  __DATA __data MyApp.bundle/Contents/MacOS/MyApp
otool -s __TEXT __text MyApp.bundle/Contents/MacOS/MyApp

Wie auch immer, Apple dokumentiert hier, was pro Segment in jeden Abschnitt kopiert wird: Dokumentation zum Mach-O-Format von Apple

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top