¿Cómo reciben las impresoras los documentos de las computadoras? ¿Colas internas?

¿Cómo reciben las impresoras los documentos de las computadoras? ¿Colas internas?

He tenido problemas para encontrar información real sobre cómo las impresoras manejan realmente los datos de impresión.

Hasta donde yo sé, todos los sistemas operativos tienen una "cola de impresión" que aparentemente almacena los documentos impresos en la impresora en el orden en que fueron solicitados.

Antes de las impresoras de red, me imaginaba que a la impresora real se le enviaban datos casi línea por línea desde la máquina conectada.

Ahora, con las impresoras de red, este modelo imaginado se desmorona. Supongo que las impresoras modernas simplemente reciben un documento posdata (o algún otro formato de impresión) del sistema operativo, lo guardan en la memoria e imprimen desde él.

La pregunta es, ¿qué significa una cola de impresión del sistema operativo si la impresora puede recibir varios documentos?

La cola de impresión del sistema operativo no nos muestra nada de lo que otras máquinas están imprimiendo porque es un búfer local. Entonces eso debe significar que la impresora tiene una cola integrada, ¿verdad? Entonces, ¿por qué tenemos colas de impresión si no podemos ver qué más se está imprimiendo?


Cualquier información sobre cómo funcionan realmente las impresoras hoy en día sin cables serie sería útil, pero para que esta sea una pregunta válida:

¿Cómo imprimen las impresoras documentos desde varias máquinas si cada máquina no tiene idea de que otras también están imprimiendo?

¿Cómo se transmite el documento a la impresora?

¿Qué tipo de información admiten la mayoría de los protocolos de impresión?

Hago la última pregunta porque por mi cuenta el cañón parece solicitar el nivel de tinta como si fuera un trabajo de impresión:

printing:   supply levels

También he oído hablar de impresoras HP que utilizan trabajos de impresión "falsos" para enviar una actualización de firmware.

Respuesta1

Hasta donde yo sé, todos los sistemas operativos tienen una "cola de impresión" que aparentemente almacena los documentos impresos en la impresora en el orden en que fueron solicitados.

La "cola de impresión" es la parte visible del servicio/demonio de la impresora que originalmente era un programa llamado SPOOL (para operaciones periféricas simultáneas en línea), como el sistema operativo HASP/OS360 que se ejecuta en mainframes IBM 360. (IMO SPOOL es uno de los mejores acrónimos acuñados porque también es una palabra en inglés (tanto sustantivo como verbo) que puede usarse como analogía para describir cómo funciona el servicio de impresión).

Antes de las impresoras de red, me imaginaba que a la impresora real se le enviaban datos casi línea por línea desde la máquina conectada.

Es cierto que no es necesario el "casi".

Ahora, con las impresoras de red, este modelo imaginado se desmorona. Supongo que las impresoras modernas simplemente reciben un documento posdata (o algún otro formato de impresión) del sistema operativo, lo guardan en la memoria e imprimen desde él.

Las "impresoras de líneas" o impresoras "tontas" que sólo aceptan texto sin formato son esencialmente obsoletas y han sido reemplazadas por "impresoras de páginas" que aceptan entradas en algún tipo de formato.lenguaje de descripción de la página(por ejemplo, posdata, PCL). Como es necesario enviar a la impresora más datos que el texto de la página, es decir, la página completa en formato PDL, las interfaces más antiguas, como el puerto paralelo "Centronics" y el puerto serie RS-232, han sido reemplazadas por USB y Ethernet (cableada e inalámbrica).

Tenga en cuenta que tener una interfaz Ethernet y llamarla "impresora de red" no significa que pueda funcionar como un "servidor de impresión" en red. La "impresora de red" configurada en modo "punto a punto" en realidad requiere que se instale un "controlador de impresora" en cada PC que quiera utilizar esa impresora. Esa "impresora de red" se instala entonces como una impresora local en la PC, pero negocia y utiliza esa impresora a través de una conexión de red. Los trabajos de impresión en la "impresora de red" deben retenerse en la cola local al igual que los trabajos en otras impresoras locales.

A las impresoras de páginas no se les envía el documento completo (como imaginaba), sino una "página" a la vez. Por supuesto, la "página" estaría en formato PDL y podría dividirse en líneas y paquetes, según el medio de transferencia. Dado que se trata de impresoras de páginas en lugar de servidores de impresión, no hay almacenamiento masivo (es decir, disco duro) y es necesario mantener cada "página" en la memoria local hasta que se imprima. Se implementaría un protocolo de "control de flujo" (también conocido como protocolo de enlace) para que la PC transmita el fragmento de página o la página cuando haya más memoria disponible en la impresora.

La pregunta es, ¿qué significa una cola de impresión del sistema operativo si la impresora puede recibir varios documentos?

A menos que realmente tenga un servidor de impresión con almacenamiento masivo (por ejemplo, una unidad de disco duro), la "impresora de red" realmente no puede aceptar documentos completos o múltiples a menos que todos sean lo suficientemente pequeños como para caber en la RAM de la impresora. La cola de impresión de la PC debe usarse para ordenar y almacenar los trabajos de impresión pendientes que se originan en la PC. Cada PC en la red que utiliza esa "impresora de red" tiene que competir por esa impresora compartida. La "impresora de red" podría mantener su propia cola de solicitudes de trabajo de todas las PC, o al menos de qué PC solicitan servicio. Tenga en cuenta que solo conocerá las solicitudes y no retendrá ningún dato de página (que todavía esté en cada PC) hasta que la impresora esté lista para comenzar ese trabajo.

Si realmente tiene un servidor de impresión, entonces la cola local es solo un paso intermedio antes de que el trabajo de impresión termine en la cola del servidor de impresión.

La cola de impresión del sistema operativo no nos muestra nada de lo que otras máquinas están imprimiendo porque es un búfer local. Entonces eso debe significar que la impresora tiene una cola integrada, ¿verdad? Entonces, ¿por qué tenemos colas de impresión si no podemos ver qué más se está imprimiendo?

Es de esperar que la impresora tenga una cola de solicitudes para mantener una lista de trabajos impresos por orden de llegada. De lo contrario, una PC podría verse desplazada por otras PC. Aún necesita la cola local porque así es como aún envía trabajos de impresión en la PC local. A menos que tenga un servidor de impresión en red real con almacenamiento masivo para guardar su trabajo de impresión, su trabajo de impresión tendrá que residir en su PC local hasta que pueda trasladarse. Consulte con el fabricante de la impresora (o del servidor) para obtener una aplicación basada en red o una herramienta de navegación para consultar la cola o el estado de la impresora (o del servidor).

¿Cómo imprimen las impresoras documentos desde varias máquinas si cada máquina no tiene idea de que otras también están imprimiendo?

Este es un problema común de asignación de recursos en informática: múltiples usuarios/consumidores compitiendo por un recurso. En este caso (que no tiene complicaciones) la impresora o el servidor pueden recibir cada solicitud y luego priorizarlas en algún orden. El control de flujo garantizará que la impresora no se sobrecargue. Otra posible solución (que simplifica la carga de trabajo en la impresora) sería un esquema de transferencia de tokens. A la PC que ha recibido el "token" se le concede el uso de la impresora para un trabajo. Después de imprimir ese trabajo, esa PC debe pasar el token a otra PC que tenga trabajos en su cola.

información relacionada