Tru64 UNIX Advanced Printing Software

Architecture and model


Tru64 UNIX

» Tru64 UNIX V5.1B-6
» Tru64 UNIX V5.1B-5
» Documentation
» Information library
» Software web index
» Software products library
» Patch database
» Services
» Developer & Solution Partner Program
» Send us your comments
» Support Statements

Evolving business value

» Tru64 UNIX to HP-UX 11i transition benefits calculator
» Alpha RetainTrust Program
» Transition

Related links

» Alpha systems
» HP-UX 11i
» Integrity servers
» Linux
» HP storage
» HP solutions
HP-UX 11i: measurably better TCO!

» Overview

Product info

» Download

» Resources

Advanced Printing Software uses an object-oriented architecture. Each logical element is implemented as an object. There are several types of objects in the system:

  • Server

    A server object is a component that describes services provided and objects supported by the system. Advanced Printing has a two-tier server architecture. A spooler accepts, queues and schedules jobs for printing. A supervisor controls the actual printers; it sends print data to them and reports status information. Each named server object is associated with a server process and a persistent disk based database.

  • Logical Printer

    A logical printer object is the user's view of a printer and provides defaults for jobs printed through it. Logical printer objects reside in a spooler.

  • Queue

    A Queue object accepts print jobs from one or more logical printers and holds them until a suitable physical printer is available. Queue objects reside in a spooler.

  • Physical Printer

    A physical printer object is a software abstraction of an actual printer device. It maintains information specific to a printer device, such as its capabilities, its address and port, and its status. Physical printer objects reside in a supervisor.

  • Job

    A Job object is a collection of user supplied document files and print attributes that direct when, where, and how the job should be printed.

  • Document

    A Document object is a user supplied file and attributes that direct how the document should be printed within the job.

  • Initial Value

    An Initial Value object contains a set of attributes to be applied to a print job or document. It provides a means for attaching the same attributes to each job submitted to a particular printer. It can also serve as a convenience to users who want to consistently specify a predetermined set of attributes with a certain class of jobs, such as monthly billing or inventory lists.

Figure 1 illustrates how the major objects are interconnected. Network connections are shown in red. Clients in the network environment submit requests to servers. Typical user requests include printing jobs, and requesting a list of jobs in a queue. Administrators can issue management requests, such as those to create a print queue, set up an object's notification profile, or to set up printer defaults. Print jobs submitted to a logical printer are stored in a queue, and from there, flow through an available physical printer object, to a printer device. An administrator can dynamically change the association between printer and queue objects using a CLI command or a GUI tool.

The architecture allows for very flexible configurations. For example, multiple logical printers (submission points) can feed jobs into one queue and these logical printers can provide different job defaults. You can set up one logical printer for two-sided printing and another for one-sided. Users can submit jobs to one or the other depending on their requirements.

Spoolers and supervisors can communicate across hosts. If your printers are network connected, then you can run the supervisor on just about any host in your environment. If you have printers that are physically connected to a host, you must run a supervisor process on that host. You generally need only one spooler for all your physical printers.

Print jobs and their associated documents are also implemented as objects. A job is made up of one or more documents submitted by the user to print in a single request. A document consists of print data and printing instructions.

All system objects have associated attributes that describe them, define their behavior, or provide instructions to the system. For example, the physical printer object has an attribute, "sides-supported" that indicates whether the printer is a capable of two-sided printing. A user would set the "sides" attribute of a document to 2 to indicate that the document should be printed on both sides of the paper. There are literally hundreds of attributes associated with the print system objects.

Name Services

As you create objects in the system, the servers record object bindings in a local name file. The name file contains the name of each object, and a binding to the server that clients can use to access it. Administrators can publish the name file as a NIS map or with Lightweight Directory Access Protocol (LDAP) to make objects visible to clients in the network environment.

Advanced Printing Gateways

Advanced Printing Software includes an LPD inbound gateway client. This gateway accepts jobs submitted via the standard LPD remote protocol (RFC 1179) and submits them to an Advanced Printing spooler. It also communicates directly with the LPD daemon to efficiently transfer local jobs submitted with the lpr command.

The package also includes an "outbound" LPD gateway supervisor that can tranfer jobs to remote hosts or printers that accept LPD print requests. The outbound gateway supervisor can emit print jobs using distinct extensions to RFC 1179, including those of Solaris(TM), Digital UNIX, Xerox DocuPrint NPS and Xerox DocuTech 6135. This capability allows the system to take advantage of commonly available LPD extensions that a remote server can provide. Remote hosts do not need to be running Advanced Printing Software.

»  Back to Advanced Printing overview
»  Proceed to Advanced Printing clients