OpenVMS System Manager's Manual
14.1.2.1 Execution Queues
Descriptions of types of execution queues follow:
- Batch execution queues accept only batch jobs. A
batch job executes as a detached process that sequentially runs one or
more command procedures. The user defines the list of command
procedures when submitting the job.
- Output execution queues
accept jobs that a symbiont processes. The queue manager sends the
symbiont a list of files, which the user defines when submitting the
job. An output symbiont transfers data from a disk to an output device.
As the symbiont processes each file, it produces output for the device
it controls, such as a printer or a terminal.
The operating system provides a standard print symbiont named PRTSMB,
which prints files on hardcopy devices.
The LAT print symbiont LATSYM prints files on output devices attached
to LAT ports. You can also design
symbionts for this or any other file-processing activity that the
OpenVMS batch and print queuing system manages. (Refer to the
OpenVMS Utility Routines Manual for more information.) Output execution queues
include the following types:
Type |
Description |
Printer execution queue
|
Uses a symbiont to direct output to a printer.
|
Terminal execution queue
|
Uses a symbiont to direct output to a terminal printer.
|
Server execution queue
|
Uses a user-modified or user-written symbiont to process the files that
belong to jobs in the queue.
|
When you create an output execution queue, you designate it as
either a printer, a terminal, or a server execution queue; you can also
specify the symbiont to be associated with the queue. However, when the
queue is started, the symbiont process associated with the queue can
override the queue designation if the queue type specified does not
match the type of device. The standard symbiont provided with the
operating system determines whether it is controlling a printer or a
terminal. The symbiont communicates this information to the queue
manager, which, if necessary, changes the type designation of the
output execution queue. By convention, a user-written or user-modified
symbiont that does not deliver output to a printer defines its queue as
a server queue.
14.1.2.2 Generic Queues
Descriptions of types of generic queues follow:
- Generic batch queues direct jobs only to batch
execution queues. Generic batch queues are typically used in OpenVMS
Cluster environments to distribute the batch work load across several
nodes (see Section 14.2.1.3).
Generic batch queues are not
automatically stopped when a node shuts down. Therefore, they do not
need to be started when a node reboots.
- Generic output queues direct jobs to any of the
three types of output execution queues: print, terminal, or server.
Generic output queues are typically used to distribute the output work
load among several like printers (see Section 14.2.2.5).
Generic
output queues are not automatically stopped when a node shuts down.
Therefore, they do not need to be started when a node reboots.
- Logical queues
are a special type of generic output queue that transfers jobs to
another output execution queue. You might use a logical queue to
temporarily redirect a queue when the device on which it runs is
broken.
A logical queue transfers its jobs into the execution queue
specified with the ASSIGN/QUEUE command. For information about setting
up a logical queue, see Section 14.7.1.10.
14.1.3 Understanding Autostart Queues
Compaq recommends that you use autostart queues
whenever possible for a variety of reasons. Autostart queues simplify
startup and ensure high availability of execution queues, allowing you
to perform the following tasks:
- With a single command, start all autostart queues on a node
- Specify a list of nodes (in an OpenVMS Cluster environment) to
which a queue can automatically attempt to fail over
Autostart failover is particularly useful on LAT queues. Because LAT
printers are usually shared among users of multiple systems or OpenVMS
Cluster systems, many users are affected if a LAT queue is unavailable.
For highest availability, set up your LAT queues with a list of nodes
to which the queue can fail over, so the queue can continue to run even
if a node becomes unavailable.
To use autostart queues, you must perform the following three steps:
Task |
Description |
1
|
Create the queue as an autostart queue and, optionally, specify a
failover list.
|
2
|
Activate the queue for autostart. You can do this either when you
create a queue, or after you create one.
|
3
|
Enable autostart on a node. You can do this before or after you create
a queue.
When you enable autostart on a node, the queue manager
automatically starts all stopped, active autostart queues capable of
running on the node.
Any autostart queue that fails over to the node is also automatically
started.
|
Section 14.3 explains these steps in detail.
14.2 Designing Queue Environments
The following sections describe how to design batch queue and output
queue environments.
14.2.1 Designing a Batch Queue Environment
You can design batch queues for a single queue, multiple queues, or
OpenVMS Cluster environments. Each section referred to in the following
table contains figures showing sample configurations to assist you in
designing your batch processing environment. Your configuration may
combine elements from several of these examples.
Configuration |
For More Information |
A single queue for limited batch processing
|
Section 14.2.1.1
|
Multiple queues for heavy batch processing, or customized queues for
specialized batch processing
|
Section 14.2.1.2
|
An OpenVMS Cluster environment
|
Section 14.2.1.3
|
14.2.1.1 Using a Simple Batch Queue Configuration
You can use this simple configuration, which is suitable for limited
batch needs, for a standalone system supporting mainly interactive
processing.
Figure 14-1 shows a single, default batch queue.
Figure 14-1 Default Batch Queue
By default, when a user submits a batch job with the SUBMIT command,
the job is placed in the queue named SYS$BATCH. To set up a single
default queue on a standalone system, name the queue SYS$BATCH.
14.2.1.2 Using Specialized Batch Queues
If your users rely on batch processing or have special processing
needs, you might want to set up more than one queue. You can customize
batch queues to handle specialized jobs by specifying performance and
resource options for jobs in the queue.
Figure 14-2 shows a configuration of several queues, each customized
to process certain types of batch jobs.
Figure 14-2 Multiple Batch Queues with Special Resource and
Performance Options
In Figure 14-2, SYS$BATCH is the default queue. Normal batch jobs
would be submitted to this queue. The FAST queue executes high-priority
jobs that should not be swapped out of memory. SLOW is a background
queue for processing low-priority jobs. These are large jobs with large
requirements for physical memory.
Be conservative when changing base priority and swapping on a queue.
Even a slight change can have a significant negative effect on batch
and interactive performance. For example, even an increase of 1 in a
queue's base priority can affect performance significantly.
For information about specifying these options for a batch queue, see
Section 14.6.4.
14.2.1.3 Using Generic Batch Queues in an OpenVMS Cluster Environment
You can use generic queues in a OpenVMS Cluster environment to balance
processing resources by distributing batch processing across nodes in
the cluster. (For an explanation of generic queues, see Section 14.1.2.)
Figure 14-3 shows a typical configuration.
Figure 14-3 Batch Queue Configuration with Clusterwide Generic
Queue
In Figure 14-3, a generic clusterwide batch queue named SYS$BATCH
feeds jobs to execution queues on each node in the OpenVMS Cluster
environment. A job submitted to SYS$BATCH is placed in the appropriate
execution queue to minimize the ratio of executing jobs to job limits
for all execution queues fed by SYS$BATCH.
For example, suppose execution queues MOE_BATCH, LARRY_BATCH, and
CURLY_BATCH all have a job limit of 5. If MOE_BATCH and LARRY_BATCH are
executing four jobs and CURLY_BATCH is executing one job, the generic
queue SYS$BATCH feeds the next job to CURLY_BATCH.
Refer to OpenVMS Cluster Systems for more information about OpenVMS Cluster
queue configurations. For information about how to create a generic
queue, see Section 14.4.3.
14.2.2 Designing an Output Queue Environment
Use the following sample configurations to design your output
environment. Your configuration will probably combine elements from
several of these examples.
14.2.2.1 Using a Simple Output Queue Configuration
Figure 14-4 shows a simple queue configuration for limited printing
needs. This configuration is appropriate for a standalone system
supporting a single printer.
Figure 14-4 Simple Output Queue
By default, when a user submits a print job with the PRINT command, the
job is placed in the queue named SYS$PRINT. To set up a single default
printer queue on a standalone system, name the queue SYS$PRINT.
14.2.2.2 Mixing Printers
If you have several different types of printers (for example, an LN03
printer, an LA210 printer, and an LP27 line printer), you must set up a
separate queue for each printer. The options, such as the default form
or device control library, that you use with these queues will probably
differ according to the printer to which the queue's output is sent.
For example, the default form for a line printer might have a width of
132 columns, while the default form for an LN03 printer might have a
width of 80 columns.
Figure 14-5 shows such a configuration.
Figure 14-5 Queue Configuration with Mixed Printers
14.2.2.3 Printing PostScript Files
The operating system does not include software to support PostScript
printing. To print PostScript files, you must have either of the
following equipment:
- A printer capable of printing PostScript files, and supporting
software
- Software that provides PostScript-to-sixel printing, and a
supported printer
For more information, see your Compaq support representative.
14.2.2.4 Using LAT Printers
To share printers among multiple systems or OpenVMS Cluster
environments, you can connect printers to a LAT port on a terminal
server. Figure 14-6 shows an output queue configuration with a
remote printer on a terminal server.
Figure 14-6 Configuration for Remote Printers on a Terminal
Server
Compaq recommends that you set up your LAT queues as autostart queues
with failover lists to ensure that these queues are highly available.
Because LAT printers are usually shared among users of multiple systems
or clusters, many users will be affected if a LAT queue is unavailable.
For information about how to create autostart queues with failover
lists, see Section 14.4.2.
14.2.2.5 Using Generic Output Queues
If you have more than one printer of the same type (for example, if you
have three line printers), use generic queues to balance the print load
among the printers. Figure 14-7 shows such a configuration.
Figure 14-7 Queue Configuration with Three Like Printers and a
Generic Queue
For information about how to create a generic queue, see Section 14.4.3.
14.2.2.6 Using OpenVMS Cluster Queues
Figure 14-8 shows a typical OpenVMS Cluster output queue
configuration. For information about OpenVMS Cluster queue
configurations, refer to OpenVMS Cluster Systems.
Figure 14-8 Output Queue Configuration in an OpenVMS
Cluster
14.2.2.7 Spooling Printers
If your system runs application programs that write output directly to
a printer rather than submit it to an output queue, or if you will be
using LAT queues, spool your printers. Spooling your printers causes
application programs to write output to an intermediate storage device
so that the printer remains available to other users while the program
is running.
Figure 14-9 shows an output configuration with spooled printers.
Figure 14-9 Queue Configuration with Spooled Devices
For more information about spooling printers, see Section 8.8.2.1.
14.2.2.8 Distributing Printing
The OpenVMS batch and print queuing system enables users to print files
on output devices attached to the local system or OpenVMS Cluster
system.
The Distributed Queuing Service (DQS) layered product extends the
printing capabilities of the OpenVMS queuing system to a distributed
environment. DQS enables users to print files on output devices
attached to remote nodes in your network.
For more information, refer to the DQS documentation or your Compaq
support representative.
14.3 Planning Your Queue Setup
You must create queues for users to submit jobs; you must start the
queues so that jobs can begin processing. To set up and start queues,
follow these steps:
Step |
Task |
For More Information |
1
|
Make sure you have started the queue manager and created the queue
database.
|
Section 13.5
|
2
|
If your configuration includes output queues, set up output devices and
create a command procedure to set up the devices on reboot.
|
Section 14.3.1
|
3
|
If you plan to use any queue options, such as forms, characteristics,
and banner pages, determine the qualifiers needed to specify those
options. In addition, define any forms and characteristics you will use
before you create queues. (Because of the length of the instructions
for this step, the corresponding section in the manual follows the
section for step 5.)
|
Section 14.6
|
4
|
Create and start queues.
|
Section 14.4
|
5
|
Create a command procedure to perform the necessary setup tasks each
time your system reboots.
|
Section 14.5
|
14.3.1 Setting Up Output Devices
Before creating output queues, you must set up the devices to which the
queues will direct output.
How to Perform This Task
- Install any printers, plotters, and other output devices to which
your users will have access. For information, refer to the
documentation provided with the hardware.
- If you will use LAT printers, create logical LAT ports. You must
create a logical LAT port on each service node to which a LAT printer
is to be available, and associate the logical port with a physical port
or service on the terminal server node. To do so, use the LATCP
commands CREATE PORT and SET PORT. For more information, refer to the
OpenVMS System Management Utilities Reference Manual.
- Set device characteristics for line printers and printers attached
to terminal ports. To do so, use a series of SET commands. For more
information, see Section 8.8.1. In step 5, you create a command
procedure to set up your devices each time the system reboots. The
commands you enter to set device characteristics must be included in
this command procedure.
- Spool printers. If you use LAT printers, or if you run applications
that write output directly to a printer, spool your printers. For more
information about spooled printers, see Section 14.2.2.7.
To spool a printer, use the SET DEVICE/SPOOLED command, as
explained in Section 8.8.2.1.
- Create a command procedure to set up your device characteristics
and spool printers each time the system reboots. You must include the
commands you entered in steps 3 and 4 in the command procedure.
(Include the commands you entered to set up logical ports in step 2 in
your site-specific LAT startup command procedure
SYS$MANAGER:LAT$SYSTARTUP.COM.)
If your configuration is simple, you can add the commands to
SYSTARTUP_VMS.COM. If your configuration requires a large number of
commands, create a separate command procedure (for example,
DEVICE_SETUP.COM), and execute it from SYSTARTUP_VMS.COM. In the
command procedure, a SET TERMINAL command must precede a SET
DEVICE/SPOOLED command for the same output device.
Example
$ SET PRINTER/TAB/PAGE=66/WIDTH=132/LOWER/FF/NOCR -
_$ /FALLBACK/NOWRAP/NOTAB LPA0:(1)
$ SET TERMINAL/SPEED=9600/PAGE=100/WIDTH=200/DEVICE=LN03/NOBROADCAST -
_$ /NOECHO/HARDCOPY/NOTYPE_AHEAD/NOFORM/NOWRAP/PASTHRU/PERMANENT LTA3331:(2)
$ SET DEVICE/SPOOLED=(LPA0,SYS$SYSDEVICE) LPA0:(3)
$ SET DEVICE/SPOOLED=(LN03_1,SYS$SYSDEVICE) LTA3331:(4)
|
This example performs the following actions:
- Sets parameters for the line printer device
- Sets parameters for the LAT printer device
- Spools device and creates queue called LPA0
- Spools device and creates queue called LN03_1
14.4 Creating and Starting Queues
Create queues in the following order:
- Execution queues
- Generic queues
For detailed instructions on creating and starting queues, see the
following sections:
|