Je jette ma RAM (un morceau de celui-ci - segment de code seulement) afin de trouver où est la fonction C étant placé. Je n'ai pas de fichier map et je ne sais pas exactement ce que font les routines boot/init.C - Comment créer un motif dans un segment de code pour le reconnaître en mémoire?
Je charge mon programme en RAM, puis si je vider la RAM, il est très difficile de trouver exactement quelle est la fonction. Je voudrais utiliser différents modèles construits dans la source C, pour les reconnaître dans le vidage de la mémoire.
J'ai tryed pour commencer toutes les fonctions avec différentes première variable contenant le nom de la fonction, comme:
char this_function_name[]="main";
mais cela ne fonctionne pas, parce que cette chaîne sera placée dans le segment de données.
J'ai un simple processeur RISC 16 bits et un compilateur expérimental propriétaire (pas de GCC ou aucun connu). Le système a 16 Mo de RAM, partagé avec d'autres applications (bootloader, downloader). Il est presque impossible de trouver une séquence unique de N NOPs ou smth. comme 0xABCD. Je voudrais trouver toutes les fonctions dans la RAM, j'ai donc besoin d'identificateurs uniques de fonctions visibles dans RAM-dump.
Quel serait le meilleur modèle pour le segment de code?
Quel compilateur/OS? –
@Richard: plateforme embarquée, CPU expérimentale et compilateur – psihodelia
Ugh. Obtenez un fichier de carte comme si votre vie en dépendait. –