OpenVMS Runtime Library
OpenVMS Runtime Library
Features
These RTL procedures perform a wide range of
general-utility operations.
Results returned are same irrespective of which
language calls them.
Uses record management services for file I/O.
Library procedures can be updated without
revising programs that call shared modules.
Organization of the RTL
LIB$ - General purpose procedures
MTH$ - Mathematics procedures
SMG$ - Screen management procedures
STR$ - String manipulation procedures
OTS$ - language independent procedures
BAS$ - BASIC specific support procedures
COB$ - COBOL specific support procedures
FOR$ - FORTRAN specific support procedures
PAS$ - PASCAL specific support procedures
PLI$ - PL/I specific support procedures
RPG$ - RPG specific support procedures
LIB$ some commands
LIB$GETJPI
– The Get Job/Process Information routine provides a simplified interface to the
$GETJPI system service. It provides accounting, status, and identification
information about a specified process.
– LIB$GETJPI obtains only one item of information in a single call.
LIB$SPAWN
– The Spawn Subprocess routine requests the command language interpreter (CLI)
of the calling process to spawn a subprocess for executing CLI commands.
LIB$SPAWN provides the same function as the DCL command SPAWN.
LIB$CONVERT_DATE_STRING
– The Convert Date String to Quadword routine converts an absolute date string
into an OpenVMS internal format date-time quadword. That is, given an input
date/time string of a specified format, LIB$CONVERT_DATE_STRING converts
this string to an OpenVMS internal format time.
SYS$GETJPI vs LIB$GETJPI
The differences among these procedures are as follows:
Example: In document
LIB$SPAWN,
LIB$CONVERT_DATE_STRING
The Spawn Subprocess routine requests the
command language interpreter (CLI) of the
calling process to spawn a subprocess for
executing CLI commands. LIB$SPAWN provides
the same function as the DCL command SPAWN
There are some issues with this RTL call, it is
advised to use the SYS$CREPRC instead
LIB$CONVERT_DATE_STRING document
OpenVMS System Services
Control resources available to processes
Provides for communication between
processes
Perform basic operating system functions
(I/O co-ordination)
Grouping of System services
Security – Provides mechanisms to enhance and control system
security
Event-Flag – clear, set, read event flags can place a process in wait
state pending the setting of these flags
AST – Asynchronous System Traps, these are provided so a process
can control the handling of these interrupts
Logical names – Logical name services provide a generalized
technique for maintaining and accessing character string logical
name and equivalence name pairs
I/O – To provide for input and output operations directly at the
device driver level
Process-control – Create, delete and control execution of processes
Timer and Time conversion – Timer services schedule program
events for a particular time of the day. Time conversion routines
allow you to obtain and format binary time values for use with timer
services
Grouping of System services
Condition handling – Handlers that receive control when
hardware or software exception occurs
Memory management – Give you control over an
application program’s virtual address space.
– Allow an image to increase/decrease the amount of virtual
memory available
– Control the paging and swapping of virtual memory
– Create and access files that contain shareable code and data
Lock management – Makes it possible for co-operating
processes to synchronize access to shared resources.
Security System services
Provides the system manager or
application programmer with security-
based resources of the VMS OS
– Create and maintain a rights database
– Create and translate access-control entries
– Modify a process-rights list
– Check access protection
– Provide a security-erase pattern for disks
– Control access to magnetic tapes
Event-flag system services
Programs can use event flags to perform a
variety of signaling functions.
Each event flag has a unique decimal number,
event-flag arguments in system-service calls
refer to these numbers
Groups of event flags are manipulated by
organizing them into event-flag clusters, each
cluster is made up of 32 flags