Je me demande s'il y a un moyen de connaître l'empreinte mémoire de mon exécutable binaire codé en C. p>
Informations sur l'exécutable binaire forte>: compilée avec une boîte à outils de la branche OpenWrt (ajustement de l'attitude) et son architecture est x86 p> blockQuote>
4 Réponses :
sur un système Linux / Unix, vous pouvez utiliser le puisqu'il s'agit d'OpenWrt, si vous avez une architecture différente, par exemple. Mips ou bras ou autre chose, vous devez choisir la commande code> code> de la machine à outils appropriée, bien sûr. P> Les sections ont la signification suivante p> Mais cela n'inclut pas la pile ou la mémoire de tas dynamique. Pour voir l'utilisation globale de la mémoire à l'exécution, vous devez consulter Taille Code> < / a> commande pour cela, par exemple Sur mon système Ubuntu
texte code> désigne la taille du code de l'exécutable li>
données code> est la section de données initialisée, par ex. variables, telles que
int V = 17; code> ou
Nom de caractère [] = "TOM"; CODE> LI>
BSS code> est la section non initialisée ou simplement
0 code> section initialisée,
int A; code> ou
double quantité; code> li>
déc code> est la taille globale, dans ce cas
102134 + 1776 + 11272 = 115182 Code> Li>
heex code> est également la taille globale, en tant que valeur hexagonale
1c1ee = 115182 code> li>
ul>
ps code>
ou haut code>
sortie. P> p>
Pourriez-vous expliquer plus la signification de chaque paramètre (texte; données; BSS; Dec; hex;)
Êtes-vous sûr de fonctionner avec C Programme? J'ai essayé de faire du chemin de taille / à / à / programme.c code> et je reçois l'erreur "format inconnu"
@Bastienm Non, cela fonctionne uniquement avec des objets binaires. Donc, lorsque vous compilez la source C, par exemple. Chemin GCC -C / TO / Program.c Code> Vous pouvez obtenir la taille avec le chemin
Taille de la taille / à / programme.o code>.
Je comprenais juste que je devais l'utiliser avec le binaire désolé ... merci!
Pour comprendre votre utilisation de la mémoire pendant l'exécution, sur un système Linux, vous pouvez utiliser Valgrind code> a> 's
memcheck code>
outil. P >
htop
Utilisez la commande Taille
Taille de l'homme code>) pour plus d'informations. P>
Voulez-vous savoir la taille de la mémoire statique ou une utilisation de la mémoire lors de l'exécution?
Si cela est possible pendant l'exécution? Pourquoi pas