Support multiple AMODE (31 and 64) callers in a single module.
Original Publication Date: 2000-Apr-01
Included in the Prior Art Database: 2003-Jun-19
Disclosed is a parameter pre-processor that allows callers of different AMODE (e.g. 31 and 64-bit addressing) to call a single module. This pre-processor makes every caller appear to be of the same AMODE and same KEY as the called module. Background: In the OS/390 operating system, unauthorized applications call system services, which process the caller's parameters while running in an authorized state. In order to maintain the integrity of the system, these authorized services first copy the caller's parameters into protected storage, so that they can be used without interference from the application. After the parameters are copied, they are validated and then used. Different approaches are employed to copy the caller's parameters by different services. Some services simply copy the parameters one by one. Other services employ a structured means of copying the parameters. The OS/390 UNIX kernel employs a macro called BPXXPARM to copy parameters. BPXXPARM currently generates 2 blocks of code (RSECTS).