15.1.6 Parameters Passed to a Main Program

It is possible to pass parameters to a PL/I program having the option MAIN by declaring the entry point as follows:

P:PROCEDURE(PARAM) OPTIONS(MAIN);

DCL PARAM CHAR(100) VARYING;

When control is passed to the program, the character string PARAM will contain the parameter passed from the PARM field of the EXEC statement. The length of the character string will be set to the number of characters passed to the program.

Note: A main PL/I program always expects to receive parameters for the PL/I environment (COUNT or REPORT or ISASIZE ....). It is therefore necessary to

separate these parameters from those required by the program by the character

¢/¢. For example:

EXEC PGM=MAINPLI;PARM=′ REPORT,ISA(60K)/RESTART′

The character string RESTART is allocated to the field PARAM and its length will be set to seven bytes. If the PL/I Checkout Compiler is used, this parm string may have three fields (Checkout Compiler translation parms (for example, SOURCE), PL/I interpret time parms, and user data).

15.1.7 %INCLUDE

It is possible to specify in a %INCLUDE macro the DDname of the library which is to be searched for the text to be copied. By default, PL/I will search the library defined by the DDname SYSLIB.

%INCLUDE DCLFIC; the library to be searched is defined by:

//SYSLIB DD DSN=...

%INCLUDE MYLIB (DCLFIC); the library to be searched is defined by:

//MYLIB DD DSN=...

In DOS PL/I, this syntax existed with single-letter library identifiers for DOS source sublibraries, (for example, %INCLUDE Q(memb);), so the user may have to supply DD cards for DDNAMES ²P², ²Q², and so on. It is much more efficient to include only from the default data set SYSLIB, since the MVS PL/I compilers will OPEN and CLOSE other ²include² libraries at every reference.

15.2 Compiler Options

15.2.1 Options Specific to the DOS Compiler

15.2.1.1 CATALOG

This option is produced by the compiler from a CATALR statement. It is not valid in MVS PL/I. It is replaced by a control statement in the file specified by //SYSLIN DD DSN=.

Chapter 15. PL/I 335

Page 359
Image 359
IBM OS/390 Parameters Passed to a Main Program, 15.1.7 %INCLUDE, Compiler Options Options Specific to the DOS Compiler

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.