Aprende o comando Linux - ioctl

Nome

ioctl - dispositivo de control

Sinopse

#include

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

Descrición

A función ioctl manipula os parámetros do dispositivo subxacente de ficheiros especiais. En particular, moitas características operativas de ficheiros especiais de carácter (por exemplo, terminais) poden controlarse con solicitudes ioctl . O argumento d debe ser un descriptor de ficheiro aberto.

O segundo argumento é un código de solicitude dependente do dispositivo. O terceiro argumento é un punteiro sen restar á memoria. Tradicionalmente char * argp (desde os días previos ao baleiro * era C válido), e así se nomeará para esta discusión.

Unha solicitude ioctl codificou nela se o argumento é un parámetro en parámetro ou fóra , eo tamaño do argumento argp en bytes. As macros e as definicións utilizadas para especificar unha solicitude ioctl están localizadas no ficheiro .

Valor de retorno

Normalmente, no éxito cero rexístrase. Algúns ioctls usan o valor de retorno como parámetro de saída e devolven un valor non negativo ao éxito. En caso de erro, devólvese -1, e errno configúrase de forma adecuada.

Erros

EBADF

d non é un descriptor válido.

EFAULT

Argp fai referencia a unha área de memoria inaccesible.

ENOTTY

d non está asociado cun dispositivo especial de carácter.

ENOTTY

A solicitude especificada non se aplica ao tipo de obxecto que o descriptor d refire.

EINVAL

A solicitude ou argp non é válida.

Conforme a

Sen un estándar único. Os argumentos, retornos e semántica de ioctl (2) varían segundo o controlador de dispositivo en cuestión (a chamada úsase como captura para operacións que non se axusten de forma limpa ao modelo de E / S de transmisión Unix ). Vexa ioctl_list (2) para obter unha lista de moitas das chamadas ioctl coñecidas. A chamada de función ioctl apareceu na versión 7 AT & T Unix.