|
Trouver une ressource
Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !
Sujet : Mappage de fichier PE [ Archives / Aide a la programmation Windows ] (morganitos)
Informations & options pour cette discussion
mardi 3 janvier 2006 à 19:15:21 |
Mappage de fichier PE

morganitos
|
Bonjour, j'aimerai simplment savoir ce qui est mappé d'un fichier PE par un loader dans la mémoire. Pas très clair... bref quand le loader mappe un .exe ou un .dll en mémoire, est-ce-que les headers sont mappés ??? Ou est-ce-que ttes les sections sont mappés ???
Bref, le fichier est-il mappé en entier ou juste une partie ???
J'ai répété 3 fois la même chose, j'espère avoir correctement exposé mon problème... ;-)
Merci de votre réponse.
|
|
|
mercredi 4 janvier 2006 à 09:20:04 |
Re : Mappage de fichier PE

Nasman
|
Bonjour Morganitos,
Pour répondre à ta question (si j'ai bien compris), je m'étais
interessé à ce qui étais chargé dans la mémoire au lancement d'un
programme. C'étais en fait l'objet de ma première source sur
CodeSources. Le programme permettait de visualiser ce qui se trouvait
dans la mémoire à partir de 00400000h, emplacement traditionnel des
programmes.
On retrouve effectivement integralement en mémoire le header PE (et MZ)
à partir de l'adresse 00400000, puis les différentes sections aux
emplacements définis par le header PE. Les informations relatives aux
différentes sections du header PE contiennent entre autre:
- l'adresse de chargement (où les données vont se retrouver une fois chargées)
- l'adresse à partir de laquelle s'effectuera la copie (position des
données dans le fichier non chargé - voir avec éditeur hexa).
Pour la section code et data, elles restent identiques, par compte il
pourra y avoir quelques différences pour les imports/export/relocs...
A+
|
|
|
mercredi 4 janvier 2006 à 09:49:25 |
Re : Mappage de fichier PE
|
mercredi 4 janvier 2006 à 15:34:57 |
Re : Mappage de fichier PE

morganitos
|
Merci pour ces réponses bien claires.
Par contre Nasman, je comprends que la section import soit modifiée, puisque les adresses des API sont loadées lors du mapping. Mais je ne comprends pas quelles peuvent être les modif apportées par le loader sur les sections d'exportation et de relocation... Je pensais qu'elles étaient simplement lues, non ?
|
|
|
jeudi 5 janvier 2006 à 10:55:31 |
Re : Mappage de fichier PE

Nasman
|
Bonjour Morganitos,
Pour commencer, je te présente toutes mes confuses  .
Effectivement la section relocs est chargée telle quelle dans la
mémoire virtuelle (à l'emplacement indiqué par le header) ; en ce qui
concerne la section export il faudrait que je verifie. Enfin pour la
section import, des modifications sont apportées entre le contenu du
fichier source et celui chargé en mémoire.
Pour un décriptage plus complet, je suppose que tu connais la structure des fichiers PE.
A+
|
|
|
jeudi 5 janvier 2006 à 12:39:30 |
Re : Mappage de fichier PE
|
mardi 10 janvier 2006 à 17:37:12 |
Re : Mappage de fichier PE

morganitos
|
Pour continuer dans la série :
Je viens d'étudier une dll et , ho surprise, je vois qque chose qui me semble bizarre :
La section .data ( remplie de 0 comme à son habitude je pense...) a sa VirtualSize plus grande que sa SizeOfRawData.
Est-ce-normal ??? Si oui, est-ce une caractéristique propre à cette section ou est-il possible que d'autres types de section adoptent la même "originalité" ???
Merci d'avance pour votre réponse... :-)
|
|
|
mardi 10 janvier 2006 à 19:11:25 |
Re : Mappage de fichier PE
|
mardi 10 janvier 2006 à 20:56:01 |
Re : Mappage de fichier PE

morganitos
|
Je n'ai pas très bien compris, cependant, la SizeOfRawData d'une section devrait être alignée par rapport à la VirtualSize de cette même section selon la valeur de FileHeader.FileAlignement ( souvent égale à 1000 octets d'ailleurs) non ?
Donc nécessairement : SizeOfRawData > VirtualSize n'est-ce-pas ?
Ce qui n'est pas le cas dans mon exemple de la .data...
|
|
|
mardi 10 janvier 2006 à 21:29:16 |
Re : Mappage de fichier PE
|
Cette discussion est classé dans : fichier, loader, pe, mappé, mappage
Répondre à ce message
Sujets en rapport avec ce message
Fichier resource... [ par Stormy ]
Stormy. J'explique le problème. Je dispose de certaines sources en asm sous Masm qui reprennent le principe du fichier resource (rsc) en accompagnemen
URGENT fichier ??? [ par TRAX44 ]
salut,débutant demande aideG besoin de savoir comment gérer des fichier avec et sans interruption ms dos merciTRAX
EditBox [ par Bros ]
SalutJ'ai une fenetre avec un editbox.Mon programme ouvre un fichier et va afficher dans l'édit box: "Fichier ouvert..."En suite a la ligne en dessous
Convertion asm vers hex (ou bin) [ par mistigry ]
J'utilise un PIC16F870 avec le compilateur CH Basic V1.2, ce compilateur me fournit des fichier asm (ou bsc) et pour pouvoir transférer le fichier sur
debutant tail d'un fichier [ par TRAX44 ]
Salut,c 1 truc tou con je c + cmt on fé pour avoir la tail d'un fichier en octet kan on a son handlemerci
imprimer un fichier [ par gassman ]
salutest ce que quel qu un pourait me dire comment je fait pour faire un bouton aec qt designer qui appelle la boite de dialogue de kde de l impriman
transformer un fichier ascii en format texte afin de pouvoir imprimer correctement sur une imprimante laser [ par kamie ]
KamieBonjour à tous,j'ai un petit problème et je ne sais pas comment faire.j'ai un fichier qui est de format ascii.lorsque nous imprimons ce fichier s
convertir un fichier ascci en fichier texte afin de pouvoir imprimer corectemen sur une imprimante laser [ par kamie ]
KamieBonjour à tous,j'ai un petit problème et je ne sais pas comment faire.j'ai un fichier qui est de format ascii.lorsque nous imprimons ce fichier s
Ajouter un lecteur [ par CoreBreaker ]
Bojour à tous !J'ai développé un VXD contenant un FSD dans l'espoir ajouter un lecteur virtuel pour rediriger le système de fichier mappé dans un fich
Ouvrir un fichier depuis l'explorer windows [ par Apinew ]
ApinewSalut,J'ai cherché un peu partout et j'ai pas encore trouvé unmoyen de récupérer le chemin d'un fichier en faisant parexemple la commande ouvrir
Livres en rapport
|
Téléchargements
Logiciels à télécharger sur le même thème :
|