HP OpenVMS Systems Documentation

Content starts here

OpenVMS User's Manual


Previous Contents Index

11.9.1 Process Logical Name Directory

The process-private logical names that are created in the process logical name directory table, LNM$PROCESS_DIRECTORY, when you log in are shown in Table 11-2.

Table 11-2 Default Logical Names in Process Logical Name Directory
Name Description
LNM$GROUP Group logical name defined as LNM$GROUP_ gggggg, where gggggg represents your group number. LNM$GROUP_ gggggg 1 is the logical name table used by your UIC group. The table LNM$GROUP_ gggggg is cataloged in the system directory table. Therefore, LNM$GROUP is a logical name that translates iteratively to the name of your group logical name table.
LNM$JOB Job logical name that is defined as LNM$JOB_ xxxxxxxx, where xxxxxxxx 2 represents a number unique to your job tree. LNM$JOB_ xxxxxxxx is the logical name table used by your job. The table LNM$JOB_ xxxxxxxx is cataloged in the system directory table. Therefore, LNM$JOB is a logical name that translates iteratively to the name of your job logical name table.
LNM$PROCESS Process logical name that translates iteratively to LNM$PROCESS_TABLE, which is the name of your process logical name table.
LNM$PROCESS_DIRECTORY Name of your process directory logical name table.

1The string gggggg represents a six-digit octal number containing the process's UIC group number.
2The string xxxxxxxx represents an eight-digit hexadecimal number that is the address of the job information block.

11.9.2 Process Logical Name Table

Every process on the system has a process logical name table named LNM$PROCESS_TABLE. The names in your process table are available only to your process and any subsequent subprocesses. When you log in, the system creates logical names for your process and places them in your process table.

You can reference LNM$PROCESS_TABLE indirectly through the name LNM$PROCESS. This indirect reference enables you to redefine LNM$PROCESS as multiple equivalence names and thus include one or more of your own tables in it, as shown in the following example:


$CREATE/NAME_TABLE APPLICATION_NAMES
$DEFINE/TAB=LNM$PROCESS_DIRECTORY LNM$PROCESS APPLICATION_NAMES,
LNM$PROCESS_TABLE

By default, the process table contains the logical names shown in Table 11-3. Note that the logical names SYS$INPUT, SYS$OUTPUT, SYS$ERROR, and SYS$COMMAND refer to process-permanent files (files that remain open for the life of the process). For more information about process-permanent files, see Section 11.13.

Table 11-3 Default Logical Names in Process Logical Name Table
Name Description
SYS$COMMAND The initial file (usually your terminal) from which DCL reads input. A file from which DCL reads input is called an input stream. The command interpreter uses SYS$COMMAND to "remember" the original input stream.
SYS$DISK The default device established at login or changed by the SET DEFAULT command.
SYS$ERROR The default device or file to which DCL writes system error messages generated by warnings, errors, and severe errors.
SYS$INPUT The default file from which DCL reads input.
SYS$NET The source process that invokes a target process in DECnet for OpenVMS task-to-task communication. When opened by the target process, SYS$NET represents the logical link over which that process can exchange data with its partner. SYS$NET is defined only during task-to-task communication.
SYS$OUTPUT The default file (usually your terminal) to which DCL writes output. A file to which DCL writes output is called an output stream.
TT The default device name for terminals.

11.9.3 System Logical Name Directory

The default system logical names contained in the system directory table, LNM$SYSTEM_DIRECTORY, are shown in Table 11-4.

Table 11-4 Default Logical Names in System Logical Name Directory
Name Description
LNM$CLUSTER Logical name of clusterwide parent table that translates iteratively to LNM$CLUSTER_TABLE.
LNM$DCL_LOGICAL DCL logical name that is defined as LNM$FILE_DEV. LNM$DCL_LOGICAL translates iteratively into the list of logical name tables searched and displayed by the SHOW LOGICAL command, the SHOW TRANSLATION command, and the F$TRNLNM lexical function. By default, these commands search and display the process, job, group, system, and clusterwide system logical name tables, in that order.
LNM$DIRECTORIES Directory logical name that is defined as LNM$PROCESS_DIRECTORY and LNM$SYSTEM_DIRECTORY.
LNM$FILE_DEV Logical name for the search list that is defined as the list of logical name tables searched by the system when processing a file specification. Defined as LNM$PROCESS, LNM$JOB, LNM$GROUP, and LNM$SYSTEM, the system searches the process, job, group, system, and clusterwide system logical name tables, in that order.
LNM$GROUP Group logical name that is defined for your group table, LNM$GROUP_ gggggg. 1
LNM$JOB Job logical name that is defined as LNM$JOB_ xxxxxxxx. 2
LNM$PERMANENT_MAILBOX Permanent mailbox logical name that is defined as LNM$SYSTEM. Logical names associated with permanent mailboxes are entered in the logical name table to which the logical name LNM$PERMANENT_MAILBOX iteratively translates.
LNM$SYSCLUSTER Logical name for the clusterwide system logical name table that translates iteratively to LNM$SYSCLUSTER_TABLE.
LNM$SYSTEM System logical name table name that translates iteratively to LNM$SYSTEM_TABLE, LNM$SYSCLUSTER.
LNM$TEMPORARY_MAILBOX Temporary mailbox logical name that is defined as LNM$JOB. Logical names associated with temporary mailboxes are entered in the logical name table to which the logical name LNM$TEMPORARY_MAILBOX iteratively translates.

