Browse Prior Art Database

User Extended Supervisor Call Router

IP.com Disclosure Number: IPCOM000084610D
Original Publication Date: 1975-Dec-01
Included in the Prior Art Database: 2005-Mar-02
Document File: 6 page(s) / 109K

Publishing Venue

IBM

Related People

Zick, MR: AUTHOR

Abstract

An operating system programming technique is described which enables the user to increase the number of his supervisor call routines beyond the limit set by the number of interrupt code values assigned to user use. This is accomplished by extending the existing extended service call router mechanism to enable its use by the user.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 38% of the total text.

Page 1 of 6

User Extended Supervisor Call Router

An operating system programming technique is described which enables the user to increase the number of his supervisor call routines beyond the limit set by the number of interrupt code values assigned to user use. This is accomplished by extending the existing extended service call router mechanism to enable its use by the user.

In IBM System/360 and System/370 computers, a machine instruction entitled "Supervisor Call" (SVC) is provided to interrupt a running program and synchronously request a service routine from the monitor program. This instruction is a register/register (RR) type instruction having a one-byte (eight-bit) operation code field and a one-byte (eight-bit) interrupt code field. The eight-bit interrupt code field permits a maximum of 256 unique SVC request numbers to be provided. IBM reserves the lowest numbers for its use and permits the user to use SVC interrupt code numbers 200-255. Through the late 1960's and early 1970's, IBM continued to develop new SVC service routines, using up its allotment of SVC numbers.

As a result of near exhaustion of SVC numbers, IBM developed a service request program whose function was to invoke other service request programs. This linking program is known as the "Extended SVC Router" (ESR). The programs invoked by this mechanism are known as extended SVC's. Unfortunately, however, no such extension mechanism exists for the user. This is one of the two problems addressed by the new technique described herein.

A second user problem connected with SVC's is preplanning. Currently, if a user wishes to use any of the user-reserved SVC numbers, he must include these numbers at system generation (SYSGEN) time in the SVCTABLE macro instruction. If the user fails to include all the SVC numbers he requires, a re- SYSGEN is required to correct the situation. The time to re-SYSGEN an entire system is on the order of four to twenty-four hours.

Before considering the new technique in detail, some background information is required. In particular, IBM has defined three categories of programs that are invoked when an SVC instruction is issued. These categories are: (a) Type I SVC programs (reside in main storage). (b) Type II SVC programs (reside in main storage). (c) Type III and Type IV SVC programs (reside in system library).

As a result of different requirements and linkage for each type, the existing ESR mechanism has three unique entry points. One entry point is provided for each category. By way of convention, an index value is passed as a parameter to indicate which SVC program from a particular category is desired. For both Type I and Type II SVC programs, the ESR uses the index value to look up the requested program's starting address from a table. For Type III and Type IV SVC programs, the ESR uses the index value to form the requested program's name, the program itself requiring loading into main storage. With either approach, the ESR completes pr...