Chapter 14. RPG I I . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329

14.1Migration from VSE to OS/390 . . . . . . . . . . . . . . . . . . . . . . . . 329

14.1.1Device Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329

14.1.2Print Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329

14.1.3Tape Labels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330

14.1.4Extent Exit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330

14.1.5Processing Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330

14.1.6File Access Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . 330

14.1.7Calling COBOL Subprograms . . . . . . . . . . . . . . . . . . . . . . 331

14.1.8Calling PL/I Subprograms . . . . . . . . . . . . . . . . . . . . . . . . 331

Chapter 15. PL/I . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333

15.1Functional Differences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333

15.1.1 EGCS (VSE) to DBCS (OS Version 2) Comments . . . . . . . . . . . 333

15.1.2Extended Precision . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334

15.1.3Multitasking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334

15.1.4 Dynamic Loading of Dependent Programs . . . . . . . . . . . . . . 334

15.1.5File Organization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334

15.1.6 Parameters Passed to a Main Program . . . . . . . . . . . . . . . . 335

15.1.7%INCLUDE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335

15.2Compiler Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335

15.2.1

Options

Specific to the DOS Compiler

. . . . . . . . . . . . . . . . .

335

15.2.2

Options

Specific to the MVS Compiler

. . . . . . . . . . . . . . . . .

336

15.2.3Execution Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337

15.2.4The EXEC and PROCESS Cards . . . . . . . . . . . . . . . . . . . . . 338

15.3Linkages Between Languages . . . . . . . . . . . . . . . . . . . . . . . . 338

15.3.1Linkages Supported . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338

15.3.2Linkages not Supported . . . . . . . . . . . . . . . . . . . . . . . . . . 338

15.4ENVIRONMENT Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . 338

15.4.1Not Supported in MVS . . . . . . . . . . . . . . . . . . . . . . . . . . 339

15.4.2Supported but to be Avoided . . . . . . . . . . . . . . . . . . . . . . 340

15.4.3The ²TOTAL² Option . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340

15.4.4 The SIS Option (Sequential Insert Strategy) . . . . . . . . . . . . . . 340

15.5Calling SORT from PL/I . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340

15.5.1Interfaces Offered . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340

15.5.2Parameters to be Passed . . . . . . . . . . . . . . . . . . . . . . . . . 340

15.6Checkpoint-Restart in PL/I . . . . . . . . . . . . . . . . . . . . . . . . . . . 342

15.6.1PLICKPT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342

15.6.2PLIREST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342

15.6.3PLICANC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343

15.7DUMP in PL/I Optimizer . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343

15.7.1Output File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343

15.7.2Options Specific to DOS . . . . . . . . . . . . . . . . . . . . . . . . . 343

15.7.3Options Specific to MVS . . . . . . . . . . . . . . . . . . . . . . . . . 344

15.7.4Compatibility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344

15.8Return Codes in PL/I . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344

15.8.1Setting Return Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . 344

15.8.2Return Code Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344

15.9Forcing an ABEND . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344

15.9.1Use of DISP in the JCL . . . . . . . . . . . . . . . . . . . . . . . . . . 344

15.9.2Automatic Restart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345

15.10Overlay Structures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345

15.10.1Conversion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345

15.10.2Overlay in MVS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345

15.11Storage Management in PL/I . . . . . . . . . . . . . . . . . . . . . . . . 345

Contents ix

Page 11
Image 11
IBM OS/390 manual Egcs VSE to Dbcs OS Version 2 Comments

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.