1The string gggggg represents a six-digit octal number containing the process's UIC group number.
2The string xxxxxxxx represents an eight-digit hexadecimal number that is the address of the job information block.

11.9.4 Shareable Logical Name Tables

This section describes the default shareable logical name tables:

  • Clusterwide system table
  • Clusterwide parent table
  • Group table
  • Job table
  • System table

Clusterwide System Table, LNM$SYSCLUSTER_TABLE

LNM$SYSCLUSTER_TABLE is the name of the clusterwide system logical name table. This table contains logical names that are available to all users of the cluster.

You can reference LNM$SYSCLUSTER_TABLE indirectly through the name LNM$SYSCLUSTER. An indirect reference allows you to redefine LNM$SYSCLUSTER as multiple equivalence names and thus include your own tables in it.

Clusterwide Parent Table, LNM$CLUSTER_TABLE

LNM$CLUSTER_TABLE is the parent table for all clusterwide logical name tables, including LNM$SYSCLUSTER_TABLE. Use the logical name LNM$CLUSTER to refer to it.

Group Table, LNM$GROUP_gggggg

The name for your group table is LNM$GROUP_gggggg (gggggg represents your user identification code [UIC] group number). The names in this table are available to all users with the same UIC group number. Every group on the system has a corresponding group logical name table.

You can reference LNM$GROUP_gggggg indirectly through the name LNM$GROUP. An indirect reference allows you to redefine LNM$GROUP_gggggg as multiple equivalence names and thus include your own tables in it. It also eliminates the need to remember your UIC group number and ensures that you are using the most recently defined table.

Job Table, LNM$JOB_xxxxxxxx

The name for your job table is LNM$JOB_xxxxxxxx (xxxxxxxx represents the job information block [JIB] address defined by the system for your job tree).

Your job table contains logical names that are available to all processes in your job tree---your process and any of your subprocesses. There is one job table for each job tree in the system. A job table is shareable so that all processes in a job tree can access it.

You can reference LNM$JOB_xxxxxxxx indirectly through the name LNM$JOB. This indirect reference allows you to redefine LNM$JOB as multiple equivalence names and thus include your own tables in it. Furthermore, by using LNM$JOB, you do not have to locate the JIB address, and you can be sure that you are using the most recently defined job table.

The system places logical names created for mounted disks, mounted tapes, and temporary mailboxes in the job logical name table. In addition, the system creates the following logical names:

  • SYS$LOGIN
    Your default device and directory when you log in.
  • SYS$LOGIN_DEVICE
    Your default device when you log in.
  • SYS$REM_ID
    For jobs initiated through a DECnet for OpenVMS network connection, the identification of the process on the remote node from which the job was originated. On an OpenVMS operating system, if proxy logins are enabled, this identification is the process's user name; if proxy logins are not enabled, this is the process identification (PID) number.
    (Proxy logins to proxy accounts allow users to access files across the network without specifying an access control string.)
  • SYS$REM_NODE
    For jobs initiated through a DECnet for OpenVMS network connection, the name of the remote node from which the job was originated.
  • SYS$SCRATCH
    Default device and directory to which temporary files are written.

System Table, LNM$SYSTEM_TABLE

The name of the system table is LNM$SYSTEM_TABLE. The system table contains logical names that are available to all users of the system at the system level.

The system table is usually referred to indirectly through LNM$SYSTEM, which is defined as the search list LNM$SYSTEM_TABLE, LNM$SYSCLUSTER. Use the name LNM$SYSTEM to include system names local to this node and system names common to all nodes on the cluster.

The logical names that are automatically defined in the system table when the system starts up are shown in Table 11-5.

