Запознајте се со командата за Linux - ioctl

Име

ioctl - уред за контрола

Синопсис

#include

int ioctl (int d , int барање , ...);

Опис

Функцијата ioctl манипулира со основните параметри на уредот на специјални датотеки. Особено, многу оперативни карактеристики на карактерните специјални датотеки (на пр. Терминали) може да се контролираат со ioctl барања. Аргументот d мора да биде дескриптор на отворени датотеки.

Вториот аргумент е код за барање, зависен од уредот. Третиот аргумент е нетипичен покажувач на меморијата. Тоа е традиционално char * argp (од деновите пред празнина * беше валидно C), и ќе биде така именувано за оваа дискусија.

Барањето ioctl има кодирано во него дали аргументот е параметар или параметар, а големината на аргументот argp во бајти. Макроата и дефинициите што се користат при одредување на барање за ioctl се наоѓаат во датотеката .

Враќање вредност

Обично, за успехот нула се враќа. Неколку ioctls ја користат вратената вредност како излезен параметар и враќаат ненаречена вредност за успехот. По грешка, -1 се враќа, и errno се поставува соодветно.

Грешки

EBADF

d не е валиден дескриптор.

EFAULT

argp референцира непристапна област за меморија.

ENOTTY

d не е поврзан со карактер посебен уред.

ENOTTY

Наведеното барање не се однесува на типот на објектот што се однесува на дескрипторот d .

EINVAL

Барањето или argp не е валидно.

Во согласност со

Нема единствен стандард. Аргументите, враќањата и семантиката на ioctl (2) се разликуваат во зависност од драјверот на уредот за кој станува збор (повикот се користи како улов за сите операции што не се вклопуваат во Unix поток I / O модел). Погледнете ioctl_list (2) за листа на многу познати ioctl повици. Повикот на функцијата ioctl се појави во верзија 7 AT & T Unix.