c++ - Comment écrire des données à une adresse spécifique dans la section .text en utilisant gcc
PHP中文网
PHP中文网 2017-06-10 09:48:37
0
1
1027

1. Maintenant, je dois insérer des données dans une certaine adresse de .text (segment de code). Par exemple {'a','b','c','d','e','f','g','g'}
用的代码是char sgy_data2[32] __attribute__((section(".mysection1"))) = {'a','b','c','d','e','f','g','g'};
L'adresse de départ de mon segment .text est 0XFFFE8000, puis je souhaite écrire des données à 0XFFFE8400 (la longueur totale du .text est supérieure à 1024). Que dois-je faire ?
2. Si vous avez utilisé E2 avec succès, pouvez-vous me dire comment le configurer ?

PHP中文网
PHP中文网

认证高级PHP讲师

répondre à tous(1)
phpcn_u1582

Pour E2 : afin que vos données soient renseignées dans vos sections, vous devez suivre quelques étapes supplémentaires. Après avoir ajouté la section, faites un clic droit dessus et ajoutez les deux expressions suivantes :
.section-name
.section-name.*.
(Explication officielle GNU)
Si vous n'ajoutez pas l'option keep, peu importe la façon dont vous définissez la variable, vous devez "utiliser" cette variable, sinon le compilateur ignorera cette variable et n'écrira pas ce que vous voulez dans le fichier bin .données requises.
Quant aux autres situations, c'est similaire.

.text 0xFFE00000 : AT (0xFFE00000)
    {
        *(.text)
        *(.text.*)
        *(P)
        etext = .;
    } > ROM
    
    相对应的你的gsi文件应该是这么样的
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal