Safe programming techniques

 

 

The programming techniques in the safe category are the use of:

 

 

v The communication area (COMMAREA) on CICS RETURN commands

 

 

v A terminal control table user area (TCTUA) optionally available for each terminal

 

 

de®ned to CICS

 

v ENQMODEL de®nitions to give sysplex-wide scope to ENQs and DEQs

 

Unsafe programming techniques

 

 

The programming techniques in the unsafe category are the use of:

 

 

v Long-life shared storage:

 

 

± The common work area (CWA)

 

 

± GETMAIN SHARED storage

 

 

± Storage obtained via a LOAD PROGRAM HOLD

 

 

v Task-lifetime local storage shared by synchronized tasks

 

 

v Synchronization or serialization of tasks using CICS commands:

 

 

± WAIT EVENT / WAIT EXTERNAL / WAITCICS commands

 

± ENQ and DEQ commands that do not specify a length parameter and

 

therefore ENQ by address

 

± ENQ and DEQ commands that do specify a length and therefore ENQ by

 

name, unless you have used ENQMODEL de®nitions to give sysplex-wide

 

scope to the ENQs (and DEQs)

 

Suspect programming techniques

 

 

Some programming techniques may create affinity, depending on exactly how they

 

 

are implemented. A good example is the use of temporary storage. Application

 

 

programs using techniques in this category must be checked to determine whether

 

they will work without restrictions in a dynamic routingenvironment.

 

 

The programming techniques in the suspect category are the use of:

 

 

v Temporary storage queues with restrictive naming conventions

 

v Transient data queues and trigger levels

 

 

v Synchronization or serialization of tasks using CICS commands:

 

 

± RETRIEVE WAIT / START

 

 

± START / CANCEL REQID

 

 

± DELAY / CANCEL REQID

 

 

± POST / CANCEL REQID

 

v INQUIRE and SET commands and global user exits

 

 

 

 

Avoiding the effects of transaction affinity

 

In a dynamic routing environment, your dynamic routing program must take account

 

of transaction affinity in order to route transactions effectively. Where possible, you

 

should avoid creating application programs that cause affinity. However, where

 

existing applications are concerned, it is important that you determine whether they

 

are affected by transaction affinity before using them in a dynamic routing

 

environment. The Transaction Affinities Utility is designed to help you with this task.

6 CICS Transaction Affinities Utility Guide

Page 22
Image 22
IBM OS manual Safe programming techniques, Unsafe programming techniques, Suspect programming techniques

OS specifications

IBM OS, or IBM Operating System, refers to a family of operating systems developed by IBM to support its hardware architectures. IBM has produced a range of OS versions tailored for different computing needs, such as mainframes, servers, and personal computers. Among the most notable operating systems in IBM's portfolio are OS/2, z/OS, and AIX, representing a blend of innovation and reliability that has defined IBM's reputation in the computing world.

One of the defining features of IBM OS is its robust multitasking capabilities. Both z/OS, predominantly used in IBM's mainframe environments, and AIX, the Unix-based system for IBM Power Systems, support multiple users and processes simultaneously. This ability allows organizations to run numerous applications in parallel efficiently, maximizing resource utilization and improving productivity.

In terms of security, IBM OS incorporates advanced features aimed at protecting data and maintaining integrity. z/OS offers multifactor authentication, data encryption, and a security model that adheres to the latest regulatory requirements. AIX provides Secure Virtualization, which enhances isolation and security in cloud environments, essential for enterprises handling sensitive information.

Another key characteristic is the adaptability of IBM OS to modern technologies. For instance, z/OS is designed to integrate with cloud computing, open source, and DevOps practices. This adaptability supports organizations in modernizing their infrastructure while retaining the stability associated with IBM solutions. AIX similarly supports containerization and virtualization, which are critical for optimizing resource usage in dynamic computing environments.

IBM's commitment to scalability is evident across its OS offerings. Organizations leveraging z/OS can handle enormous workloads and transactional volumes, making it a preferred choice for industries like finance and telecommunications. AIX also supports scalability, allowing businesses to expand their computing resources as demands grow without significant downtime.

The availability of development tools and environments is another noteworthy aspect of IBM OS. With robust IDEs and programming languages support, developers can create and deploy applications smoothly. This assists businesses in streamlining their development processes and improving time-to-market for innovative solutions.

In summary, IBM OS encompasses a suite of operating systems characterized by multitasking, security, adaptability to modern technologies, scalability, and comprehensive development support. These features have cemented IBM's position as a leader in enterprise solutions, allowing organizations across various industries to thrive in an increasingly digital world.