|
Article on other languages:
|
El Sistema de impresión común de Unix (Common Unix Printing System en inglés, abreviado CUPS) es un sistema de impresión modular para sistemas operativos de tipo Unix que permite que un computador actúe como servidor de impresión. Un computador que ejecuta CUPS actúa como un servidor que puede aceptar tareas de impresión desde otros computadores clientes, los procesa y los envía al servidor de impresión apropiado. CUPS está compuesto por una cola de impresión con su planificador, un sistema de filtros que convierte datos para imprimir hacia formatos que la impresora conozca, y un sistema de soporte que envía los datos al dispositivo de impresión. CUPS utiliza el protocolo IPP(Internet Printing Protocol) como base para el manejo de tareas de impresión y de colas de impresión. También provee los comandos tradicionales de línea de comandos de impresión de los sistemas Unix, junto a un soporte limitado de operaciones bajo el protocolo server message block (SMB). Los controladores de dipositivos de impresión que CUPS provee pueden ser configurados utilizando archivos de texto con formato Descripción de impresoras PostScript (PPD, PostScript Printer Description en inglés) de Adobe Systems. Existen varias interfaces de usuario para diferentes plataformas para configurar CUPS; cuenta también con una interfaz como aplicación Web. CUPS es software libre y se distribuye bajo licencia GNU General Public License y GNU Lesser General Public License, Versión 2.
HistoriaMichael Sweet, dueño de Easy Software Products, comenzó a desarrollar CUPS en 1997. Las primeras versiones públicas beta aparecieron en 1999[1] . El diseño original de CUPS usaba el protocolo LPD, pero debido a limitaciones en el protocolo e incompatibilidades entre marcas, se optó cambiar por el protocolo IPP(Internet Printing Protocol). Cups fue rápidamente adoptado como el sistema de impresión por defecto en varias distribuciones Linux. En marzo de 2002, la empresa Apple Inc. adoptó CUPS como el sistema de impresión en el sistema operativo Mac OS X 10.2[2] . En febrero de 2007, Apple Inc. empleó al desarrollador Michael Sweet y compró el código fuente de CUPS[3] . Visión generalCUPS provee un mecanismo que permite que trabajos de impresión sean enviados a impresoras de manera estandarizada. La información es enviada planificador[4] quien envía el trabajo a un sistema de filtros que convierte el trabajo a un formato que la impresora comprende.[5] . El sistema de filtros luego envía los datos a un backend —un filtro especial que envía datos de impresora a un periférico o una conexión de red[6] . El sistema hace un uso extensivo del lenguaje PostScript y de rasterización de los datos, para convertir los datos recibidos a un formato aceptado por la impresora. CUPS tiene como ventaja principal ser un sistema de impresión estandarizado y modularizado, capaz de procesar diferentes formatos de datos en el servidor de impresión. Antes de CUPS, era difícil encontrar un sistema de impresión estandarizado capaz de adaptarse a la gran gama de variedades de impresoras existentes en el mercado, utilizando cada una su propio lenguaje de impresión y formatos. Como ejemplo: los sistemas de impresión de System V y de Berkeley fueron durante mucho tiempo incompatibles uno con el otro, requiriendo scripts complicados y arreglos varios para lograr convertir el formato de datos desde el programa a un formato imprimible. Normalmente no se lograba detectar el formato de archivo que estaba siendo enviado a la impresora, con lo que no se podía corregir y convertir automáticamente el flujo de datos. Además se ejecutaba la conversión de datos en cada estación de trabajo y no en un servidor central. CUPS permite más fácilmente, a los fabricantes de impresoras y a los desarrolladores de controladores, crear controladores que funcionen nativamente en el servidor de impresión. EL procesamiento ocurre en el servidor, permitiendo sistemas de impresión basadas en red mucho más sencillas que con otros sistemas de impresión Unix. Cuando es utilizado con Samba, pueden ser utilizados las impresoras en computadoras Windows remotas y controladores genéricos PostScript pueden ser utilizados para imprimir a través de la red. PlanificadorEL planificador de CUPS implementa IPP (Internet Printing Protocol) sobre HTTP/1.1. Una aplicación de ayuda (cups-lpd) convierte peticiones de LPD a IPP. El planificador también provee una interfaz web para administrar los trabajos de impresión, la configuración del servidor y para brindar documentación de CUPS mismo[4] .
El planificador permite la utilización de clases de impresoras. Las aplicaciones pueden enviar peticiones a grupos de impresoras en una clase, permitiendo al planficador redirigir el trabajo a la primer impresora libre de ésa clase[10] .
Otros módulos utilizados por el planificador son:
Sistema de filtradoUno de de las principales ventajas de CUPS es que puede procesar una variedad de formatos de datos en el servidor de impresiones. Convierte la información del trabajo de impresión al lenguaje/formato destino de la impresora a través de una serie de filtros[18] [19] . Lo hace utilizando tipos de MIME, siendo éste un estándar de internet para el formato de correo electrónico, pero muy útil para permitir que CUPS determine el tipo del archivo siendo procesado. Base de datos MIMELuego de que un trabajo de impresión ha sido asignado al planificador, es reenviado al sistema de filtrados de CUPS. Éste convierte los datos a un formato adecuado para la impresora. El demonio CUPS carga durante el inicio dos Bases de datos MIME:
Por ejemplo, para detectar un archivo HTML se utilizaría la siguiente entrada:
La segunda línea une el contenido del archivo al tipo MIME especificado, determinando que el primero kilobyte de texto en el archivo contiene caracteres imprimibles y que éstos incluyen html. Si el pattern de arriba es coincidente, será tildado el archivo como de tipo MIME text/html.[21] El archivo
El campo source es el tipo MIME determinado al revisar el archivo Algunos ejemplos: text/plain application/postscript 50 texttops application/vnd.cups-postscript application/vnd.cups-raster 50 pstoraster image/* application/vnd.cups-postscript 50 imagetops image/* application/vnd.cups-raster 50 imagetoraster Procesos de filtradosEl proceso de filtrado se ejecuta tomando como entrada datos preformateados con seis argumentos: nombre de la cola de impresión, job ID del trabajo de impresión, nombre de usuario, nombre del trabajo, número de copias, opciones de impresión, y nombre de archivo (aunque éste no es necesario si ha sido redireccionado desde entrada estándar[19] . Luego determina el tipo de dato de la entrada y el filtro a ser usado a través del uso de la base de datos MIME. Por ejemplo datos de imagen que será detectada y procesada a través de un filtro particular y datos HTML detectados y procesados a través de otro filtro. Ésta información puede ser o bien convertido en datos PostScript o directamente en datos rasterizados. Si es convertido a PostScript, entonces es aplicado un filtro adicional llamado prefiltro, quien corre los datos PostScript a través de otro conversor PostScript para poder incluir opciones específicas de la impresora - por ejemplo rango de páginas a imprimirse, modo n-up y otras opciones específicas del periférico.[23] Luego del pre-filtrado pueden ser enviados los datos directamente al backend de CUPS si es utilizada una impresora PostScript, o puede ser desviado a algun otro filtro como Foomatic de linuxprinting.org. Alternativamente puede ser pasado a Ghostscript, quien convierte el PostScript en un formato intermedio CUPS-raster[24] Éste formato rasterizado intermedio es luego pasado a un filtro final quien convierte los datos rasterizados en un formato específico de la impresora. Los filtro por defecto incluidos en CUPS son:
Igualmente, hay varias otras alternativas que pueden ser utilizadas junto con CUPS. Easy Software Products (ESP), creadores de CUPS, han publicado sus propios filtros CUPS; Gutenprint (anteriormente conocido como Gimp-Print) es un una gama de controladores de impresoras de alta calidad para una gran mayoría de las impresoras de chorro de tinta (inkjet), y Turbo-Print para Linux tiene otra gama de controladores de alta calidad. BackendsLos "backends" son las maneras en que la información es enviada a la impresora. Hay varios backends disponibles para CUPS: Puertos paralelo, serial y USB, como también a través de la red mediante los protocolos IPP, Jet Direct (AppSocket), Line Printer Daemon ("LPD") y SMB. CompatibilidadCUPS provee comandos de impresión de System V y de Berkley, para poder utilizar los comandos tradicionales con CUPS. Escucha en el puerto 515, puerto tradicional de LPD (lo trata como un 'backend'). Cuando CUPS está instalado, se instalan los comandos Apple Computer está utilizando CUPS como sistema de impresión en su sistema operativo Mac OS X a partir de la versión:10.2 (Jaguar) Herramientas de Interfaz de UsuarioHay varias herramientas para ayudar en la configuración de CUPS. Interfaz web para administrar CUPSPara administrar CUPS se cuenta con una interfaz web corriendo sobre puerto 631.[26] Extremadamente útil en organizaciones que deben monitorear trabajos de impresión y crear colas de impresión e impresoras remotamente. CUPS 1.0 proveía una interfaz web sencilla para monitorear clases, trabajos e impresoras. CUPS 1.1 sustituyó esta interfaz con una interfaz de administración que permite agregar, modificar, eliminar, configurar y controlar clases, trabajos e impresoras. CUPS 1.2 tiene una interfaz web modernizada, caracterizada por mejorada legibilidad y diseño, soporte a descubrimiento automático de impresoras y un mejor acceso a las bitácoras del sistema y a seteos avanzados. GNOMEEl GNOME CUPS Manager puede ser utilizado para agregar nuevas impresoras, y para administrar las impresoras CUPS con sus colas. Existen además otras aplicaciones (de terceras partes) para administrar las impresiones, por ejemplo GtkLP y su herramineta asociada GtkLPQ, o GtkPSproc. EL grupo de bibliotecas para desarrollar interfaces gráficas de usuario (widget toolkit) llamado GTK+, sobre los cuales GNOME está basado, incluye soporte integrado de impresiones basadas en CUPS a partir de su version 2.10, introducida en 2006. KDEKDEPrint, para KDE, es un marco que contiene varias herramientas de interfaces gráficas de usuarios que actúa comom un front-end de CUPS y permite la administración de clases, colas de impresión y trabajos. Incluye un asistente para agregar nuevas impresoras, entre otras características. Fue agregado en KDE 2.2. KDEPrint soporta varias plataformas diferentes, entre las cuales CUPS es una de las mejores soportada. Reemplazó una versión previa de soporte de impresión en KDE, qtcups y es compatible con éste módulo de KDE. kprinter, una aplicación de cuadro de diálogo, es ahora la herramienta principal para enviar trabajos a la impresora; también puede ser arrancado desde la línea de comandos. KDEPrint incluye un sistema de prefiltrado de cualquier trabajo antes de enviarlo a CUPS; o de manejar los trabajos completamente solor (por ejemplo convertir archivos en PDF); estos filtros son descrito spor una pareja de Escritorio / Archivos XML. La primera versión es de 1999, la más reciente es la 1.2.8 de 14 de Febrero de 2007 El 12 de julio de 2007, Apple Computer anunció que compró en febrero de ese año CUPS "Common Unix Printing System". Desde Linux al propio OSX dependen de la librería para imprimir. Apple ha contratado a Michael Rose para que continúe con el desarrollo y ha dicho que mantendrá la actual licencia GPLv2. Véase también
Referencias
Enlaces externos
|
|||||||||||||||||||||||||
This article is from Wikipedia. All text is available under the terms of the GNU Free Documentation License.
Mercedes Car
This site monitored by SitePinger.net