HP OpenVMS Systems Documentation

Content starts here

OpenVMS DCL Dictionary


Previous Contents Index


SET PRINTER

Establishes the characteristics of a specific line printer. The default values listed for qualifiers to the SET PRINTER command are the defaults for an initially bootstrapped system.

Requires OPER (operator) privilege. If the printer is a spooled device, LOG_IO (logical I/O) privilege is required to modify its characteristics.


Format

SET PRINTER printer-name[:]


Parameter

printer-name[:]

Specifies the name of a line printer to set or modify its characteristics.

Qualifiers

/CR

/NOCR (default)

Controls whether the printer driver outputs a carriage return character. Use this qualifier for printers on which line feeds do not imply carriage returns.

Specify the /NOCR qualifier for printers where the line feed, form feed, vertical feed, and carriage return characters empty the printer buffer. The /NOCR qualifier causes carriage return characters to be held back and output only if the next character is not a form feed or vertical tab. Carriage return characters are always output on devices that have the carriage return function characteristic set.

/FALLBACK

/NOFALLBACK (default)

Determines whether the printer attempts to translate characters belonging to the DEC Multinational character set into 7-bit equivalent representations. If a character cannot be translated, an underscore (_) character is substituted.

If the /PASSALL qualifier is in effect, it has precedence over the /FALLBACK qualifier.

/FF (default)

/NOFF

Indicates whether the printer performs a mechanical form feed. Use the /NOFF qualifier when the printer does not automatically perform mechanical form feeds. This qualifier allows the driver to convert form feeds into multiple line feeds and to output them.

/LA11

Specifies the printer as an LA11. This qualifier provides information for the SHOW PRINTER command, which, in turn, provides the user with information about specific printers. If no printer type is specified, LP11 is assumed.

/LA180

Specifies the printer as an LA180. This qualifier provides information for the SHOW PRINTER command, which, in turn, provides the user with information about specific printers. If no printer type is specified, LP11 is assumed.

/LOG

/NOLOG (default)

Determines whether information confirming the printer setting is displayed at the terminal from which the SET PRINTER command was entered.

/LOWERCASE

/NOLOWERCASE

Indicates whether the printer prints both uppercase and lowercase letters or only uppercase. When the operator specifies the /NOLOWERCASE qualifier, all letters are translated to uppercase.

The /[NO]LOWERCASE and /[NO]UPPERCASE qualifiers are complementary; that is, the /LOWERCASE qualifier is equivalent to the /NOUPPERCASE qualifier, and the /NOLOWERCASE qualifier is equivalent to the /UPPERCASE qualifier.

/LP11 (default)

Specifies the printer as an LP11. This qualifier provides information for the SHOW PRINTER command, which, in turn, provides the user with information about specific printers. LP11 is the default printer type.

/PAGE=lines-per-page

Establishes the number of lines per page on the currently installed form; the number of lines can range from 1 to 255 and defaults to 64. The printer driver uses this value to determine the number of line feeds that must be entered to simulate a form feed.

/PASSALL

/NOPASSALL (default)

Controls whether the system interprets special characters or passes them as 8-bit binary data.

If you specify the /PASSALL qualifier, the printer driver does not expand tab characters to spaces, fill carriage return or line feed characters, or recognize control characters.

/POLLED

/NOPOLLED (default)

Instructs the LRDRIVER to run in polled mode instead of interrupt mode.

In polled mode, the printer is checked on a regular basis to determine if it is ready to receive additional data. The polling timer runs only while there is more data to be sent to the printer.

/PRINTALL

/NOPRINTALL (default)

Controls whether the line printer driver outputs printable 8-bit multinational characters.

/RESET

Resets the USB pipe associated with the USB printer, thereby canceling all print jobs.

/TAB

/NOTAB (default)

Controls how the printer handles TAB characters. The /NOTAB qualifier expands all tab characters to spaces and assumes tab stops at 8-character intervals.

Use the /TAB qualifier when you do not want the system to convert tabs to spaces, but want the printer to process the tab characters. The OpenVMS system requires that printers expand tabs at 8-character intervals.

/TRUNCATE (default)

/NOTRUNCATE

