Command CICS

Last updated
Command CICS
Developer(s) Ken Dakin
APT Ltd, UK
Initial release1993
Stable release
n/a / 1 January 1993;26 years ago (1993-01-01)
Operating system MVS, MVS/XA, MVS/ESA, DOS/VSE
Platform IBM/370, IBM ES/9000 family, z/OS & compatibles
Type Emulator
License Proprietary software
Websiten/a

Command CICS or Command-CICS is a software product that allows organizations to migrate from "Macro level" CICS to "Command level" CICS without any re-programming so that companies could migrate to later versions of CICS that did not support macro level application programs. [1] The later versions of CICS offered many advantages over previous versions yet tens of thousands of application programs were effectively locked out of the new version unless they were prepared to operate two completely different versions of CICS on the same Operating Systems, creating both operational and maintenance problems. Two different, simultaneous, CICS Licenses were also required.

CICS transaction management system by IBM

Customer Information Control System (CICS) is a family of mixed language application servers that provide online transaction management and connectivity for applications on IBM mainframe systems under z/OS and z/VSE.

Contents

History

When CICS was first released by IBM in the late 1960s, it used IBM Assembler macros to generate the API system calls to the CICS teleprocessing monitor kernel. This was also true even if programs were written in COBOL or PL/1. Ken Dakin an independent programmer and CEO of APT Ltd. in the U.K., realized that by creating a middleware product, the problem could be solved for almost all situations. Ken Dakin approached IBM to market his product but received no interest at the time, despite the fact that tens of thousands of their clients application programs would need to be converted or rewritten for the new versions of CICS, costing many millions of dollars.

IBM American multinational technology and consulting corporation

International Business Machines Corporation (IBM) is an American multinational information technology company headquartered in Armonk, New York, with operations in over 170 countries. The company began in 1911, founded in Endicott, New York, as the Computing-Tabulating-Recording Company (CTR) and was renamed "International Business Machines" in 1924.

System call in computer science, the mechanism used by an application program to request service from the operating system or another application program

In computing, a system call is the programmatic way in which a computer program requests a service from the kernel of the operating system it is executed on. This may include hardware-related services, creation and execution of new processes, and communication with integral kernel services such as process scheduling. System calls provide an essential interface between a process and the operating system.

A teleprocessing monitor is a control program that monitors the transfer of data between multiple local and remote terminals to ensure that the transaction processes completely or, if an error occurs, to take appropriate actions.

Macro level emulation

Command-CICS intercepted macro level applications via a Link-edited (static) "stub" positioned ahead of the Load module (MVS) or Phase (DOS/VSE). On gaining control from the CICS Program Control Program (PCP), a "pseudo macro level" environment was established consisting of a pointer to a (unique) pseudo "Common System Area" (CSA), a pointer to a Transaction Control Area plus Transaction Work Area (TCA+TWA) and a pseudo Terminal Control Terminal Entry (TCTTE) and other artifacts of a macro level environment. Before passing control directly to the original program entry point, Command-CICS set up the actual general purpose registers, R13 and R12 to point to the pseudo control blocks. The CSA was the principal control block holding pointers to the CICS kernel programs (File Control Program, Storage Control Program etc.) in a real macro level CICS environment. The Command-CICS CSA had alternative pointers to Command-CICS entry points instead. It was possible to use CEDF to debug the application program calls when Command-CICS was used.

MVS operating system for IBM mainframes

Multiple Virtual Storage, more commonly called MVS, was the most commonly used operating system on the System/370 and System/390 IBM mainframe computers. It was developed by IBM, but is unrelated to IBM's other mainframe operating systems, e.g., VSE, VM, TPF.

Macro interface

The application program proceeded to execute normal machine code instructions right up to its first macro level API call, thus adding zero overhead to the program until that point. As soon as the API call left the application program, Command-CICS code would gain control and replace the original linkage with its own, equivalent, Command-level call. In original earlier command level CICS versions (that supported both Macro and Command level programs), the CICS "Exec Interface Program" (DFHEIP) converted the Command level call to an 'actual macro level call. This would add a very small additional overhead only during CICS calls. Later versions of CICS, however, executed the CICS API directly, imposing no additional "backward compatibility" overhead.

Marketing

Command-CICS was initially sold by APT Ltd in the U.K. and APT International in mainland Europe and the rest of the world. At the present time CommandCICS is being offered by Advanced Software Products Group, Inc. of Naples, Florida, United States

Florida U.S. state in the United States

Florida is the southernmost contiguous state in the United States. The state is bordered to the west by the Gulf of Mexico, to the northwest by Alabama, to the north by Georgia, to the east by the Atlantic Ocean, and to the south by the Straits of Florida. Florida is the 22nd-most extensive, the 3rd-most populous, and the 8th-most densely populated of the U.S. states. Jacksonville is the most populous municipality in the state and the largest city by area in the contiguous United States. The Miami metropolitan area is Florida's most populous urban area. Tallahassee is the state's capital.

Competition

CICS/COMET for z/OS - a similar product from UNICOM Systems Inc. [2] Adds some overhead (because of the requirement to dynamically add a stub).

Related Research Articles

IBM AIX Unix operating system from IBM

AIX is a series of proprietary Unix operating systems developed and sold by IBM for several of its computer platforms. Originally released for the IBM RT PC RISC workstation, AIX now supports or has supported a wide variety of hardware platforms, including the IBM RS/6000 series and later POWER and PowerPC-based systems, IBM System i, System/370 mainframes, PS/2 personal computers, and the Apple Network Server.

