Lowlevel

Lowlevel => Lowlevel-Coding => Thema gestartet von: Peabrain am 21. August 2009, 23:53

Titel: Devices. aber wie?
Beitrag von: Peabrain am 21. August 2009, 23:53
hallo leute.

ich hab da ein kleines problem. ich denke die ganze zeit darüber nach, wie ich devices in meinen kernel einbaue. vielleicht über softwareinterrupts. kann mir jemand bitte auf die sprünge helfen?

danke,
gruß.
Titel: Re: Devices. aber wie?
Beitrag von: DaCodaaa am 22. August 2009, 10:23
Also, du willst Geräte wie das Diskettenlaufwerk ansprechen?
Titel: Re: Devices. aber wie?
Beitrag von: Peabrain am 23. August 2009, 09:21
ja, genau. aber die treiber schreiben ist nicht mein poblem, sondern wie ich das ansprechen organisieren soll. zum beispiel das laden des treibers. mache ich das über ein tss oder nur über einen gdt eintrag. dann darf das  programm ja nur relative adressirung haben. und so weiter. fragen fragen fragen. :D
Titel: Re: Devices. aber wie?
Beitrag von: stultus am 25. August 2009, 21:30
Naja, so allgemein kann man dir da immernoch nicht helfen - wie nen Interface aussieht hängt nunmal doch _sehr_ stark an der Restlichen Systemarchitektur - Mikrokernel oder (modular?) monolithisch. In einem Mikrokernel wäre nen Treiberinterface z.b. meistens sehr unabhängig, da kann einfach der vorhandene Messaging- bzw RPC-Mechanismus genutzt werden. In nem Monolithen wäre die Bereitstellung von Interrupts wohl die praktikablere Variante, Callgates in der GDT sind natürlich auch möglich (ich wüsste aber nicht dass hier jemand diesen Weg gewählt hätte, dürfte imho auch mehr Aufwand sein - Adressverwaltung, statische GDT-Einträge laden und bei Codeänderung vllt. anpassen...).
Für weitere Auskünfte bitte etwas mehr Infos was du genau vorhast, und was als Grundstruktur vorhanden ist ;)