144 IMS Version 8 Implementation Guide
11.1 Base Primitive Environment (BPE) enhancements
Base Primitive Environment (BPE) is a programming environment for developing new IMS
component address spaces. Common Queue Server (CQS) is an example of this, and more
and more IMS components are written to utilize the services provided by the BPE. A version
of BPE has been shipped with IMS since IMS 5.1. For IMS Version 8, the BPE version
shipped and required is 1.4. BPE 1.4 supports the Common Queue Server (CQS) and the
new Common Service Layer (CSL) components. The CQS version to be used with IMS
Version 8 is 1.3.0. BPE enhancements include the following:
New BPE address space initialization module
BPEPARSE enhancements
Buffer pool compression
Hash table services
User exit enhancements
Statistics services
DISPLAY VERSION command
Almost all of BPE is object code only (OCO) and many of the enhancements are internal (like
Buffer pool compression) so that they do not require any user action to get the benefits of
them. Some of the enhancements, like BPEPARSE and hash table services, are intended for
use by the people writing IMS components on BPE. The following paragraphs shortly
describe the enhancements concentrating on the externals.
11.2 New BPE address space initialization module
Prior to BPE 1.4 each IMS component using BPE had to write its own “first” module to get
control in the address space when the job started (for example: CQSINIT0). This module was
passed on the PGM= of the EXEC card in the JCL and it had to be added to the OS/390
Program Properties Table (PPT) to allow it to get control in key 7. This module then issued a
BPESTART macro to start BPE services.
BPE 1.4 provides a module named BPEINI00, which can be used to start a new address
space. A new PARM= parameter (BPEINIT=) is used to pass the name of a data-only module
containing a static structure built by BPESTART to define the address space characteristics.
BPEINI00 verifies that the PSW key is 7 and that the program is authorized. It loads the
indicated BPEINIT= module, and then starts the BPE services.
Only one module — BPEINI00 — needs to be added to the PPT. Example 11-1 shows an
example of the required entry in the PPT.
Example 11-1 A sample PPT entry for the Base Primitive Environment
PPT PGMNAME(BPEINI00) /* MVS SUPPLIED VALUE IS - '6870FFFF00000000' */
CANCEL /* PROGRAM CAN BE CANCELLED (DEFAULT) */
KEY(7) /* PROTECT KEY ASSIGNED IS 7 */
NOSWAP /* PROGRAM IS NOT-SWAPPABLE */
NOPRIV /* PROGRAM NOT PRIVILEGED (DEFAULT) */
SYST /* PROGRAM IS A SYSTEM TASK */
DSI /* DOES REQUIRE DATA SET INTEGRITY (DEFAULT) */
PASS /* PASSWORD PROTECTION ACTIVE (DEFAULT) */
AFF(NONE) /* NO CPU AFFINITY (DEFAULT) */
NOPREF /* NO PREFERRED STORAGE FRAMES (NODEFAULT) */
The new CSL components, Operations Manager (OM), Resource Manager (RM), and
Structured Call Interface (SCI) all use BPEINI00 to start. CQS can use either BPEINI00 or the