ioctl - устройство управления
конспект
#включают
int ioctl (int d , int запрос , …);
Описание
IOCTL функция управляет параметрами базового устройства специальных файлов. В частности, многие рабочие характеристики специальных файлов символов (например, терминалов) могут управляться с помощьюIOCTL Запросы. Аргумент d должен быть открытым файловым дескриптором.
Второй аргумент - это код запроса, зависящий от устройства. Третий аргумент - нетипизированный указатель на память. Это традиционноchar * argp (с предыдущих днейvoid * был действителен C) и будет так назван для этого обсуждения.
Ioctl запрос закодировал в нем, является ли аргумент в параметр или из параметр и размер аргумента argp в байтах. Макросы и определения, используемые при указании ioctl запрос находятся в файле
Возвращаемое значение
Обычно, при успешном завершении возвращается ноль. Несколько ioctls используют возвращаемое значение в качестве выходного параметра и возвращают неотрицательное значение при успешном завершении. При ошибке возвращается -1, и ERRNO устанавливается соответствующим образом.
ошибки
EBADF
d не является допустимым дескриптором.
EFAULT
argp ссылается на недоступную область памяти.
ENOTTY
d не связано с символом специального устройства.
ENOTTY
Указанный запрос не относится к типу объекта, в котором дескриптор d Рекомендации.
EINVAL
Запрос или же argp не является действительным.
В соответствии с
Нет единого стандарта. Аргументы, возврат и семантикаIOCTL(2) варьируются в зависимости от рассматриваемого драйвера устройства (вызов используется как функция catch-all для операций, которые не подходят для модели ввода-вывода потока Unix).IOCTL вызов функции появился в версии 7 AT & T Unix.