Controls whether the printer truncates data exceeding the value specified by the /WIDTH qualifier. Note that the /TRUNCATE and /WRAP qualifiers are incompatible.

/UNKNOWN

Specifies the printer as nonstandard. This qualifier provides information for the SHOW PRINTER command, which, in turn, provides the user with information about specific printers. If no printer type qualifier is specified, LP11 is assumed.

/UPPERCASE

/NOUPPERCASE

Indicates whether the printer prints both uppercase and lowercase letters or only uppercase ones. When you specify the /UPPERCASE qualifier, all letters are translated to uppercase.

The /[NO]UPPERCASE and /[NO]LOWERCASE qualifiers are complementary; that is, the /UPPERCASE qualifier is equivalent to the /NOLOWERCASE qualifier, and the /NOUPPERCASE qualifier is equivalent to the /LOWERCASE qualifier.

/WIDTH=n

Establishes the number of characters per output line on currently installed forms. The width, n, can range from 0 to 65535 for LP11 controllers, and from 0 to 255 for DMF32 controllers. The default value is 132 characters per line.

/WRAP

/NOWRAP (default)

Controls whether the printer generates a carriage return and a line feed when it reaches the end of a line.

If the /NOWRAP qualifier is specified, the printer writes characters out in the last position on the line.

If the /WRAP qualifier is specified, the terminal generates a carriage return and a line feed whenever the end of a line is reached.

Note that the /TRUNCATE and /WRAP qualifiers are incompatible.


Examples

#1

$ SET PRINTER/PAGE=60/WIDTH=80  LPA0:
      

The SET PRINTER command in this example establishes the size of an output page as 60 lines and the width of a line as 80 characters for printer LPA0.

#2

$ SET PRINTER/LA11  LPB0:
      

The SET PRINTER command in this example establishes the line printer LPB0 as an LA11 printer.

#3

$ SET PRINTER/LOWERCASE LPA0:
      

The SET PRINTER command in this example requests that lowercase printing be enabled on line printer LPA0.


SET PROCESS

Changes the execution characteristics associated with the specified process or kernel thread for the current terminal session or job. If no process is specified, changes are made to the current process.

Requires GROUP privilege to change other processes in the same group. Requires WORLD privilege to change processes outside your group.


Format

SET PROCESS [process-name]


Parameter

process-name

Requires that you own the process or that you have GROUP privilege and that the process is in your group.

Specifies the name of the process for which the characteristics are to be changed. Process names can be up to 23 alphanumeric characters long in the following format:


[node-name::]process-name

  • The node name can have as many as 6 alphanumeric characters.
  • The colons (:) count for 2 characters.
  • The process name can have as many as 15 characters.

A local process name can look like a remote process name; therefore, if you specify ATHENS::SMITH, the system checks for a process named ATHENS::SMITH on the local node before checking node ATHENS for a process named SMITH.

The default process is the current process.

Process names are unique only within a particular UIC group. You cannot specify the process name for a process outside of your group. To change the characteristics of a process outside of your group, you must use the qualifier /IDENTIFICATION=pid. The process name parameter is ignored. If you include neither the process name nor the /IDENTIFICATION qualifier, the current process is assumed.


Qualifiers

/AFFINITY (Alpha only)

/NOAFFINITY

Allows bits in the kernel thread affinity mask to be set or cleared individually, in groups, or all at once. This qualifier is mutually exclusive with the /CAPABILITY qualifier.

Note

The SET PROCESS/[NO]AFFINITY command fails if none of the specified CPUs has the capabilities required by the process.

The /NOAFFINITY qualifier clears all affinity bits currently set in the current or permanent affinity masks, based on the setting of the /PERMANENT qualifier. Specifying the /AFFINITY qualifier has no direct effect, but merely indicates the target of the operations specified by the following secondary parameters:

/SET=( n[,...]) Sets affinity for currently active CPUs defined by the CPU IDs n, where n has the range of 0 to 31.
/CLEAR=( n[,...]) Clears affinity for currently active CPUs defined by the position values n, where n has the range of 0 to 31.
/PERMANENT Performs the operation on the permanent affinity mask as well as the current affinity mask, making the changes valid for the life of the kernel thread. (The default behavior is to affect only the affinity mask for the running image.)