Table 11-5 Default Logical Names in System Logical Name Table
Name Description Default Address
DBG$INPUT Default input stream for the OpenVMS Debugger, equated to SYS$INPUT at the process level Not applicable
DBG$OUTPUT Default output stream for the OpenVMS Debugger, equated to SYS$OUTPUT at the process level Not applicable
SYS$COMMON Device and directory name for the common part of SYS$SYSROOT SYS$SYSDEVICE:[SYS n.SYSCOMMON.], where n is the root directory number of your processor
SYS$ERRORLOG Device and directory name of error log data files SYS$SYSROOT:[SYSERR]
SYS$EXAMPLES Device and directory name of system examples SYS$SYSROOT:[SYSHLP.EXAMPLES]
SYS$HELP Device and directory name of system help files SYS$SYSROOT:[SYSHLP]
SYS$INSTRUCTION Device and directory name of system instruction data files SYS$SYSROOT:[SYSCBI]
SYS$LIBRARY Device and directory name of system libraries SYS$SYSROOT:[SYSLIB]
SYS$LOADABLE_IMAGES Device and directory of operating system executive loadable images, device drivers, and other executive-loaded code SYS$SYSROOT:[SYS$LDR]
SYS$MAINTENANCE Device and directory name of system maintenance files SYS$SYSROOT:[SYSMAINT]
SYS$MANAGER Device and directory name of system manager files SYS$SYSROOT:[SYSMGR]
SYS$MESSAGE Device and directory name of system message files SYS$SYSROOT:[SYSMSG]
SYS$NODE Network node name for the local system if DECnet for OpenVMS is active on the system and you are connected to a network Not applicable
SYS$PROCDMP Directory (set by user) into which image dumps are to be written No default setting
SYS$SHARE Device and directory name of system shareable images SYS$SYSROOT:[SYSLIB]
SYS$SPECIFIC Device and directory name for node-specific part of SYS$SYSDEVICE SYS$SYSDEVICE:[SYS n.], where n is the root directory number of your processor
SYS$STARTUP Device and directory name of system startup files A search list that points first to SYS$SYSROOT:[SYS$STARTUP] and then to SYS$MANAGER
SYS$SYSDEVICE System disk containing system directories Usually SYS$DISK
SYS$SYSROOT Device and root directory for system directories A search list that points first to SYS$SYSDEVICE:[SYS n.], where n is the root directory number of your processor, and then points to SYS$COMMON
SYS$SYSTEM Device and directory of operating system programs and procedures SYS$SYSROOT:[SYSEXE]
SYS$TEST Device and directory name of User Environment Test Package (UETP) files SYS$SYSROOT:[SYSTEST]
SYS$UPDATE Device and directory name of system update files SYS$SYSROOT:[SYSUPD]

11.9.5 Default Protection of Shareable Logical Name Tables

The shareable logical name tables provided by the operating system are created with default protection. The default protection for each type of shareable logical name table is shown in Table 11-6.

Table 11-6 Default Protection of Shareable Logical Name Tables
Table Type Table Name Default Protection
Job Table LNM$JOB_ xxxxxxxx 1 SYSTEM=RWCD, OWNER=RWCD, GROUP=NO ACCESS, WORLD=NO ACCESS
Group Table LNM$GROUP_ gggggg 2 SYSTEM=RWCD, OWNER=R, GROUP=R, WORLD=NO ACCESS
System Table LNM$SYSTEM_TABLE SYSTEM=RWC, OWNER=RWC, GROUP=R, WORLD=R
Clusterwide System Table LNM$SYSCLUSTER_TABLE SYSTEM=RWC, OWNER=RWC, GROUP=R, WORLD=R
Clusterwide Parent Table LNM$CLUSTER_TABLE SYSTEM=RWC, OWNER=RWC, GROUP=R, WORLD=R
User-Created Table User Specified SYSTEM=RWCD, OWNER=RWCD, GROUP=NO ACCESS, WORLD=NO ACCESS

1The string xxxxxxxx represents an eight-digit hexadecimal number that is the address of the job information block.
2The string gggggg represents a six-digit octal number containing the process's UIC group number.

11.9.6 Privilege and Access Requirements for Managing Shareable Logical Names

Table 11-7 shows the privileges and access rights that are required to create, delete, and read (translate) logical names in each type of shareable logical name table. For more information about privileges, access types, and access control, see Chapter 10 in this manual.

Table 11-7 Privilege or Access Type Required for Shareable Logical Name Tasks
Table Where Name Resides Table Name Task Privilege or Access Type Required
Job Table LNM$JOB_ xxxxxxxx 1 Create or delete logical name WRITE (W) access to the table where the name will be created, or from where it will be deleted
    Read (translate) logical name READ (R) access to the table where the name resides
Group Table LNM$GROUP_ gggggg 2 Create or delete logical name WRITE (W) access to the table where the name will be created, or from where it will be deleted, or GRPNAM privilege
    Read (translate) logical name READ (R) access to the table where the name resides
System Table LNM$SYSTEM_TABLE Create or delete logical name System UIC group number (between 0 and the value of system parameter MAXSYSGROUP), or SYSNAM privilege
    Read (translate) logical name READ (R) access to the table where the name resides
Clusterwide System Table LNM$SYSCLUSTER_TABLE Create or delete logical name System UIC group number (between 0 and the value of system parameter MAXSYSGROUP), or SYSNAM privilege
    Read (translate) logical name READ (R) access to the table where the name resides
Clusterwide Parent Table LNM$CLUSTER_TABLE Create or delete logical name System UIC group number (between 0 and the value of system parameter MAXSYSGROUP)
    Read (translate) logical name READ (R) access to the table where the name resides
User-created Table User Specified Create or delete logical name WRITE (W) access to the table where the name will be created, or from where it will be deleted
    Read (translate) logical name READ (R) access to the table where the name resides

1The string xxxxxxxx represents an eight-digit hexadecimal number that is the address of the job information block.
2The string gggggg represents a six-digit octal number containing the process's UIC group number.


Previous Next Contents Index