Seite 1 von 1

BinUtils

Verfasst: Sa Apr 17, 2010 7:30 pm
von Xin
Aus diesem Thread:
Dirty Oerti hat geschrieben:Ha, ich hab noch was vergessen:

objdump -D OBJEKTDATEI.o > disassembler.txt
Da fällt mir ein: Hast Du Erfahrung mit den BinUtils?
Also wie man eine Objektdatei erzeugt oder ein ELF-File oder Dokumentation dazu?

Re: BinUtils

Verfasst: Sa Apr 17, 2010 8:23 pm
von Dirty Oerti
Ähm :) *noch* Nicht wirklich.
Das ganze wollte ich mir mal anschauen, schon im Bezug auf meinen Kernel.
Ich hab wegen ELF Files einiges an Links irgendwann irgendwo mal gespeichert.
Ich kann mal schaun, ob ich die wiederfinde.

Ansonsten ist das ja eigentlich ziemlich "simpel":

Man schreibt den ELF Header, der muss korrekt gefüllt werden. Dahinter kommen dann die einzelnen Sections.
Eben jeweils wieder mit Header, soweit ich weiß :)

Re: BinUtils

Verfasst: Sa Apr 17, 2010 8:49 pm
von Jside
Mhm, mann kann doch Assembler gleich vom Compiler ausgeben lassen a la:
cc -S -o asm.txt main.c
Wegen so nem zeug schaut man mal am besten bei Lowlevel, oder der OS Dev Wiki nach, da ist das ganz gut erklärt/referenziert;
http://wiki.osdev.org/ELF
http://lowlevel.brainsware.org/wiki/index.php/ELF

Zumindest mal das Laden einer solchen ist nicht weiter kompiliziert, nur ein bisschen getippe >= ~150 Zeilen code, generieren tja keine Ahnung, müsste man mal den NASM oder system as (man as) o.ä. auseinandernehmen...

Re: BinUtils

Verfasst: Sa Apr 17, 2010 10:50 pm
von Xin
Dirty Oerti hat geschrieben:Ähm :) *noch* Nicht wirklich.
Das ganze wollte ich mir mal anschauen, schon im Bezug auf meinen Kernel.
Ich hab wegen ELF Files einiges an Links irgendwann irgendwo mal gespeichert.
Ich kann mal schaun, ob ich die wiederfinde.
Schaumal bitte. Ich habe jetzt zwei Interpreter in Entwicklung und bei Gelegenheit muss ich mir Gedanken über den nativen Codegenerator machen. Unter'm Amiga habe ich das bereits soweit hinbekommen, aber ich glaube, das ist derzeit nicht mehr ganz so aktuell.

Für Deinen Kernel hast Du doch freie Auswahl, oder möchtest Du Deine Programme auch im ELF Format beschreiben?
Dirty Oerti hat geschrieben:Ansonsten ist das ja eigentlich ziemlich "simpel":

Man schreibt den ELF Header, der muss korrekt gefüllt werden. Dahinter kommen dann die einzelnen Sections.
Eben jeweils wieder mit Header, soweit ich weiß :)
Ich habe mir ein "Hello World"-kompiliert und den Hex-Dump ausgedruckt. Anschließend habe ich das Programm beschriftet und versucht nachzuvollziehen, was da passiert. Ich habe mir das Buch Linkers und Loaders gekauft und das damit auch soweit nachvollzogen bekommen. Aber ggfs. will ich natürlich die vorhandenen Libs gebrauchen. Dafür muss ich mir aber noch Tutorials raussuchen - oder halt selbst schreiben.

Re: BinUtils

Verfasst: Mo Apr 26, 2010 6:27 pm
von Xin
Ich habe mich jetzt mal an die Übersetzung eines Textes über ELF gemacht.

Grundsätzlich scheint mir allerdings eine Frage offen zu bleiben: Ist jemandem eine Library bekannt, mit der sich ELF-Files genieren und verwalten lassen oder läuft das tatsächlich noch auf Handarbeit hinaus?