table of contents
IOCTL(2) | Manual del Programador de Linux | IOCTL(2) |
NOMBRE¶
ioctl - controlar dispositivo
SINOPSIS¶
#include <sys/ioctl.h>
int ioctl(int fd, unsigned long petición, ...);
DESCRIPCIÓN¶
The ioctl() system call manipulates the underlying device parameters of special files. In particular, many operating characteristics of character special files (e.g., terminals) may be controlled with ioctl() requests. The argument fd must be an open file descriptor.
El segundo argumento es un código de solicitud que depende del dispositivo. El tercer argumento es un puntero a memoria sin tipo. Es tradicionalmente char *argp (desde los días antes de que void * se considerara código C válido), y así se le llamará en este documento.
Una petición de ioctl() tiene codificada en sí misma si el argumento es un parámetro de entrada o de salida, y el tamaño del argumento argp en bytes. En el fichero de cabecera <sys/ioctl.h> se definen macros empleadas al especificar una peticion de ioctl.
VALOR DEVUELTO¶
Usually, on success zero is returned. A few ioctl() requests use the return value as an output parameter and return a nonnegative value on success. On error, -1 is returned, and errno is set appropriately.
ERRORES¶
- EBADF
- fd no es un descriptor de archivo válido.
- EFAULT
- argp referencia a una zona de memoria inaccesible.
- EINVAL
- petición o argp no es válido.
- ENOTTY
- fd no está asociado con un dispositivo especial de caracteres.
- ENOTTY
- The specified request does not apply to the kind of object that the file descriptor fd references.
CONFORME A¶
No single standard. Arguments, returns, and semantics of ioctl() vary according to the device driver in question (the call is used as a catch-all for operations that don't cleanly fit the UNIX stream I/O model). The ioctl() system call appeared in Version 7 AT&T UNIX.
NOTAS¶
In order to use this call, one needs an open file descriptor. Often the open(2) call has unwanted side effects, that can be avoided under Linux by giving it the O_NONBLOCK flag.
VÉASE TAMBIÉN¶
execve(2), fcntl(2), ioctl_console(2), ioctl_fat(2), ioctl_ficlonerange(2), ioctl_fideduperange(2), ioctl_getfsmap(2), ioctl_iflags(2), ioctl_ns(2), ioctl_tty(2), ioctl_userfaultfd(2), open(2), sd(4), tty(4)
COLOFÓN¶
Esta página es parte de la versión 4.16 del proyecto Linux man-pages. Puede encontrar una descripción del proyecto, información sobre cómo informar errores y la última versión de esta página en https://www.kernel.org/doc/man-pages/.
TRADUCCIÓN¶
La traducción al español de esta página del manual fue creada por Gerardo Aburruzaga García <gerardo.aburruzaga@uca.es>, Juan Piernas <piernas@ditec.um.es> y Miguel Pérez Ibars <mpi79470@alu.um.es>
Esta traducción es documentación libre; lea la GNU General Public License Version 3 o posterior con respecto a las condiciones de copyright. No existe NINGUNA RESPONSABILIDAD.
Si encuentra algún error en la traducción de esta página del manual, envíe un correo electrónico a debian-l10n-spanish@lists.debian.org.
3 Mayo 2017 | Linux |