Provided by: manpages-es_4.13-4_all 

NOMBRE
lp - dispositivos de impresora.
SINOPSIS
#include <linux/lp.h>
CONFIGURACIÓN
lp[0–2] son dispositivos de carácter para las impresoras en el puerto paralelo; tienen el número mayor 6
y el menor 0–2. Los números menores corresponden a las direcciones de base de los puertos de impresora
0x03bc, 0x0378 y 0x0278. Normalmente tienen permisos 220 y su propietario es root y son del grupo lp.
Los puertos de impresora se pueden usar o bien en modo de sondeo o bien en modo de interrupción. Se
recomienda usar el modo de interrupciones cuando se espere gran cantidad de tráfico (p.ej. con impresoras
láser). Para las impresoras matriciales , el modo de sondeo suele ser suficiente de ahí que se use por
defecto.
DESCRIPCIÓN
Se aceptan las siguientes llamadas ioctl(2):
int ioctl(int fd, LPTIME, int arg)
arg es la cantidad de tiempo que el controlador dormirá antes de re-comprobar la impresora, cuando
el tampón de la impresora se haya llenado. Si se tiene una impresora rápida, redúzcase este
número; si se tiene una impresora lenta, auméntese. Se mide en centésimas de segundo, siendo el
valor por omisión 2 (0,02 segundos). Sólo tiene influencia en el controlador por sondeo.
int ioctl(int fd, LPCHAR, int arg)
arg es el número máximo de iteraciones de espera que efectuará el controlador por sondeo, mientras
espera que la impresora esté lista para recibir un carácter. Si la impresora es demasiado lenta,
hay que aumentar este número. Si el sistema va demasiado lento, hay que disminuir este número. El
valor por omisión es 1000. Sólo tiene influencia en el controlador por sondeo.
int ioctl(int fd, LPABORT, int arg)
Si arg es 0, el controlador reintentará la operación cuando se produzca un error. De lo contrario,
abortará. El valor por omisión es 0.
int ioctl(int fd, LPABORTOPEN, int arg)
Si arg es 0, se abortará open(2) cuando se produzca un error, de lo contrario el error será pasado
por alto. El valor por omisión es este último comportamiento.
int ioctl(int fd, LPCAREFUL, int arg)
Si arg es 0, es necesario que las señales de sin-papel, fuera de línea y error sean falsas en el
momento de la escritura, de lo contario no se tienen en cuenta. El valor por omisión es esto
último.
int ioctl(int fd, LPWAIT, int arg)
arg fija el número de iteraciones de espera a efectuar antes de enviar un pulso a la impresora
para que acepte el carácter que se acaba de escribir, y el número de iteraciones a esperar antes
de retirar el pulso. La especificación dice que su duración debe ser 0,5 microsegundos, pero la
experiencia muestra que el retardo causado por el propio codigo es suficiente. Por esa razón, el
valor por omisión es 0. Lo usan tanto el controlador por interrupciones como el controlador por
sondeo.
int ioctl(int fd, LPSETIRQ, int arg)
Esta ioctl(2) necesita los privilegios de administrador. Toma un int que contiene la nueva IRQ a
usar por el controlador. Como efecto secundario, se reinicia la impresora. Si arg es 0, se usará
el controlador por sondeo, del mismo modo que se haría por defecto.
int ioctl(int fd, LPGETIRQ, int *arg)
Devuelve en arg la IRQ en uso actualmente.
int ioctl(int fd, LPGETSTATUS, int *arg)
Devuelve en arg el valor del puerto de estado. El significado de cada bit es el siguiente:
LP_PBUSY entrada de ocupado invertida, activa a nivel alto
LP_PACK entrada de reconocimiento, activa a nivel bajo.
LP_POUTPA entrada de sin papel, activa a nivel alto.
LP_PSELECD entrada de seleccionado, activa a nivel alto.
LP_PERRORP entrada de error, activa a nivel bajo.
Consulte el manual de su impresora para conocer el significado exacto de las señales. Nótese que
también pueden activarse otros bits no documentados, dependiendo de la impresora.
int ioctl(int fd, LPRESET)
Re-inicializa la impresora. No necesita argumento.
ARCHIVOS
/dev/lp*
VÉASE TAMBIÉN
chmod(1), chown(1), mknod(1), lpcntl(8), tunelp(8)
COLOFÓN
Esta página es parte de la versión 5.10 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 Ignacio Arenaza
<Ignacio.Arenaza@studi.epfl.ch>, Gerardo Aburruzaga García <gerardo.aburruzaga@uca.es> y Marcos Fouces
<marcos@debian.org>
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.
Linux 13 Agosto 2020 LP(4)