The secondary qualifiers can all be used at once as long as the affinity bits defined in the /SET and /CLEAR parameters do not overlap.

The privileges required to execute the SET PROCESS/AFFINITY command match those required by the $PROCESS_AFFINITY system service. ALTPRI is the base privilege required to make any modifications, and the only privilege required to modify the current owner's kernel thread. Modifications within the same UIC group require GROUP privilege. Modifications to any unrelated kernel thread require WORLD privilege.

As with the other SET PROCESS qualifiers, the bit operations occur on the current process if no /IDENTIFICATION qualifier or explicit process name parameter is specified. Specifying a process name does not imply that all kernel threads associated with the process are affected; the SET PROCESS command affects only the initial kernel thread of a multithreaded process.

/AUTO_UNSHELVE

/NOAUTO_UNSHELVE

Controls whether the process automatically unshelves files.

/CAPABILITY

/NOCAPABILITY

Allows bits in the process user capability mask to be set or cleared individually, in groups, or all at once. This qualifier is mutually exclusive with the /AFFINITY qualifier.

Note

The SET PROCESS/[NO]CAPABILITY command fails if there is no CPU with the required set of capabilities.

The /NOCAPABILITY qualifier clears all user capability bits currently set in the current or permanent capability masks, based on the setting of the /PERMANENT qualifier. Specifying the /CAPABILITY qualifier has no direct effect, but merely indicates the target of the operations specified by the following secondary qualifiers:

/SET=( n[,...]) Sets all user capabilities defined by the position values n, where n has the range of 1 to 16.
/CLEAR=( n[,...]) Clears all user capabilities defined by the position values n, where n has the range of 1 to 16.
/PERMANENT Performs the operation on the permanent user capability mask as well as the current user capability mask, making the changes valid for the life of the kernel thread. (The default behavior is to affect only the capabilities mask for the running image.)

The secondary qualifiers can all be used at once as long as the user capability bits defined in the /SET and /CLEAR parameters do not overlap.

The privileges required to execute the SET PROCESS/CAPABILITY command match those required by the $PROCESS_CAPABILITIES system service. ALTPRI is the base privilege required to make any modifications, and the only privilege required to modify the current owner's kernel thread. Modifications within the same UIC group require GROUP privilege. Modifications to any unrelated kernel thread require WORLD privilege.

As with the other SET PROCESS qualifiers, the bit operations occur on the current process if no /IDENTIFICATION qualifier or explicit process name parameter is specified. Specifying a process name does not imply that all kernel threads associated with the process are affected; the SET PROCESS command affects only the initial kernel thread of a multithreaded process.

/CLEAR=(n[,...])

Clears all user capabilities or CPU affinities defined by the position values n specified by the /CAPABILITY or the /AFFINITY qualifier.

/DUMP[=NOW] [/ID=pid] [process-name]

/NODUMP (default)

Causes the contents of the address space to be written to the file named SYS$LOGIN:(image-name).DMP (where the image name is the same as the file name) when an image terminates due to an unhandled error. To specify a target process, indicate either the process ID or the process name.

Using the NOW option causes the targeted process to dump as soon as possible. This is especially useful for hung processes.

You can then analyze the dump with the ANALYZE/PROCESS_DUMP utility, the Debugger, or the System Dump Analyzer (SDA).

/GLOBAL

Modifies the global cell SCH$GL_DEFAULT_PROCESS_CAP. This global cell is used to initialize the user capability mask of processes when they are started.

/IDENTIFICATION=pid

Requires GROUP or WORLD privilege for processes other than your own.

Specifies the process identification (PID) value of the kernel thread for which characteristics are to be changed. The /IDENTIFICATION qualifier overrides the process-name parameter.

The PID is assigned by the system when the process is created. When you specify a PID, you can omit the leading zeros.

If you use the /IDENTIFICATION qualifier, the process-name parameter is ignored.

Note

The /IDENTIFICATION qualifier allows the SET PROCESS command to affect individual kernel thread PIDs; because each thread is a separate runnable entity, this command treats them as discrete entities in terms of affinities and capabilities.

