Spooler queues, virtual printers, and physical printers

These examples for /etc/qconfig file structure are provided for defining queues, virtual printers and physical printers.

This Four Queues - Four Virtual Printers - One Physical Printer example depicts an instance of /etc/qconfig that defines four queues on a single physical printer, in this case /dev/lp1. Notice that all four pairs of stanzas use the string lp1 to connect a queue stanza to a device stanza. It is the file parameter in each device stanza that specifies that the printer known to the base operating system as lp1, and whose device driver entry point is /dev/lp1, is the actual physical destination of any jobs submitted to any of these queues. When these queues were defined with SMIT, the command that actually creates the queue definition needed a string to connect the two halves of each stanza pair. Because the physical printer at hand was lp1, the string lp1 was used as the both the value of the device parameter in each queue stanza and as the name of each device stanza. This format is detailed in the /etc/qconfig File Structure examples below.

asc:
        device = lp1
lp1:
        file = /dev/lp1
        header = never
        trailer = never
        access = both
        backend = /usr/lib/lpd/piobe
gl:
        device = lp1
lp1:
        file = /dev/lp1
        header = never
        trailer = never
        access = both
        backend = /usr/lib/lpd/piobe
pcl:
        device = lp1
lp1:
        file = /dev/lp1
        header = never
        trailer = never
        access = both
        backend = /usr/lib/lpd/piobe
ps:
        device = lp1
lp1:
        file = /dev/lp1
        header = never
        trailer = never
        access = both
        backend = /usr/lib/lpd/piobe

Each of these stanza pairs defines a queue. When the backend for a queue is piobe, each queue also has an associated virtual printer. While it is possible to create virtual printer definitions the hard way, virtual printer definitions are typically created at the same time as the queue definition, with SMIT and the piomkpq command. The virtual printer definition is not contained in /etc/qconfig. Its presence is implied by the fact the spooler backend for a given queue is piobe, but it is stored elsewhere in the base operating file system. The name of the queue is used to identify and access the virtual printer definition.

The physical printer known to the base operating system as lp1 clearly supports at least four distinct data stream types; they are ASCII (asc), Plotter Emulation (gl), Printer Command Language (pcl), and PostScript (ps). Each queue with its associated virtual printer definition is designed to process a particular data stream type, hence the four queues. This is the basis for the base operating system notion of a logical separation of physical and virtual printers.