SVC Routines

You can add your own SVC routines or replace those provided by the Tachyon Operating System. The facilities for doing so are similar to those provided by MVS, OS/390 and z/OS. The IBM Application Development Guide for Authorized Assembler Language Programs contains details on how these facilities work. This section briefly describes how to use the facilities provided by the Tachyon Operating System and any significant differences in them from those provided by MVS.


Installation

You can use any of the following methods to install your own SVC routines:

The Tachyon Operating System does not require ESR routines to match the base SVC table entry. For instance, this means that you are not limited to installing type 3 routines for SVC 109 ESR entries.


Coding SVC Routines

The Tachyon Operating System supports the standard type 1, 2, 3, 4 and 6 SVC routines as well as its own "Type 0" routines. However, this release of the Tachyon Operating System supports very few of the branch entry services, so it is unlikely that SVC routines coded for MVS will function without modification to the Tachyon Operating System. Also, since SRB mode is not supported, services such as SCHEDULE or T6EXIT RETURN=SRB are not available.

Type 0 SVC routines use the linkage stack for saving and restoring the caller’s status. Using the linkage stack significantly reduces the overhead of calling and returning from SVC routines, especially over that of type 2, 3 and 4 routines. On entry to a type 0 routine, register 6 will contain the routines entry point address. Registers 0, 1 and 15 will retain the caller’s values. Since the caller’s status is stored on the linkage stack, the SVC routine can use the EREG and ESTA instructions to extract the status. The SVC routine should return to the caller via the PR instruction after setting the values of registers 0, 1 and 15.

Type 0 SVC routines can call other SVC routines via the SVC instruction. Since no SVRB exists, type 0 routines should not use XCTL or LINK to invoke other programs. Type 0 SVC routines can also be called from type 2, 3 and 4 routines via the SVC instruction.


Frames No Frames Previous Next Contents
Introduction Setup Programs Files Running Testing Compatibility Customization Messages Codes

© Copyright 1998-2006, Tachyon Software® LLC.
Last modified on April 21, 2006