/NAME=string

Changes the name of the current process to a string of 1 to 15 characters.

/PARSE_STYLE=(keyword)

Allows a user to indicate how commands are to be parsed.

Setting a particular parse style tells DCL how it should handle command syntax. User programs can also examine the state of this setting if they need to use different parse rules.

The valid keywords for this qualifier are TRADITIONAL and EXTENDED. These keywords are mutually exclusive and cannot be negated.

If the /PARSE_STYLE qualifier is not specified, the default is the TRADITIONAL format.

Keyword Explanation
TRADITIONAL (default) Indicates that commands should be examined using the former (prior to Version 7.2) rules for DCL syntax.
EXTENDED (Alpha only) Indicates that commands should be examined using a syntax that allows ODS-5 file specifications.

The main differences for DCL when EXTENDED parse rules are in effect are:

  • Arguments to foreign commands are case preserved. You can get the command string by calling LIB$GET_FOREIGN. Note that at this time, C/C++ programs which use the argc/argv mechanism still have unquoted arguments in lowercase.
  • Some characters that were previously treated as token delimiters are no longer delimiters. The pound sign (#), circumflex (^), and question mark (?) fall into this category.
  • A circumflex (^) is an escape character, which can be used to indicate that the next character in the command string is to be treated as if it were quoted, thereby losing its syntactic significance.

EXTENDED parsing also modifies DCL's rules for file specifications, that is, any item with a $FILE type in a Command Definition Language (.CLD) file:

  • File specifications will not be in uppercase.
  • Any number of commas (,) may be placed between directory delimiters ([] and <>).
  • Directory file ID's (DIDs) can be included in the file specification.
  • Any number of periods (.) or semi-colons (;) may be included in the file specification.

Refer to the OpenVMS Guide to Extended File Specifications for more information.

/PERMANENT

Performs the operation on the permanent affinity or capability mask as well as the current mask, making the changes valid for the life of the kernel thread. (The default behavior is to affect the current mask only for the running image.) The /PERMANENT qualifier is only valid in conjunction with the /CAPABILITY or the /AFFINITY qualifier.

/PRIORITY=n

Requires ALTPRI (alter priority) privilege to set the priority higher than the base priority of the specified process.

Changes the priority for the specified kernel thread. If you do not have the ALTPRI privilege, the value you specify is compared to your current base priority, and the lower value is always used.

/PRIVILEGES=(privilege[,...])

Requires SETPRV (set privilege) privilege as an authorized privilege to enable any privilege you do not have in your authorized privilege mask.

Enables the following process privileges:

ACNT ALLSPOOL ALTPRI AUDIT
BUGCHK BYPASS CMEXEC CMKRNL
DETACH DIAGNOSE DOWNGRADE EXQUOTA
GROUP GRPNAM GRPPRV IMPORT
LOG_IO MOUNT NETMBX OPER
PFNMAP PHY_IO PRMCEB PRMGBL
PRMMBX PSWAPM READALL SECURITY
SETPRV SHARE SHMEM SYSGBL
SYSLCK SYSNAM SYSPRV TMPMBX
UPGRADE VOLPRO WORLD  

Use the SHOW PROCESS/PRIVILEGES command to determine what authorized privileges are enabled currently.

/RAD=HOME=n

Changes the home resource affinity domain (RAD) of a process.

This command only works on the current process.

Note that OpenVMS application support for resource affinity domains (RADs) is supported only on AlphaServer GS160 systems.

/RESOURCE_WAIT

/NORESOURCE_WAIT

Enables resource wait mode so that the process waits for resources to become available. If you specify the /NORESOURCE_WAIT qualifier, the process receives an error status code when system dynamic memory is not available or when the process exceeds one of the following resource quotas: direct I/O limit, buffered I/O limit, or buffered I/O byte count (buffer space) quota.

Caution

Disabling resource waiting should be performed with caution, as doing so can have unexpected effects on constituent sharable images and runtime libraries. Refer to the $SETRWM service in the OpenVMS System Services Reference Manual for additional information.

/RESUME

Allows a process suspended by a previous SET PROCESS/SUSPEND command to resume operation. The /RESUME qualifier is equivalent to the /NOSUSPEND qualifier.

/SCHEDULING_CLASS="class_name"

/NOSCHEDULING_CLASS

Adds a process to, or removes a process from, a scheduling class. This command does not modify the permanent class scheduling database file. Therefore, the effect of this command can be viewed as temporary placement into, or removal from, a scheduling class.

/SET=(n[,...])

Sets all user capabilities or CPU affinities defined by the position values n specified by the /CAPABILITY or the /AFFINITY qualifier.

/SUSPEND[=SUPERVISOR]

/SUSPEND=KERNEL

/NOSUSPEND

Requires privileges as described in text.

Temporarily stops the process's activities. The process remains suspended until another process resumes or deletes it. Use the qualifiers /NOSUSPEND and /RESUME to resume a suspended process.

Specify either of the following keywords with the /SUSPEND qualifier to produce different results:

Keyword Result
SUPERVISOR (default) Specifies that the named process is to be suspended to allow the delivery of asynchronous system traps (ASTs) at EXEC or KERNEL mode. Specifying this keyword is optional.
KERNEL Specifies that the named process is to be suspended such that no ASTs can be delivered. To specify the KERNEL keyword, you must be in either KERNEL mode or EXEC mode, or have CMKRNL (change mode to kernel) and CMEXEC (change mode to executive) privilege enabled. Note that this was the default behavior of the SET PROCESS/SUSPEND command for versions of OpenVMS prior to VMS Version 5.0.

Depending on the operation, the process from which you specify the /SUSPEND qualifier requires privileges. You must have GROUP privilege to suspend another process in the same group, unless that process has the same user identification code (UIC). You must have WORLD privilege to suspend any other process in the system.

When you enter the SET PROCESS/SUSPEND=KERNEL/ID= command in a cluster environment, the KERNEL keyword is ignored if the target process and the current process reside on different cluster nodes. As a result, process suspension is handled as if you had specified the SUPERVISOR keyword (the default).

Note that you can specify SET PROCESS/SUSPEND=KERNEL to override a previous SET PROCESS/SUSPEND=SUPERVISOR. SET PROCESS/SUSPEND=SUPERVISOR does not, however, override SET PROCESS/SUSPEND=KERNEL.

/SWAPPING (default)

/NOSWAPPING

Requires the PSWAPM (process swap) privilege to disable swapping for your process.

Permits the process to be swapped. By default, a process that is not currently executing can be removed from physical memory so that other processes can execute. If you specify the /NOSWAPPING qualifier, the process is not swapped out of the balance set when it is in a wait state.


Examples

#1

$ SET PROCESS/PRIVILEGE=EXQUOTA
      

The SET PROCESS command in this example assigns the current process the privilege of exceeding quotas.

#2

$ SET PROCESS/NORESOURCE_WAIT
      

The SET PROCESS command in this example disables resource wait mode for the current process.

#3

$ RUN/PROCESS_NAME=TESTER  CALC
%RUN-S-PROC_ID, identification of created process is 0005002F
$ SET PROCESS/PRIORITY=10  TESTER
      

The RUN command in this example creates a subprocess and gives it the name TESTER. Subsequently, the SET PROCESS/PRIORITY command assigns the subprocess a priority of 10.

#4

$ SHOW PROCESS/SUBPROCESS
19-APR-2001 15:17:28.41  User: DAVIS Process ID:   31900218
                         Node: OCALA  Process name: "DAVIS"

Processes in this tree:
DAVIS *
  DAVIS_1
  DAVIS_2
$ SET PROCESS/SUSPEND DAVIS_1
$

      

The SET PROCESS/SUSPEND command in this example suspends the process DAVIS_1 such that ASTs can be delivered to it. Because no keyword was specified, the /SUSPEND=SUPERVISOR version is assumed.

#5

$ SHOW PROCESS/SUBPROCESS OCALA::TESTA
19-APR-2001 12:17:24.45   User: TESTA    Process ID:   31400208
                          Node: OCALA    Process name:  "TESTA"

Processes in this tree:
TESTA *
  TESTA_1
  TESTA_2
$ SET PROCESS OCALA::TESTA_2 /SUSPEND=KERNEL
$

      

The SET PROCESS/SUSPEND=KERNEL command in this example suspends the process TESTA_2 on node OCALA such that no ASTs can be delivered to it.

#6

$ SET PROCESS CPUSCHED/AFFINITY/SET=1/PERMANENT
$ SET PROCESS CPUSCHED/CAPABILITY/SET=8/PERMANENT
$ SHOW CPU/FULL

COBRA7, a DEC 4000 Model 620
Multiprocessing is ENABLED. Streamlined synchronization image loaded.
Minimum multiprocessing revision levels: CPU = 1
System Page Size = 8192
System Revision Code =
System Serial Number =
Default CPU Capabilities:
        System:         QUORUM RUN
Default Process Capabilities:
        System:         QUORUM RUN
PRIMARY CPU = 00
CPU 00 is in RUN state
Current Process: *** None ***
Serial Number:  AY24870417
Revision:       A200
VAX floating point operations supported.
IEEE floating point operations and data types supported.
Processor is Primary Eligible.
PALCODE: Revision Code = 5.48
         PALcode Compatibility = 0
         Maximum Shared Processors = 2
         Memory Space:  Physical address = 00000000 00000000
                        Length = 0
         Scratch Space: Physical address = 00000000 00000000
                        Length = 0
Capabilities of this CPU:
      System:           PRIMARY QUORUM RUN
      User bitmask:     00000040
Processes which can only execute on this CPU:
      NETACP       PID = 0000008E      Reason: PRIMARY Capability
CPU 01 is in RUN state
Current Process: CPUSCHED        PID = 00000095
Serial Number:  AY24870406
Revision:       A200
VAX floating point operations supported.
IEEE floating point operations and data types supported.
PALCODE: Revision Code = 5.48
         PALcode Compatibility = 0
         Maximum Shared Processors = 2
         Memory Space:  Physical address = 00000000 00000000
                        Length = 0
         Scratch Space: Physical address = 00000000 00000000
                        Length = 0
Capabilities of this CPU:
      System:           QUORUM RUN
      User bitmask:     00000080
Processes which can only execute on this CPU:
      CPUSCHED   PID = 00000095 Reason: Affinitized to this CPU
                                Reason: User capabilities - 00000080)
