vardas
ioctl - valdymo įtaisas
Anotacija
#include
int ioctl (int d , int request , ...);
apibūdinimas
Ioctl funkcija manipuliuoja pagrindinius įrenginių specialiųjų failų parametrus. Visų pirma, daugelis specialiųjų failų (pvz., Terminalų) veikimo charakteristikos gali būti kontroliuojamos naudojant ioctl užklausas. Argumentas d turi būti atviras failų deskriptorius.
Antrasis argumentas yra priklausomas nuo įrenginio prašymo kodas. Trečiasis argumentas yra nepaskirtas atminties rodiklis. Tradiciškai char * argp (nuo dienų prieš void * galiojo C), ir bus taip pavadintas dėl šios diskusijos.
Ioctl užklausa užkoduoja tai, ar argumentas yra parametro arba išvesties parametras, ir argumento dydis argp baitais. Makrokomandos ir apibrėžimai, naudojami nurodyti ioctl užklausą, yra failo
Grąžos vertė
Paprastai grąžinamas sėkmė nulis. Keli ioctls naudoja grąžinimo reikšmę kaip išvesties parametrą ir grąžina neigiamą sėkmės vertę. Į klaidą grąžinamas -1, o tinkamai nustatomas errno .
Klaidos
EBADF
d nėra galiojantis deskriptorius.
EFAULT
argp nurodo neprieinamą atminties sritį.
ENOTTY
d nėra susietas su simboliu specialiu įrenginiu.
ENOTTY
Nurodytas prašymas netaikomas objekto rūšiai, kurią nurodo deskriptorius.
EINVAL
Prašymas arba argumentas negalioja.
Atitinka
Nėra vieningo standarto. " Ioctl" (2) argumentai, grąžos ir semantika skiriasi priklausomai nuo konkretaus įrenginio tvarkyklės (skambutis naudojamas kaip "visiškas" veiksmas, kuris netinka " Unix" srauto I / O modeliui). Žiūrėkite ioctl_list (2) daugelio žinomų Ioctl skambučių sąrašą. Ioctl funkcijos skambutis pasirodė AT & T Unix 7 versijoje.