Autor Thema: Binärformat bereits beim Kernel oder erst in den Anwendunge  (Gelesen 6707 mal)

jeb

  • Beiträge: 341
    • Profil anzeigen
    • http://www.jebdev.net
Gespeichert
Hi!
Nach einer Pause dachte ich dass ich mich wieder um mein OS kümmere. Nun wollte ich wissen, ob ihr vorhabt, ein Binärformat zu verwenden. Wenn ja, wo? B ereits beim Kernel? Oder erst in den Andwendungen und den Kernel flach kompiliert?
Wie machen das andere Betriebsysteme?

mfg, ogl_Dev //EDIT: oops, falscher Name :oops:  JEB

SSJ7Gohan

  • Beiträge: 398
    • Profil anzeigen
Gespeichert
« Antwort #1 am: 03. November 2005, 17:29 »
Ich nutze für den Kernel sowie die Anwendungen ELF Executables, der Kernel von GRUB geladen und die Executables halt vom Kernel. Für Kernelmodule verwende ich ELF Relocateables, die vom Kernel geladen werden.

Homix

  • Beiträge: 138
    • Profil anzeigen
Gespeichert
« Antwort #2 am: 03. November 2005, 17:44 »
hi,
ich benutze ab dem Hauptkernel das gleiche Format wie in den Anwendungen (PE EXE). Bloß ein kleiner 16-Bit, 2.5 KB großer "Vor"-Kernel, der in den Grafikmodus schaltet hab ich als Flat Binary compiliert.

mfg,
stefan

WhiteDragon

  • Beiträge: 124
    • Profil anzeigen
Gespeichert
« Antwort #3 am: 03. November 2005, 18:35 »
Bei mir hat der Kernel pures Binärformat, das an eine fixe Adresse geladen wird. Ist unflexibel, aber da der Kernel den Memory-Manager enthält und außerdem an variable Adressen compiliert werden kann ist das egal.

Anwendungen sollten später natürlich ein "höheres" Format haben, obwohl ich alles darauf ausgerichtet habe, dass man auch flaches Binärformat verwenden kann, da ich jeder Anwendung einen eigenen Adressraum zur Verfügung stelle.

DarkThing

  • Beiträge: 652
    • Profil anzeigen
Gespeichert
« Antwort #4 am: 04. November 2005, 14:57 »
Ich machs genauso wie SSJ7Gohan. In ELF-Files sehe ich einfach eine Menge Vorteile: Sie sind relativ flexibel und können für Kernel, Module, Anwendungen eingesetzt werden. Außerdem sind sie recht portabel, man muss z.B. nur einen ld-Parameter ändern, um 64bit-Code zu erzeugen.

 

Einloggen