Rechercher une page de manuel

Chercher une autre page de manuel:

ioctl

Autres langues

Langue: pl

Version: 2000-09-21 (fedora - 25/11/07)

Section: 2 (Appels système)

NAZWA

ioctl - sterowanie urządzeniem

SKŁADNIA

#include <sys/ioctl.h>

int ioctl(int d, int request, ...);

OPIS

Funkcja ioctl manipuluje na podległych jej parametrach urządzeń, do których dostęp odbywa się poprzez pliki specjalne. W szczególności, za pomocą żądań ioctl można kontrolować wiele właściwości operacyjnych specjalnych plików znakowych (np. terminali). Argument d musi być otwartym deskryptorem pliku.

Drugi argument jest zależnym od urządzenia kodem polecenia. Trzeci argument jest pozbawionym typu wskaźnikiem do obszaru pamięci, tradycyjnie char *argp (pochodzi z okresu zanim void * stało się poprawne w C) i tak będzie nazywany w niniejszej dyskusji.

Ioctl request zawiera w sobie zakodowaną informację czy argument jest parametrem wejściowym czy wyjściowym oraz rozmiar argp tego argumentu w bajtach. Makra i definicje, używane do przekazywania request do ioctl, znajdują się w pliku <sys/ioctl.h>.

WARTOŚĆ ZWRACANA

Zazwyczaj, po pomyślnym zakończeniu zwracane jest zero. Niektóre ioctl-e używają zwracanej wartości jako parametru wyjściowego i zwracają wówczas pewną wartość nieujemną. Po błędzie zwracane jest -1 i odpowiednio ustawiane errno.

BŁĘDY

EBADF
d nie jest prawidłowym deskryptorem.
EFAULT
argp wskazuje na niedostępny obszar pamięci.
ENOTTY
d nie jest związane z urządzeniem znakowym.
ENOTTY
Podane żądanie nie ma zastosowania dla obiektu, na który wskazuje deskryptor d.
EINVAL
request lub argp są nieprawidłowe.

CONFORMING TO

Brak jednego standardu. Argumenty, zwracane wartości i semantyka ioctl(2) różnią się w zależności od sterownika urządzenia, którego dotyczą (wywołanie jest używane jako uniwersalne dla operacji, które nie dają się ładnie dopasować do uniksowego modelu strumieni we/wy). W ioctl_list(2) znajduje się lista wielu znanych wywołań ioctl. Funkcja ioctl pojawiła się w wersji 7 AT&T UNIX.

ZOBACZ TAKŻE

execve(2), fcntl(2), ioctl_list(2), mt(4), sd(4), tty(4)
Éternellement la science des maîtres passera dans
le coeur des disciples, dans un grand silence attentif,
comme cette huile rousse de mes collines qui coule du
pressoir dans la jarre par un long fil d'or immobile,
sans faire de bulles, sans faire de bruit.
-+- Marcel Pagnol -+-