System V printing system

From Wikipedia, the free encyclopedia

Template:Short description The printing subsystem of UNIX System V is one of several standardized systems for printing on Unix, and is typical of commercial System V-based Unix versions such as Solaris and SCO OpenServer. A system running this print architecture could traditionally be identified by the use of the user command Page Template:Mono/styles.css has no content.lp as the primary interface to the print system, as opposed to the BSD Page Template:Mono/styles.css has no content.lpr command (though some systems provide Page Template:Mono/styles.css has no content.lpr as an alias to Page Template:Mono/styles.css has no content.lp).

Typical user commands available to the System V printing system are:

History

In the Unix programming model, device files are special files that act as access points to peripheral devices such as printers. For example, the first line printer on a Unix system might be represented by a file Page Template:Mono/styles.css has no content.lp1 in the device (Page Template:Mono/styles.css has no content./dev) directory, i.e., Page Template:Mono/styles.css has no content./dev/lp1. Using the file metaphor, a document could by printed by "copying" the file onto the device: Page Template:Mono/styles.css has no content.cp document /dev/lp1. While this worked well enough for the case where there was one printer per user, this model did not scale out well to multiple users having to share one printer.[1] The solution was to create a queue (or "spool") of documents to be printed and use a daemon (system process) to manage this queue and send the documents to the printer in the order in which they arrived.

Such a system, with an Page Template:Mono/styles.css has no content.lp command to send documents to the queue, was first introduced in 1973 in Version 4 of Unix.[2]Template:R/superscript By the release of System V Release 4, the suite of utilities had grown to include commands for canceling print jobs, moving jobs among queues, enabling and disabling queues, enabling and disabling a job scheduler daemon, and status reports of the print system.[3]Template:R/superscript The Page Template:Mono/styles.css has no content.lp command handled queue documents to be printed[3]Template:R/superscript and had over 20 different options that controlled the appearance of the document and its place in the queue,[4]Template:R/superscript and even handled email notification of the user once the document had finished printing.[2]Template:R/superscript The command returned a "job id" which could be used by the cancel or lpstat commands to remove the job from the queue or check on its progress, respectively.[5]Template:R/superscript While the system was considered to be quite complex to set up and administer, most uses were expected to only use these three commands.[4]Template:R/superscript

With its distribution in the influential AT&T Unix System V, the interface if not the implementation became the standard for users' control over printers. The Page Template:Mono/styles.css has no content.lp command was included as a requirement in the POSIX.2 standard,[6] and a command by that name appeared in the subsequent lpr, LPRng and CUPS printing systems. (In SVR4 derivates like SCO UNIX, the Page Template:Mono/styles.css has no content.lp command was simply an alias for the Page Template:Mono/styles.css has no content.lpr command used by the BSD-based Page Template:Mono/styles.css has no content.lpr system.[7])

As late as 1996, Running Linux stated "The Linux printing software consists of the UNIX standard lp and lpr software",[8] but by 1999 support for lp was waning and the third edition simply stated "The lpr command prints a document on Linux."[9] By 2003, a survey of the Debian, Mandrake, Red Hat, Slackware and SuSE distributions showed that all of them were running some combination of lpr, LPRng and CUPS.[10]

The original System V printing system remains proprietary; however, the Solaris print system, heavily modified from the original, has been released as open source software as part of the OpenSolaris project. CUPS emulates both System V and Berkeley print architectures on the interface level, though its internal architecture is different from both.

Criticism

In his introduction to a simplified configuration system for lp, author Peter Gray of the University of Wollongong described several weaknesses of the version shipping with the then-current Solaris (operating system) version 2.

  • As opposed to the single daemon used by the simpler BSD lpr system, the lp system used separate daemons, one for scheduling and one for remote communication.
  • The lpr system could be controlled with a single configuration file while lp requires a separate program for administration.
  • The lp system did support permissions, but the model did not scale to hundreds of users.

As a result, Gray observed that "many administrators choose to simply run the old lpr/lpd system on the SVR4 boxes."[11]

See also

References

Page Template:Reflist/styles.css has no content.

  1. ^ Page Module:Citation/CS1/styles.css has no content.Kofler, Michael (1997). "6.4 Printer Configuration". Linux: Installation, configuration and use. Addison-Wesley. pp. 146–150. ISBN 0-201-17809-5.
  2. ^ a b Page Module:Citation/CS1/styles.css has no content.Arthur, Lowell Jay (1986). Unix Shell Programming. John Wiley & Sons. p. 190. ISBN 0-471-84932-4.
  3. ^ a b Page Module:Citation/CS1/styles.css has no content.Nemeth, Evi; Snyder, Garth; Seebass, Scott (1989). "Printing Under ATT". UNIX System Administration Handbook (1st ed.). Prentice Hall. pp. 164–173. ISBN 0-13-933441-6.
  4. ^ a b Page Module:Citation/CS1/styles.css has no content.Rosen, Kenneth H.; Rosinski, Richard R.; Farber, James M. (1990). UNIX System V Release 4: An Introduction for New and Experienced Users. Osborne McGraw-Hill. pp. 117–121. ISBN 0-07-881552-5.
  5. ^ Page Module:Citation/CS1/styles.css has no content.Sobell, Mark G. (1985). A Practical Guide to UNIX System V. Benjamin/Cummings. pp. 45–46. ISBN 0-8053-8915-6.
  6. ^ Page Module:Citation/CS1/styles.css has no content.Gardner, James (1994). Learning Unix (2nd ed.). SAMS. pp. 144. ISBN 0-672-30457-0.
  7. ^ Page Module:Citation/CS1/styles.css has no content.Cutler, Ellie (1994). SCO UNIX in a Nutshell. O'Reilly. pp. 75–76. ISBN 1-56592-037-6.
  8. ^ Page Module:Citation/CS1/styles.css has no content.Welsh, Matt; Kaufman, Lar (1995). Running Linux (1st ed.). O'Reilly. p. 33. ISBN 1-56592-100-3.
  9. ^ Page Module:Citation/CS1/styles.css has no content.Welsh, Matt; Dalheimer, Kalle; Kaufman, Lar (1999). Running Linux (3rd ed.). O'Reilly. pp. 323–330. ISBN 1-56592-469-X.
  10. ^ Page Module:Citation/CS1/styles.css has no content.Smith, Roderick W. (2003). "Managing Printers". Linux Power Tools. SYBEX. pp. 269–284. ISBN 0-7821-4226-5.
  11. ^ Page Module:Citation/CS1/styles.css has no content.Gray, Peter (August 1997). "Simplified LP configuration". AUUGN: The Journal of AUUG (Australian Unix Systems User Group). 18 (3): 9–11.

Page Module:Side box/styles.css has no content.Page Template:Sister project/styles.css has no content.

Lua error in package.lua at line 80: module 'Module:Navbox/configuration' not found.