-
Tastatureingaben einlesen (Keyboard-Interrupts)
Nachdem wir uns in den letzten Tutorials mit der Interrupt Descriptor Table, dem Programmable Interrupt Controller und einer Textausgabe für unseren Kernel beschäftigt haben, wollen wir nun weitere Hardware-Interrupts verarbeiten - nämlich unsere Tastatureingaben.
-
Kernel: Funktionen für Textausgaben
Bevor wir mit unserem nächsten Tutorial zum Thema Tastatureingaben weitermachen, könnten wir noch ein paar Funktionen gebrauchen, die Zeichen und Texte auf dem Bildschirm anzeigen können.
-
Programmable Interrupt Controller
Nachdem wir zuletzt die IDT angelegt haben, wollen wir jetzt nicht mehr nur CPU-Interrupts, sondern auch andere Hardware-Interrupts empfangen. Diese gehen über den sogenannten Programmable Interrupt Controller. Dieser leitet die Interrupts von den einzelnen Hardware-Geräten an die CPU weiter.
-
Interrupt Descriptor Table
Ähnlich wie die Global Descriptor Table müssen wir auch noch die Interrupt Descriptor Table anlegen. Aufmerksame Programmierer erinnern sich, dass wir zuvor die Interrupts deaktiviert haben mittels
cli
. Bevor wir diese reaktivieren können, müssen wir zwei Dinge erledigen: -
Die Global Descriptor Table von C aus anlegen
Bisher haben wir die GDT direkt in unserem Assembler-Code angelegt. Da unser Kernel jetzt in C programmiert ist, wollen wir auch die GDT in C anlegen.