BS2000 provides a variety of interfaces for determining the current system time: GTIME, GDATE, GETOD. Runtime routines coded in high-level languages with analog semantics make use of the interfaces accordingly.
GTIME provides the system time (local time and UTC time) in binary, ISO4 and TODR/TODX format. It should be noted that the system time in TODR format is different from any simultaneously determined STCK value because of the TODR correction values.
The server for the long-term, guaranteed GTIME interface is implemented as a BS2000 OSD/BC component and as a nonprivileged TU GET-TIME subsystem in order to provide SVC-free, high-performance processing in the event of calls from TU. For the provision of the system time in TODR format, the GTIME call from TU has a path length of less than 200 commands. The use of TASKDATE (see "TASKDATE: testing in simulated time") or the determination of the XCS time (see "Synchronization in an XCS network") results in processing in the TPR. The subsystem still contains the server for CTIME, the macro interface for arithmetic processing with time stamps and for the conversion of time stamps in terms of format and time base. The basic data for the two services (TODR correction values, data relating to an active synchronization operation as well as summer time/winter time changeover points) is stored in the system address space for the operating system module and in TU write-protected form in the subsystem.
The GET-TIME subsystem is mandatory, is started automatically before “System Ready” and is present in two versions controlled via the explicit selection of one of the four supplied subsystem catalogs:
loaded below the 16-Mb boundary (default) if XS-incompatible programs are used in the system
loaded above the 16-Mb boundary (to reduce the load on this lower address space) if only XS-compatible programs use the subsystem
In addition to the GET-TIME subsystem, the GET-TIMX subsystem which is used only within the operating system also exists on SU x86.
GET-TIME startup parameters
The startup parameter file contains a section for GET-TIME (GTIME parameter record). This describes the following information for one or more time zones:
information about the time zone (i.e. difference from UTC time)
summer time information (difference between summer time and winter time, elapsed and future time changeover points)
This information is needed for
time conversions from local time / UTC time (and vice versa) for any time stamps thanks to the CTIME function. The more time changeover points there are available, the greater is the time range in which CTIME can perform precise conversion of local time / UTC.
identification of summer time / winter time on startup
conversion of the system time on the next summer time / winter time change
On SU /390 the time zone of the server location should be set by means of an SVP frame. On SU x86 this information is known in the carrier system. The startup routine ascertains this date and uses it to select the corresponding time zone parameter section with priority.
For more information on the GTIME startup parameter, and in particular on the scope of the provided time changeover points, see section “System time control (GTIME)”.