ioctl - dispositivo de control
Sinopsis
#incluir
int ioctl (int re , En t solicitud , …);
Descripción
losioctl La función manipula los parámetros del dispositivo subyacente de los archivos especiales. En particular, muchas características operativas de los archivos especiales de caracteres (por ejemplo, terminales) se pueden controlar conioctl peticiones. El argumento re debe ser un descriptor de archivo abierto.
El segundo argumento es un código de solicitud dependiente del dispositivo. El tercer argumento es un puntero a la memoria sin tipo. Es tradicionalmentechar * argp (de los dias anterioresnulo * era válido C), y se llamará así para esta discusión.
Un ioctl solicitud ha codificado en él si el argumento es un en parámetro o afuera parámetro, y el tamaño del argumento argp en bytes. Macros y definiciones utilizadas en la especificación de un ioctl solicitud se encuentran en el archivo
Valor de retorno
Por lo general, en caso de éxito se devuelve cero. Algunos ioctls utilizan el valor de retorno como un parámetro de salida y devuelven un valor no negativo en caso de éxito. En caso de error, se devuelve -1, y errno se establece adecuadamente.
Los errores
EBADF
re no es un descriptor valido
EFAULT
argp Hace referencia a un área de memoria inaccesible.
ENOTTY
re no está asociado con un dispositivo de carácter especial.
ENOTTY
La solicitud especificada no se aplica al tipo de objeto que el descriptor re referencias
EINVAL
Solicitud o argp no es válido.
De acuerdo a
No hay un solo estándar. Argumentos, declaraciones y semántica deioctl(2) varían de acuerdo con el controlador del dispositivo en cuestión (la llamada se utiliza como un catch-all para operaciones que no se ajustan perfectamente al modelo de E / S de flujo de Unix). losioctl La llamada a la función apareció en la versión 7 de AT&T Unix.




