Provided by: manpages-de-dev_2.16-1_all bug

BEZEICHNUNG

       outb,  outw,  outl,  outsb, outsw, outsl, inb, inw, inl, insb, insw, insl, outb_p, outw_p,
       outl_p, inb_p, inw_p, inl_p - Ein-/Ausgabe mittels Ports

ÜBERSICHT

       #include <sys/io.h>

       unsigned char inb(unsigned short int port);
       unsigned char inb_p(unsigned short int port);
       unsigned short int inw(unsigned short int port);
       unsigned short int inw_p(unsigned short int port);
       unsigned int inl(unsigned short int port);
       unsigned int inl_p(unsigned short int port);

       void outb(unsigned char value, unsigned short int port);
       void outb_p(unsigned char value, unsigned short int port);
       void outw(unsigned short int value, unsigned short int port);
       void outw_p(unsigned short int value, unsigned short int port);
       void outl(unsigned int value, unsigned short int port);
       void outl_p(unsigned int value, unsigned short int port);

       void insb(unsigned short int port, void *addr,
                  unsigned long int count);
       void insw(unsigned short int port, void *addr,
                  unsigned long int count);
       void insl(unsigned short int port, void *addr,
                  unsigned long int count);
       void outsb(unsigned short int port, const void *addr,
                  unsigned long int count);
       void outsw(unsigned short int port, const void *addr,
                  unsigned long int count);
       void outsl(unsigned short int port, const void *addr,
                  unsigned long int count);

BESCHREIBUNG

       Diese Funktionenfamilie dient zur systemnahen Ein- und Ausgabe auf  Hardwareschnittstellen
       (Ports).  Die  Out*-Funktionen  schreiben  dorthin, die In*-Funktionen lesen von dort. Die
       Suffixe bedeuten: b - die Funktion bearbeitet Byte; w - die Funktion bearbeitet Worte;  _p
       - die Funktion pausiert bis zum Abschluss des E/A-Vorgangs.

       Sie  wurden  ursprünglich  als  interne  Kernelfunktionen  konzipiert, können aber auch in
       User-Space-Programmen verwendet werden.

       Sie müssen die Funktionen mit -O oder -O2 oder ähnlichem kompilieren. Die Funktionen  sind
       als  Inline-Makros definiert und werden ohne aktivierte Optimierungen nicht eingefügt, was
       zu nicht aufgelösten Verweisen während des Linkvorgangs führt.

       Durch   ioperm(2)   oder   alternativ   auch   iopl(2)   wird   der   Kernel   angewiesen,
       Benutzeranwendungen  den  Zugriff  auf  die betreffenden Ein- und Ausgabeschnittstellen zu
       gestatten. Wird dies nicht gemacht, treten in der Anwendung Speicherzugriffsfehler auf.

KONFORM ZU

       outb() und Co. sind hardwarespezifisch. Die Argumente value  und  port  werden  in  dieser
       Reihenfolge   übergeben.   Die  meisten  DOS-Implementierungen  verwenden  die  umgekehrte
       Reihenfolge.

SIEHE AUCH

       ioperm(2), iopl(2)

KOLOPHON

       Diese Seite  ist  Teil  der  Veröffentlichung  5.03  des  Projekts  Linux-man-pages.  Eine
       Beschreibung  des  Projekts,  Informationen,  wie  Fehler gemeldet werden können sowie die
       aktuelle Version dieser Seite finden sich unter https://www.kernel.org/doc/man-pages/.

ÜBERSETZUNG

       Die deutsche Übersetzung dieser Handbuchseite wurde von Ralf  Demmer  <rdemmer@rdemmer.de>
       und Martin Eberhard Schauer <Martin.E.Schauer@gmx.de> erstellt.

       Diese  Übersetzung  ist  Freie  Dokumentation;  lesen  Sie  die GNU General Public License
       Version  3  oder  neuer  bezüglich  der  Copyright-Bedingungen.  Es  wird  KEINE   HAFTUNG
       übernommen.

       Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-
       Mail an <debian-l10n-german@lists.debian.org>.