Provided by: manpages-de-dev_0.5-4.1ubuntu1_all bug

BEZEICHNUNG

       iopl - ändere I/O-Privilegebene

ÜBERSICHT

       #include <unistd.h>

       int iopl(int level);

BESCHREIBUNG

       iopl ändert die I/O-Privilegebene des aktuellen Prozesses wie angegeben
       in level.

       Dieser Aufruf ist notwendig, um 8514-kompatible  X-Server  unter  Linux
       laufen  zu  lassen.  Da diese X-Server Zugriff auf alle 65536 I/O-Ports
       benötigen, ist der Aufruf ioperm nicht ausreichend.

       Zusätzlich zu  uneingeschränktem  Zugriff  auf  I/O-Ports  erlaubt  das
       Laufen  in  einer  höheren  Privilegebene  dem Prozess auch, Interrupts
       auszuschalten.  Dies kann  möglicherweise  das  System  zusammenbrechen
       lassen und wird nicht empfohlen.

       Zugriffsrechte werden von fork und exec vererbt.

       Die I/O-Privilegebene eines normalen Prozesses ist 0.

RÜCKGABEWERT

       Bei   Erfolg   wird   Null   zurückgegeben.    Im  Fehlerfall  wird  -1
       zurückgegeben und errno entsprechend gesetzt.

FEHLER

       EINVAL  level ist größer als 3.

       EPERM   Der aktuelle User ist nicht der Superuser.

BEMERKUNGEN AUS DER KERNEL-SOURCE

       iopl muss benutzt werden, wenn man die I/O-Ports hinter 0x3ff  benutzen
       will:   um   alle   65536   Ports   zu  verzeichnen,  braucht  man  8kB
       Speicherplatz, was ein wenig übertrieben ist.

SIEHE AUCH

       ioperm(2).