Rechercher une page de manuel
iopl
Langue: de
Version: 2. Juni 1996 (openSuse - 09/10/07)
Section: 2 (Appels système)
Sommaire
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).Contenus ©2006-2023 Benjamin Poulain
Design ©2006-2023 Maxime Vantorre