PROGA START

PROGB CSECT

PROGC CSECT

BALR

(VSE)

(VSE)

USING

.

.

.

.

.

.

ST 13,SAVEB+4

ST 13,SAVEC+4

.

.

.

Application

Application

Application

Program

Program

Program

Logic

Logic

Logic

.

.

.

LA 13,SAVEA

LA 13,SAVEB

.

CALL PROGB

CALL PROGC

.

EOJ(Return)

Return(PROGA)

Return(PROGB)

SAVEA DC 18F′ 0 ′

SAVEB DC 18F′ 0 ′

SAVEC DC 18F′ 0 ′

END

END

END

Figure 27. VSE Subroutine Linkage

These registers have additional meaning under MVS:

Register 1

The PARM field of the EXEC statement provides an external facility for

 

providing information to the program at job step execution time.

 

When control is passed to your program, register 1 contains the

 

address of a fullword on a fullword boundary. This fullword is the

 

starting address of a 102 byte area on a halfword boundary where 100

 

bytes of information can be entered in the PARM field. This is one

 

approach you can use to replace the VSE user communication region

 

routines; for example, setting the UPSI byte externally.

Register 15

Before returning to the calling program, you can load register 15 with

 

a return code. You can analyze this code by MVS job control

 

statements of a subsequent step to determine if the step is to be

 

executed or bypassed. You can substitute return code processing for

 

VSE logic which tests indicators set in the communication region by a

 

previous step of the job.

Register 13

Must point to a save area if any I/O or calls to subordinate programs

 

are performed. If, in the VSE version of the program, register 13 is

 

used as a base register, consider one of the following alternatives:

If any unused registers are available, one of these should be substituted as a base register or,

The save area may be placed in front of the program code that is to be based on register 13. Register 13 is then both pointing to a save area and acting as the base register.

Save Areas

Under both operating systems, all programs must provide a save area before calling another program. By convention, this save area should be 18 fullwords and contain the general purpose registers, as well as save area chaining pointers. The called program performs the storing of registers into the calling programs save area. The first program to receive control from MVS is responsible for saving the registers in the system-provided save area (address passed in register 13).

In MVS, the called program should provide a save area regardless of whether it calls additional subroutines. MVS Data Management functions, in certain instances, store the calling routines registers into a save area whose address is

270VSE to OS/390 Migration Workbook

Page 294
Image 294
IBM OS/390 manual Application Program Logic, LA 13,SAVEA LA 13,SAVEB Call Progb Call Progc, Save Areas

OS/390 specifications

IBM OS/390, a versatile operating system, was a cornerstone in enterprise environments and played a pivotal role in mainframe computing. Released in the mid-1990s, OS/390 combined the strengths of IBM's MVS (Multiple Virtual Storage) with new features and enhancements, targeting scalability, reliability, and performance in demanding business applications.

One of the key features of OS/390 was its robust support for multiple users and processes. The system allowed thousands of concurrent users to access applications and data, ensuring high availability and minimizing downtime—a critical requirement for many large organizations. This scalability was supported through various enhancements in memory management and processor scheduling, enabling optimal resource allocation across diverse workloads.

OS/390 was known for its superior workload management capabilities. The Workload Manager (WLM) component allowed administrators to define service policies, specifying how system resources would be allocated according to the priority of tasks. This ensured that critical business processes received the necessary resources while less critical tasks were managed more flexibly.

Another significant characteristic of OS/390 was its commitment to security. The operating system provided comprehensive security features, including user authentication, data encryption, and auditing capabilities. This focus on security was vital for organizations handling sensitive data, ensuring compliance with regulations and safeguarding against unauthorized access.

OS/390 also supported advanced technologies that facilitated integration and development. The system included features like the IBM CICS (Customer Information Control System) for transaction processing and IMS (Information Management System) for database management. These technologies allowed organizations to build robust, high-performance applications tailored to specific business needs.

The ease of network integration was another strength of OS/390. With the advent of the Internet and global connectivity, OS/390 systems could easily interface with various network protocols, enabling businesses to operate in a connected world. This inclusion paved the way for many organizations to expand their capabilities and offer new services, driving digital transformation.

In conclusion, IBM OS/390 represented a significant advancement in mainframe technology, combining scalability, security, and robust workload management. Its rich feature set and support for critical enterprise applications solidified its role as a vital component of many organizations' IT infrastructures, ensuring they could meet their operational challenges head-on while supporting future growth. As technology continues to evolve, the legacy of OS/390 remains influential in the realm of computing.