In diesem Kapitel wurden die folgenden Symbole aus dem Bereich der Hardware-Verwaltung eingeführt:
Diese “Software”-Speicherbarriere fordert den Compiler auf, während dieser Anweisung allen Speicher als flüchtig zu betrachten.
Dies sind Hardware-Speicherbarrieren. Sie fordern die CPU (und den Compiler) auf, an dieser Stelle alle Lese- und Schreibzugriffe auf den Speicher abzuschließen, bevor neue anfangen.
Diese Funktionen werden verwendet, um auf I/O-Ports zu schreiben bzw. von diesen zu lesen. Sie können auch von Programmen aus dem User-Space aufgerufen werden, sofern diese Zugriffsrechte auf die Ports haben.
Die Anweisung SLOW_DOWN_IO wird manchmal benötigt, um auf der x86-Plattform mit langsamen ISA-Karten klarzukommen. Wenn nach einer I/O_-Operation eine kleine Pause benötigt wird, können Sie die sechs wartenden Gegenstücke zu den oben genannten Funktionen verwenden, deren Namen auf _p enden.
Die “String-Funktionen” sind optimiert, um Daten von einem Eingabe-Port in einen Speicherbereich oder in die andere Richtung zu transportieren. Solche Übertragungen werden implementiert, indem ein und derselbe Port so oft ausgelesen oder beschrieben wird, wie in count angegeben ist.
Ressourcen-Allokatoren für I/O-Ports. Die check-Funktion gibt 0 im Erfolgsfall und einen Wert kleiner 0 im Fehlerfall zurück.
Diese Funktionen erledigen die Ressourcen-Allokation von Speicherbereichen.
ioremap bildet einen physikalischen Adreßbereich in den virtuellen Adreßraum des Prozessors ab und macht ihn so für den Kernel verfügbar. iounmap gibt die Abbildung wieder frei, wenn sie nicht mehr benötigt wird.
Alle diese Funktionen werden verwendet, um auf I/O-Speicherbereiche zuzugreifen; entweder auf unteren ISA-Speicher oder auf obere PCI-Puffer.