PDQ stands for "Print, Don't Queue", and the way it works reflects this design. PDQ is a non-daemon-centric print system which has a built-in, and sensible, driver configuration syntax. This includes the ability to declare printing options, and a GUI or command line tool for users to specify these options with; users get a nice dialog box in which to specify resolution, duplexing, paper type, etc.
Running all of the filters as the user has a number of advantages: the security problems possible from Postscript are mostly gone, multi-file LaTeX jobs can be printed effectively as dvi files, and so forth.
PDQ is not without flaws: most notably it processes the entire job before sending it to the printer. This means that, for large jobs, PDQ may simply be impractical—you can end up with hundreds of megs being copied back and forth on your disk. Even worse, for slow drivers like the better quality inkjet drivers, the job will not start printing until Ghostscript and the driver have finished processing. This may be many minutes after submission.
There's a real place for PDQ; it has a simple design that doesn't
subtract user control. And the normal control path crosses no
security boundaries, so it can't have the classes of security bug
people are always finding in other systems. And to top it off, it's
However there is no active development done on PDQ. A new maintainer would be most welcome.
The Coherent Printing System is a set of Perl scripts called "lpr", "lpd", "lprm", and "lpq". These replace the programs of the same name which come with many Linux systems.
The Cisco Enterprise Print System was developed by Damian Ivereigh when he was a sysadmin at Cisco. He did more than he was hired to do, he developed a new printing system to improve the administrative hassle. Cisco authorized the release of the software for free under the GNU General Public License. Installing CEPS will however only pay off at large organisations.