El usuario crea una tarea de impresión. Una tarea de impresión consta de los datos que se van a imprimir más información para el spooler como puede ser el nombre de la impresora, el nombre de la cola de impresión y, opcionalmente, información para el filtro como por ejemplo las opciones específicas de impresora.
Cada impresora dispone de una cola de impresión dedicada. El spooler de impresión retiene la tarea de impresión en la cola hasta que la impresora deseada esté lista para recibir datos. Una vez que la impresora está preparada, el spooler envía los datos a la impresora a través del filtro y el dorsal.
El filtro convierte los datos que el usuario quiere imprimir (ASCII, PostScript, PDF, JPEG, etc.) en datos específicos de impresora (PostScript, PCL, ESC/P, etc.). Las características de la impresora se describen en los archivos PPD. Un archivo PPD contiene las opciones específicas de impresora con los parámetros necesarios para activar dichas opciones en la impresora. El sistema de filtros garantiza que las opciones seleccionadas por el usuario estén activadas.
Si se utiliza una impresora PostScript, el sistema de filtros convierte los datos en PostScript específico de impresora, para lo cual no es necesario ningún controlador de impresora. Si se utiliza una impresora no PostScript, el sistema de filtros convierte los datos en datos específicos de impresora por medio de Ghostscript. Para este proceso se requiere un controlador Ghostscript adecuado para la impresora. El dorsal recibe del filtro los datos específicos de impresora y los pasa a la impresora.