NAZWA
iopl - zmień poziom uprawnień we/wy
SKŁADNIA
#include <sys/io.h>
int iopl(int level);
OPIS
Uwaga! To tłumaczenie może być nieaktualne!
iopl zmienia poziom uprawnień we/wy bieżącego procesu na podstawie parametru level.
Wywołanie to jest niezbędne do umożliwienia działania pod Linuksem X serwerom zgodnym z 8514. Ponieważ serwery te wymagają dostępu do wszystkich 65536 portów I/O, polecenie ioperm nie wystarcza.
Dodatkowo do zapewnienia nieograniczonego dostępu do portów we/wy, praca na wyższych poziomach uprawnień we/wy umożliwia procesowi również zablokowanie przerwań. Prawdopodobnie spowodowałoby to załamanie systemu i nie jest to zalecane.
Prawa są dziedziczone przez fork i exec.
Poziom uprawnień we/wy dla normalnego procesu wynosi 0.
WARTOŚĆ ZWRACANA
Po pomyślnym zakończeniu zwracane jest zero. Po błędzie zwracane jest -1 i odpowiednio ustawiane errno.
BŁĘDY
EINVAL |
level jest większy niż 3. |
|||
EPERM |
Bieżący użytkownik nie jest superużytkownikiem. |
CONFORMING TO
iopl jest specyficzne dla Linuksa i nie powinno być używane w przenośnych programach.
UWAGI
Libc5 traktuje to jak wywołanie systemowe i posiada dla niego prototyp w <unistd.h>. Glibc1 nie posiada prototypu. Glibc2 posiada prototyp zarówno w <sys/io.h>, jak i w <sys/perm.h>. Należy unikać tego ostatniego, gdyż jest dostępne tylko na i386.
ZOBACZ TAKŻE
INFORMACJE O TŁUMACZENIU
Powyższe tłumaczenie pochodzi z nieistniejącego już Projektu Tłumaczenia Manuali i może nie być aktualne. W razie zauważenia różnic między powyższym opisem a rzeczywistym zachowaniem opisywanego programu lub funkcji, prosimy o zapoznanie się z oryginalną (angielską) wersją strony podręcznika za pomocą polecenia:
man --locale=C 2 iopl
Prosimy o pomoc w aktualizacji stron man - więcej informacji można znaleźć pod adresem http://sourceforge.net/projects/manpages-pl/.