Print request processing
Print requests are sent to a spooling daemon (background program) that keeps track of all of the print jobs.
As the following figure illustrates, each print request is sent to a spooling daemon (background program) that keeps track of all of the print jobs. (This information is archived in the request log.) The daemon is created when you start the print service. The spooling daemon is also responsible for keeping track of the status of the printers and slow filters; when a printer finishes printing a job, the daemon initiates printing another job if one is queued.

You can customize the print service by adjusting or replacing some of the items shown in the Overview of Print Request Processing figure (the numbers in the following list correspond to the numbered items in the diagram).
- Print service configuration: For most printers, you need only change the printer configuration stored on disk. See the lpadmin command for adding or modifying a local printer.
- terminfo database: For printers that are not represented
in the terminfo database, you can add a new entry that describes
the capabilities of the printer. See Adding a printer entry to the terminfo database.
The print service uses the terminfo database in two parallel
capacities: screening print requests to ensure that those accepted
can be handled by the desired printer, and setting the printer so
it is ready to print the requests.
For example, if the terminfo database does not show a printer capable of setting a page length requested by a user, the spooling daemon rejects the request. However, if it does show it to be capable, then the interface program uses the same information to initialize the printer.
- Standard Interface Program: If you have a particularly complicated printer or if you want to use features not provided by the print service, you can change the interface script. This script is responsible for managing the printer: it prints the banner page, initializes the printer, and invokes a filter to send copies of the user's files to the printer.
- Optional filters: To provide a link between the applications used on your system and the printers, you can add slow and fast filters. Each type of filter can convert a file into another form, for example, mapping one set of escape sequences into another, and can provide a special setup by interpreting print modes requested by a user. Slow filters are run separately by the spooling daemon to avoid tying up a printer. Fast filters are run so their output goes directly to the printer; thus, they can exert control over the printer.