Scroll to navigation

IOPL(2) Linux Programmeurs Handleiding IOPL(2)

NAAM

iopl - verander In/Uit privilege niveau

SAMENVATTING

#include <sys/io.h>

int iopl(int niveau);

BESCHRIJVING

iopl() verandert het Invoer/Uitvoer privilege niveau van de aanroepende thread, zoals zoals opgegeven in de twee minst significante bits in niveau.

Deze aanroep is nodig om 8514-verenigbare X servers toe te staan onder Linux te draaien. Omdat deze X servers toegang tot alle 65536 Invoer/Uitvoer poorten vereisen is de ioperm(2) aanroep niet voldoende.

In aanvulling op het toestaan van onbeperkte Invoer/Uitvoer poort toegang, staat het lopen met een hoger Invoer/Uitvoer privilege het proces ook toe interrupts uit te schakelen. Dit zal het systeem waarschijnlijk crashen en wordt niet aangeraden.

Toestemmingen worden niet geërfd door het kind proces aangemaakt met fork(2) en blijven niet behouden dwars door execve(2) (maar zie NOTITIES).

Het Invoer/Uitvoer privilege niveau voor een gewoon proces is 0.

Deze aanroep is meestal voor de i386 architectuur. Op veel andere architecture bestaat hij niet of zal een fout terug geven.

EIND WAARDE

Bij succes wordt nul teruggegeven. Bij falen wordt -1 teruggegeven en wordt errno overeenkomstig gezet.

FOUTEN

EINVAL
niveau is groter dan 3.
ENOSYS
Deze aanroep is niet geïmplementeerd.
EPERM
The calling process has insufficient privilege to call iopl(); the CAP_SYS_RAWIO capability is required to raise the I/O privilege level above its current value.

VOLDOET AAN

iopl() is Linux-specifiek en zou niet gebruikt moeten worden in programma´s die overdraagbaar moeten zijn.

OPMERKINGEN

glibc2 heeft een prototype zowel in <sys/io.h> als in <sys/perm.h>. Vermijd de laatste, die is alleen beschikbaar in i386.

Vóór Linux 3.7 werden op een aantal architecturen (zoals i386), rechten geërfd van het kind geproduceerd door fork(2) en werden behouden dwars door execve(2). Dit gedrag werd per ongeluk veranderd in Linux 3.7, en zal niet worden hersteld.

ZIE OOK

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

COLOFON

Deze pagina is onderdeel van release 5.04 van het Linux man-pages-project. Een beschrijving van het project, informatie over het melden van bugs en de nieuwste versie van deze pagina zijn op https://www.kernel.org/doc/man-pages/ te vinden.

VERTALING

De Nederlandse vertaling van deze handleiding is geschreven door Jos Boersema <joshb@xs4all.nl>, Mario Blättermann <mario.blaettermann@gmail.com> en Luc Castermans <luc.castermans@gmail.com>

Deze vertaling is vrije documentatie; lees de GNU General Public License Version 3 of later over de Copyright-voorwaarden. Er is geen AANSPRAKELIJKHEID.

Indien U fouten in de vertaling van deze handleiding zou vinden, stuur een e-mail naar debian-l10n-dutch@lists.debian.org.

15 september 2017 Linux