Naučte sa príkaz Linux - ioctl

názov

ioctl - ovládacie zariadenie

synopse

#include

int ioctl (int d , int žiadosť , ...);

popis

Funkcia ioctl manipuluje so základnými parametrami zariadenia špeciálnych súborov. Najmä mnohé prevádzkové charakteristiky špeciálnych súborov znakov (napr. Terminály) môžu byť riadené požiadavkami ioctl . Argument d musí byť otvorený deskriptor súborov.

Druhým argumentom je kód žiadosti závislý od zariadenia. Tretím argumentom je nenahnutý ukazovateľ do pamäte. Je to tradične char * argp (od dní pred neplatným * bol platný C), a bude takto pomenovaný pre túto diskusiu.

Požiadavka ioctl v ňom zakódovala, či argument je parameter v parametri alebo out a veľkosť argp argumentu v bajtoch. Makrá a definície používané pri zadávaní požiadaviek na ioctl sa nachádzajú v súbore .

Hodnota návratnosti

Zvyčajne sa v prípade úspechu vráti nula. Niekoľko jotloviek používa návratovú hodnotu ako výstupný parameter a vráti nezávislú hodnotu na úspech. Pri chybe sa -1 vráti a chyba sa nastaví správne.

chyby

EBADF

d nie je platný deskriptor.

EFAULT

argp odkazuje na nedostupnú pamäťovú oblasť.

ENOTTY

d nie je spojená so špeciálnym zariadením.

ENOTTY

Zadaná žiadosť sa nevzťahuje na druh objektu, ktorý popisovač d odkazuje.

EINVAL

Žiadosť alebo argp nie sú platné.

V súlade s

Žiadny štandard. Argumenty, návraty a sémantika ioctl (2) sa líšia v závislosti od príslušného ovládača zariadenia (volanie sa používa ako záchytná jednotka pre operácie, ktoré sa netýkajú modelu Unix stream I / O). Pozri zoznam ioctl_list (2) pre zoznam mnohých známych hovorov ioctl . Voľba funkcie ioctl sa objavila vo verzii 7 AT & T Unix.