The Windows API, informally WinAPI, is Microsoft's core set of application programming interfaces (APIs) available in the Microsoft Windows operating systems. The name Windows API collectively refers to several different platform implementations that are often referred to by their own names ; see the versions section. Almost all Windows programs interact with the Windows API. On the Windows NT line of operating systems, a small number use the Native API.

SPSS Statistical analysis software

SPSS Statistics is a software package used for interactive, or batched, statistical analysis. Long produced by SPSS Inc., it was acquired by IBM in 2009. The current versions (2015) are named IBM SPSS Statistics.

IBM i EBCDIC based operating system that runs on IBM Power Systems

IBM i is an operating system that runs on IBM Power Systems and IBM PureSystems. It was named OS/400 when it was introduced with the AS/400 line of computer systems in 1988, was later renamed i5/OS, and was renamed IBM i in 2008 when IBM Power Systems was introduced.

IBM MQ is a family of message-oriented middleware products that IBM launched in December 1993. It was originally called MQSeries, and was renamed WebSphere MQ in 2002 to join the suite of WebSphere products. In April 2014, it was renamed IBM MQ. The products that are included in the MQ family are IBM MQ, IBM MQ Advanced, IBM MQ Appliance, IBM MQ for z/OS, and IBM MQ on IBM Cloud.

HAScript, or Host Access Script, is an IBM-developed macro language with an XML syntax designed for programmatic interaction with terminal-based applications. HAScript is based on a state machine principle. The first commercial implementation appeared in IBM's Host On-Demand in the late 1990s.

FreeRTOS Real-time operating system

FreeRTOS is a real-time operating system kernel for embedded devices that has been ported to 35 microcontroller platforms. It is distributed under the MIT License.

In computing, ioctl is a system call for device-specific input/output operations and other operations which cannot be expressed by regular system calls. It takes a parameter specifying a request code; the effect of a call depends completely on the request code. Request codes are often device-specific. For instance, a CD-ROM device driver which can instruct a physical device to eject a disc would provide an ioctl request code to do that. Device-independent request codes are sometimes used to give userspace access to kernel functions which are only used by core system software or still under development.

System Architect software

Unicom System Architect is an enterprise architecture tool that is used by the business and technology departments of corporations and government agencies to model their business operations and the systems, applications, and databases that support them. System Architect is used to build architectures using various frameworks including TOGAF, ArchiMate, DoDAF, MODAF and NAF. System Architect is developed by UNICOM Systems, a division of UNICOM Global, a United States-based company.

Teleprocessing Network Simulator (TPNS) is an IBM licensed program, first released in 1976 as a test automation tool to simulate one or many network terminal(s) to a mainframe computer system, for functional testing, regression testing, system testing, capacity management, benchmarking and stress testing. In 2002, IBM re-packaged TPNS and released Workload Simulator for z/OS and S/390 (WSim) as a successor product.

In computing a storage violation is a hardware or software fault that occurs when a task attempts to access an area of computer storage which it is not permitted to access.

CA-EZTEST was a CICS interactive test/debug software package distributed by Computer Associates and originally called EZTEST/CICS, produced by Capex Corporation of Phoenix, Arizona with assistance from Ken Dakin from England.

Dynamic loading is a mechanism by which a computer program can, at run time, load a library into memory, retrieve the addresses of functions and variables contained in the library, execute those functions or access those variables, and unload the library from memory. It is one of the 3 mechanisms by which a computer program can use some other software; the other two are static linking and dynamic linking. Unlike static linking and dynamic linking, dynamic loading allows a computer program to start up in the absence of these libraries, to discover available libraries, and to potentially gain additional functionality.

SMP/E "is a tool designed to manage the installation of software products on [a] z/OS system and to track the modifications" to those products.

IBM WebSphere Optimized Local Adapters is a functional component of IBM's WebSphere Application Server for z/OS that provides an efficient cross-memory mechanism for calls both inbound to WAS z/OS and outbound from z/OS. Because it avoids the overhead of other communication mechanisms, it is capable of high volume exchange of messages. WOLA is an extension to the existing cross-memory exchange mechanism of WAS z/OS, with WOLA providing an external interface so z/OS address spaces outside the WAS z/OS server may participate in cross-memory exchanges. WOLA supports connectivity between a WAS z/OS server and one or more of the following: CICS, IMS, Batch, UNIX Systems Services and ALCS. WOLA was first made available in WAS z/OS Version 7, Fixpack 4 (7.0.0.4). Functional enhancements have appeared in subsequent fixpacks as documented in this article.

Distributed Data Management Architecture

Distributed Data Management Architecture (DDM) is IBM's open, published software architecture for creating, managing and accessing data on a remote computer. DDM was initially designed to support record-oriented files; it was extended to support hierarchical directories, stream-oriented files, queues, and system command processing; it was further extended to be the base of IBM's Distributed Relational Database Architecture (DRDA); and finally, it was extended to support data description and conversion. Defined in the period from 1980 to 1993, DDM specifies necessary components, messages, and protocols, all based on the principles of object-orientation. DDM is not, in itself, a piece of software; the implementation of DDM takes the form of client and server products. As an open architecture, products can implement subsets of DDM architecture and products can extend DDM to meet additional requirements. Taken together, DDM products implement a distributed file system.

References

  1. "IBM - Command/CICS". ibm.com.
  2. "UNICOM Systems, Inc. -- A Division of UNICOM Global :: CICS/COMET for z/OS". unicomsi.com.