Lowlevel
Lowlevel => Lowlevel-Coding => Thema gestartet von: thetrue am 04. August 2006, 12:17
-
moin,
da ich schon recht weit mit meinem OS bin, habe ich über Module nachgedacht bzw Treiber.
Doch wie implementiert man das?
also angenommen ich habe den Tastatur Treiber auf einer anderen Datei, wie kann ich das dan so laden, dass ich es wie der code im Kernel benutze?
Wie habt ihr das implementiert?
-
Grub, der lädt automatisch alle meine Module.
-
@thetrue: Echt weit mit deinem OS. ^^
bitmaster
-
Bei mir läuft der Tastatur Treiber als eigenständiges Programm, er kann also keinen Code vom Kernel mitbenutzen. Er registriert sich als erstes beim Kernel sodass er ab dann bei jedem IRQ eine Nachricht über das msg-system bekommt, in der aber keine daten stehen, den Tastatur-Port muss er selbst auslesen und auswerten.
Zusätzlich muss er sich noch die "Rechte" für die benötigten Ports von Kernel geben lassen. Das ist aber noch nicht implementiert (ATM darf noch jeder alle Ports benutzen).
Gemeinsam benutzen Code wird es nur irgentwann in Form von shared Librarys geben, aber einzelne Kernel-Module, wie du meintest hab ich nicht.
edit: alle Module, die Grub lädt werden als eigene Programme gestartet, insofern lädt Grub auch meine "Module", nur dass es eigenständige Tasks sind.