Browse Prior Art Database

System Program Debugging

IP.com Disclosure Number: IPCOM000073350D
Original Publication Date: 1970-Dec-01
Included in the Prior Art Database: 2005-Feb-22
Document File: 4 page(s) / 66K

Publishing Venue

IBM

Related People

King, NJ: AUTHOR

Abstract

The HOOK facility provides IBM TSS/360 system programmers with the capability to incorporate new private versions of shared reentrant system modules into their tasks, while permitting other tasks not requiring private version of these modules to continue to use the basic reentrant shared version of the module originally contained in the system. The HOOK facility addresses only those system modules contained in Initial Virtual Memory (IVM) which is that portion of the TSS/360 system modules which are linked loaded when the system is started up. These modules cannot be unloaded by the Dynamic Loader. The process of introducing a new version of a reentrant system module into the system entails the eradication of the module's definition from the Task Dictionary (TDY) contained in the HOOKing task.

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 39% of the total text.

Page 1 of 4

System Program Debugging

The HOOK facility provides IBM TSS/360 system programmers with the capability to incorporate new private versions of shared reentrant system modules into their tasks, while permitting other tasks not requiring private version of these modules to continue to use the basic reentrant shared version of the module originally contained in the system. The HOOK facility addresses only those system modules contained in Initial Virtual Memory (IVM) which is that portion of the TSS/360 system modules which are linked loaded when the system is started up. These modules cannot be unloaded by the Dynamic Loader. The process of introducing a new version of a reentrant system module into the system entails the eradication of the module's definition from the Task Dictionary (TDY) contained in the HOOKing task. The TDY contains a record of each external definition contained within a module. A system programmer requesting to HOOK a version of a module directs the HOOK facility to locate the module in the JOBLIB chain hierarchy and to reset all definitions in the TDY which have corresponding external definitions in the external storage copy of the module located in the JOBLIB chain. The TDY reset process is effected by Exclusive ORing the first character of the entry point name (DEF) to be reset with a X'CB' thereby permitting subsequent restoration of the DEF name by performing the same Exclusive ORing process. This TDY reset will permit the TSS/360 Dynamic Loader to load the new version of the module contained in the JOBLIB because the reset process tricks the loader into believing that the module is not currently loaded. Since a user of the HOOK facility must be a system programmer (a user with "0" authority), the Dynamic Loader will erase the shared attribute from any of the module's Control Sections (CSECTs), thereby giving the user his own private copy of the module. All implicit linkage to the module will result in control being transferred to the original shared reentrant version of the module, since none of these address constants were modified. In order for control to be transferred to a HOOKed version of a module, a HOOK macro must have been inserted at each external entry point (DEF) contained in the original version of the module.

The HOOK linkage contained in the original version of the module must be armed to enable linkage to the newly loaded module to be effected.

A given DEF, within the original base version of the module, can only effect linkage to a new version of the HOOKed module, if entry to that DEF had been effected on register 15. A basic assumption made is that standard linkage to DEFs is adhered to by all modules invoking a HOOKed DEF. Standard linkage dictates that register 15 will be the linkage register and, therefore, contains the value of the DEF to which linkage is to be transferred to. Register 13 should point to a save area, the 19th word of which normally contains the R adcon value of the...