PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Frage zu Hardware / Treiberprogrammierung



dragi
16-12-2007, 10:54
Hallo zusammen,

ich bin aktuell noch ein "normaler" Programmierer der sich nur mit Anwendungs- / Businesssoftware unter Windows rumschlägt. Ich möchte nun aber meinen eigenen Interessen nachgehen und mich mit Kernel und Treiberprogrammierung beschäftigen. Aber dazu hab ich eine kleine Frage: Gibt es irgendeine kleine Hardware, an der man die Treiberprogrammierung üben kann? Ich kann ja nicht sofort einen GK Treiber oder sowas bauen da man ja auch wissen muss wie die Hardware funktioniert. Gibt es da etwas zum üben?

Gruß

Dragi

bischi
16-12-2007, 11:22
Wie wärs mit nem Mikrocontroller? AVR oder PIC... (oder sonst was :D)

MfG Bischi

dragi
16-12-2007, 13:08
Du meinst ich könnte einen Treiber für meinen AVR Butterfly schreiben?
Also, ich bin ja noch nicht so weit und versuch nur schonmal etwas praktisches zu finden auf das man hinarbeiten kann :)

bischi
16-12-2007, 13:22
Treiber schreiben heisst ja, hardwarenahe Software schreiben (Register auslesen, Register schreiben, einzelne Bits manipulieren,...). Lernen, wie du nen uP ansteuern kannst (eventuell einfache Protokolle implementieren), dürfte da ein erster Schritt sein. Dass du das Ganze natürlich in C und Assembler machst, versteht sich von selbst ;)

MfG Bischi

anda_skoa
16-12-2007, 15:22
Ich denke, es hängt davon ab, welche Art von Treiber man vorrangig einsetzen möchte.

Zum Beispiel können Treiber für USB Geräte mit Hilfe der libusb auch im Userspace realisiert werden, also nicht als Kernelmodul.
Ich gehe jetzt mal davon aus, dass so etwas viel leichter zu testen und debuggen ist :)

Im Falle von Kerneltreibern kann ich mich noch vage an ein Beispiel aus "Linux Device Drivers" erinnern, in dem zuerstmal eine Art virtuelles Gerät benutzt wurde, um den Lebenszyklus von Modulen zu erlernen, d.h. loading/unloading, Initialisierung/Speicherverwaltung, IO zwischen Modul und Userspace, usw.

Ciao,
_