Understanding IMS™ terminology
Familiarize yourself with terms that have special meanings in IMS™.
- Batch message processing programs (BMPs)
- Programs that run as batch jobs but access databases that they
share with online transactions. BMPs can access message queues like
MPPs for batch processing and can also access operating system files.
You start BMPs using JCL. There are two types of BMPs:
- Transaction-oriented BMP
- A BMP that accesses the message queue for input. It can also access databases and operating system files. Output can be sent to databases, operating system files, or a message queue. Only one input file can be associated with the message queue.
- Batch-oriented BMP
- A BMP that does not access a message queue for input. Databases and operating system files are available for input and output processing, and message queues are available for output.
- Batch programs
- Programs that can access private databases and operating system files directly. Batch jobs do not access message queues or databases shared with an online system. In IMS™ documentation, these are referred to as DL/I batch jobs.
- BTS
- Batch Terminal Simulator. This is an IBM® product that enables you to run IMS™ database and data communication programs in a z/OS® or batch environment. BTS provides a comprehensive way to check program logic, IMS™ program interfaces, teleprocessing activity, 3270 format control blocks, and database activity.
- DBD
- The database definition of DL/I, fast path, or GSAM databases. You specify segment content, hierarchy, and physical characteristics such as organization and access method, in the DBD.
- Fast path
- A type of IMS™ processing
that involves expedited handling for certain transactions and supports
special databases designed for large volumes of data with a high availability
rate. There are two types of fast path databases:
- DEDB
- Data Entry Database. This is a type of IMS™ fast path database that contains large volumes of data with a high rate of availability. Subset pointers help manage long chains of segment occurrences. One segment type is stored near the root segment and the occurrences are in chronological order.
- MSDB
- Main Storage Database. A type of IMS™ fast path database that uses fixed-length root segments that reside in virtual storage for quick access. The segments can be related to a specific terminal or be defined so all terminals can access the data.
- GSAM
- Generalized sequential access method- GSAM enables MVS™ batch programs and BMPs to access a sequential OS/VS data set as a database. The database is a root-only database, and the entire root segment represents a record. Unlike sequential OS/VS data sets, you can checkpoint and restart GSAM files just like DL/I databases.
- Message processing programs (MPPs)
- IMS™ programs that process
requests from terminals and from other programs. The requests or messages
are stored in message queues accessible to the MPP. The MPP can perform
required database access and write new messages to output queues for
further terminal and program processing. MPPs cannot access GSAM files.
There are two types of MPPs:
- Conversational MPP
- A type of MPP that saves data in a scratchpad area (SPA) during user think time, even though locks on the database are lost. IMS™ conversational mode is similar to CICS® pseudoconversational mode. IMS™ has no capability that is similar to CICS® conversational mode.
- Nonconversational MPP
- A type of MPP that can process a single input message with, at most, a single response. No data can be saved during user think time (except for data saved on the screen or in a database).
- Message Queue
- A location in IMS™ where information being sent to an alternate terminal or to another transaction can be stored so IMS™ can handle the I/O to the terminal or schedule the other transaction to start processing. It is accessed through DL/I calls.
- MFS
- Message Format Services. Use this editing facility with IMS™ so that programs can access message data from a terminal. MFS enables you to customize the presentation of the data, but shields the program from panel formats and device dependencies by providing access to only the data required from the terminal.
- PCB
- Program Communication Block. In IMS™,
this collection of information is related to an IMS™ resource that a program can use. IMS™ uses this control block to determine the
resource being used and to return the results of an I/O operation
against the resource to the program. IMS™ uses
the following types of PCBs:
- I/O
- Represents an IMS™ logical terminal or a message from another program. A program uses DL/I calls for this PCB to read input from a terminal or program and write output messages back to that same terminal.
- Alternate
- Represents the message queue for an IMS™ logical terminal or an alternate transaction. It differs from an I/O PCB because the alternate PCB can represent logical terminals other than the terminal from where the input message came. An alternate PCB is also known as a teleprocessing (TP) PCB.
- Express®
- An alternate PCB that sends a completed message immediately to its destination. A non-express alternate PCB does not send a completed message to its destination until a commit point. When this process is not successful, complete messages sent to an express PCB cannot be backed out. A message is complete when a PURG call is issued. You can force a PURG call by using the EGL close statement. An express PCB is also known as a teleprocessing (TP) PCB.
- DB
- Represents a DL/I database that a program can access. In addition, the DB PCB specifies the data that the program can access, the segment or field level, and the type of processing valid with that database.
- GSAM
- Represents a GSAM file that a program can access and contains the processing option available for the program.
- PSB
- A Program Specification Block. In IMS™, a PSB is a set of statements that define the PCBs a program can use. The database PCBs identify the required databases, segments to be accessed, and database options for a given program. Alternate PCBs define message queues for terminals or other programs.
- Program switch
- A way of transferring control from one program to another. There
are two types of program switches:
- Deferred program switch
- Occurs when Program A responds to the terminal and informs IMS™ to start another transaction that is associated with Program B on the next input from the terminal.
- Immediate program switch
- Occurs when Program A passes control directly to another transaction that is associated with Program B without responding to the originating terminal first.
- SPA
- The scratchpad area for IMS™. The SPA is used for conversational processing to save data while the map is displayed during user think time.
- Work database
- A database that saves information about a running program during user think time. Except for defining a PCB for the work database or including it in your DB2® plan, you do not need to do any special processing for a work database. Rational® COBOL Runtime manages and uses the work database for you. The work database can be a DL/I or a DB2® database.