Guardian Application Conversion Guide

Converting Basic Elements of a TAL Program
Converting TAL Applications
096047 Tandem Computers Incorporated 3–7
Declaring Process Identifiers
Your existing program might declare a four-word process-ID variable to identify a
process:
INT process^id[0:3];
Convert the process-ID variable declaration to a process-handle variable for process-
control operations or to a process-descriptor variable for returning information from a
Guardian procedure. Use a process-ID variable for compatibility with unconverted
C-series procedures.
A process handle is a 10-word (20-byte) fixed-length structure. A process descriptor is
a specific form of the D-series process file name that always includes a node name and
sequence number. The ZSYSTAL file contains declarations that you can use for
declaring process-handle and process-descriptor variables. For example:
! process handle
INT .my^process^handle[0:ZSYS^VAL^PHANDLE^WLEN-1];
! process descriptor
STRING .proc^desc[0:ZSYS^VAL^LEN^PROCESSDESCR-1];
Avoiding Subvolume Defaulting
Your existing program might use subvolume defaulting to represent a Guardian disk
file name in the form
volume.file-id
. For example:
STRING .disk^file[0:16] := ["$diskvol.filename"];
If you are using the D-series programmatic interface, avoid subvolume defaulting. If a
file name requires the volume name, also include the subvolume name:
STRING .disk^file[0:ZSYS^VAL^LEN^FILENAME-1] :=
["$diskvol.subvol.filename "];