Files-11 - Logical Names

Logical Names

A logical name is a system variable which may reference a disk, directory or file, or contain other program-specific information. For example, the logical SYS$SYSDEVICE contains the system's boot device. A logical name normally refers to a single directory or disk, e.g. SYS$LOGIN: which is the user's login (home) directory (or directories); these logicals cannot be used as true disk names—SYS$LOGIN:FILE is not a valid file specification. However, concealed logical names, defined by DEFINE/TRANSLATION=CONCEALED, can be used in that way; these rooted directories are defined with a trailing "." on the directory specification, hence

$ DEFINE/TRANS=CONCEAL HOME DISK$USERS:

would allow HOME:FILE to be used. More common are simple logicals which point to specific directories associated with some application software which may be located in on any disk or any directory. Hence logical ABC_EXE may point to a directory of executable programs for application ABC and ABC_TEMP may point to a directory of temporary files for that same application and this directory may be on the same disk and in the same directory tree as ABC_EXE or could be somewhere on another disk (and in a different directory tree).

Logical names do not have a close equivalent in POSIX operating systems. They resemble Unix environment variables, except they are expanded by the filesystem, instead of the command shell or application program. They must be defined before use, so it is common for many logical names to be defined in the system startup command file, as well as user login command files.

The closest non-DEC operating system to support the concept of logical names is AmigaOS, through the ASSIGN command. AmigaOS's disk operating system, AmigaDOS, which is a port of TRIPOS, bears some resemblance to DEC operating systems. For example, physical device names follow a pattern like DF0: for the first floppy disk, CDROM2: for the 3rd CD-ROM drive, etc. However, since the system can boot from any attached drive, the operating system creates the SYS: assignment to automatically reference the boot device used. Other assignments, LIBS:, PREFS:, C:, S:, et al. are also made, themselves referenced off SYS:. Users are, of course, allowed to create and destroy their own assignments too.

In VMS, logical names may reference other logical names (up to a predefined nesting limit of 10), and may contain lists of names to search for an existing filename. Some frequently referenced logical names are:

logical name meaning
SYS$INPUT equivalent of standard input, program data source
SYS$OUTPUT equivalent of standard output, program data destination
SYS$ERROR equivalent of standard error, program error message destination
SYS$COMMAND source of batch file (that is, .COM command file) commands
TT the terminal associated with the process
SYS$PRINT the default printer or print queue
SYS$LOGIN home directory for each user
SYS$SCRATCH temporary folder, directory for temporary files
SYS$SYSTEM directory containing most system programs and a few vital data files, such as the system authorization file (accounts and passwords)
SYS$SHARE shared runtime libraries, executables, etc.
SYS$LIBRARY system and added libraries

Read more about this topic:  Files-11

Famous quotes containing the words logical and/or names:

    Opera, next to Gothic architecture, is one of the strangest inventions of Western man. It could not have been foreseen by any logical process.
    Kenneth MacKenzie Clark, Baron of Saltwood (1903–1983)

    Holding myself the humblest of all whose names were before the convention, I feel in especial need of the assistance of all.
    Abraham Lincoln (1809–1865)