focal (2) iopl.2.gz

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

BEZEICHNUNG

       iopl - I/O-Privilegienstufe ändern

ÜBERSICHT

       #include <sys/io.h>

       int iopl(int level);

BESCHREIBUNG

       iopl()  ändert  die  E/A-Privilegienstufe  des aufrufenden Prozesses wie durch die zwei niedrigstwertigen
       Bits in level angegeben.

       Dieser Aufruf ist notwendig, um 8514-kompatible X-Server  unter  Linux  auszuführen.  Da  diese  X-Server
       Zugriff auf alle 65536 I/O-Ports benötigen, ist der Aufruf ioperm(2) nicht ausreichend.

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

       Zugriffsrechte  werden  nicht  vom  dem durch fork(2) erstellten Kindprozess ererbt und werden nicht über
       execve(2) erhalten (siehe aber auch HINWEISE).

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

       Der Aufruf ist hauptsächlich für die i386-Architektur. Auf  vielen  anderen  Architekturen  existiert  er
       nicht und wird immer einen Fehler zurückliefern.

RÜCKGABEWERT

       Bei  Erfolg  wird  Null  zurückgegeben.  Bei  einem  Fehler  wird -1 zurückgegeben und errno entsprechend
       gesetzt.

FEHLER

       EINVAL level ist größer als 3.

       ENOSYS Dieser Aufruf ist nicht implementiert.

       EPERM  Der aufrufende Prozess  hat  unzureichende  Privilegien,  um  iopl()  aufzurufen;  die  Capability
              CAP_SYS_RAWIO wird benötigt, um die E/A-Privilegienstufe über deren aktuellen Wert zu erhöhen.

KONFORM ZU

       iopl() ist Linux-spezifisch und sollte nicht in Programmen verwandt werden, die portabel sein sollen.

ANMERKUNGEN

       Glibc2  hat einen Prototyp sowohl in <sys/io.h> als auch in <sys/perm.h>. Vermeiden Sie letzteren, er ist
       nur auf i386 verfügbar.

       Vor Linux 3.7 wurden die Rechte von mit fork(2) erstellten  Kindern  geerbt  und  wurden  über  execve(2)
       erhateln.   Dieses   Verhalten   wurde   versehentlich   in  Linux  3.7  geändert  und  wird  nicht  mehr
       wiederhergestellt.

SIEHE AUCH

       ioperm(2), outb(2), capabilities(7)

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 Patrick Rother <krd@gulu.net>,  Helge  Kreutzmann
       <debian@helgefjell.de> und Mario Blättermann <mario.blaettermann@gmail.com> 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>.