$ SET PROCESS/NOAFFINITY/PERMANENT
$ SET PROCESS/NOCAPABILITY/PERMANENT
$ SHOW CPU/FULL

COBRA7, a DEC 4000 Model 620
Multiprocessing is ENABLED. Streamlined synchronization image loaded.
Minimum multiprocessing revision levels: CPU = 1
System Page Size = 8192
System Revision Code =
System Serial Number =
Default CPU Capabilities:
        System:         QUORUM RUN
Default Process Capabilities:
        System:         QUORUM RUN
CPU 00 is in RUN state
Current Process: *** None ***
Serial Number:  AY24870417
Revision:       A200
VAX floating point operations supported.
IEEE floating point operations and data types supported.
Processor is Primary Eligible.
PALCODE: Revision Code = 5.48
         PALcode Compatibility = 0
         Maximum Shared Processors = 2
         Memory Space:  Physical address = 00000000 00000000
                        Length = 0
         Scratch Space: Physical address = 00000000 00000000
                        Length = 0
Capabilities of this CPU:
        System:         PRIMARY QUORUM RUN
        User bitmask:   00000040
Processes which can only execute on this CPU:
        NETACP           PID = 0000008E  Reason: PRIMARY Capability
CPU 01 is in RUN state
Current Process: CPUSCHED        PID = 00000095
Serial Number:  AY24870406
Revision:       A200
VAX floating point operations supported.
IEEE floating point operations and data types supported.
PALCODE: Revision Code = 5.48
         PALcode Compatibility = 0
         Maximum Shared Processors = 2
         Memory Space:  Physical address = 00000000 00000000
                        Length = 0
         Scratch Space: Physical address = 00000000 00000000
                        Length = 0
Capabilities of this CPU:
        System:         QUORUM RUN
        User bitmask:   00000080
Processes which can only execute on this CPU:
        *** None ***

      


Previous Next Contents Index