Using a DL/I separate address space
The DL/I separate address space (DLISAS) is used by the online IMS control program to contain most of the DL/I code and control blocks. For some system configurations, using a DLISAS is required.
You can use a separate address space to contain DL/I code, control blocks, and buffers for full-function databases. To do this, use the local storage option parameter (LSO) on the IMS procedure. After specifying LSO=S on the IMS procedure, you can use the DLINM parameter of the IMSCTRL macro to specify the name of the DLISAS procedure to start.
For the DBCTL environment, a DLISAS is required and generated using the DBC procedure. The LSO parameter, therefore, is not supported. However, in a DB/DC environment, if a DBCTL function is used, you must specify that the DLISAS be used by specifying LSO=S.
DLISAS storage considerations
When you select the LSO=S option, storage is moved to a separate address space. Additionally, most of the PSB pools and the DMB pools are moved to the DLISAS. These pools are not moved if you choose local storage (LSO=Y).
The IMS control program automatically initiates the DLISAS. If either the IMS control program or DLISAS terminates, the other is automatically terminated.
IMS restart procedures do not maintain LSO specifications. For example, an IMS system using a DLISAS can be terminated, and IMS restart procedures can be performed that specify a local storage option.
When you use a DLISAS, the following storage elements are moved into the DLISAS:
- DL/I code
- Database buffers
- DMB pool, both resident and nonresident
- DMB work pool
- Most of the PSB pool, both resident and nonresident
- PI ENQ and DEQ tables (for non-Fast Path systems)
When you use a DLISAS, the following storage elements are in the z/OS® common storage area:
- OSAM code
- Log buffers
- Resident intent lists
Defining PSB pools in an IMS system that uses a DLISAS
In an IMS system that uses a DLISAS, two PSB pools exist: one in the z/OS common area (DUMP pool), and one in the DLISAS (DEPTHS pool). The DUMP pool contains the communications PCBs, Fast Path PCBs, and the key feedback area of the full-function PCBs. The DEPTHS pool contains the DL/I control blocks that are associated with a full-function database PCB (the JCB, for example).
PSBs are slightly larger in IMS Version 10 and later, due to control block size increases. The larger PSBs require more space in the PSB pool. Specify the sizes of these pools with the SASPSB parameter on the BUFPOOLS macro. You can override these sizes with the CSAPSB and DLIPSB parameters on the IMS procedure. The command /DISPLAY POOL PSBP displays usage information for the CSA pool and the DLISAS pool in an IMS system that uses a DLISAS.
For a given PSB, the output of the Application Control Blocks maintenance utility indicates the amount of space required in each pool. The IMS Monitor output reports indicate an out-of-space condition in the DEPTHS pool or a wait-for-storage condition if they occur. In these reports, 'DUMP' and 'DEPTHS' represent the CSA PSB pool and the DLS PSB pool, respectively.
The Application Control Blocks maintenance utility organizes the PSB so that all data for the DUMP pool precedes all data for the DEPTHS pool, regardless of the IMS configurations.
If local storage is used instead, a single PSB pool resides in the z/OS common area. In this case, the PSB parameter on the BUFPOOLS macro and on the IMS start procedure specifies the size of this pool.
To page fix the PSB pool (keep the pool in storage for the long term) specify POOLS=DLMP and POOLS=DPSB in the DFSFIXxx member in the IMS.PROCLIB data set. To page fix the resident PSB pool, include the following module names in the DFSFIXxx member: DFSPSBRS and DFSDLIRS.
Other planning considerations
Accounting procedures with a system that uses local storage option: Accounting procedures that are based on either the IMS system log, the z/OS Resource Measurement Facility (RMF), or the z/OS System Management Facility (SMF) can be affected depending on which storage option is specified. This is because the data reflects the existence of multiple address spaces.
The CPUTIME value that is recorded in the IMS system log is one example of this:
- If the local storage option is used (LSO=Y), only application program processing time is recorded in the type X'07' log record; most DL/I processing time is not included. For some applications, DL/I processing time can represent a large percentage of the total processing time.
- If a DLISAS is used (LSO=S), DL/I processing time is included in CPUTIME.
Because the IMS system log does not indicate which LSO option was specified, do not use CPUTIME values for accounting or comparison purposes when switching options.
For SMF, full-function databases are accounted for in the DLISAS. Fast Path databases and the IMS system data sets are accounted for in the control region.
DLISAS security considerations: If the full-function databases are protected by RACF®, the DLISAS procedure must be authorized to access these resources.
Tuning considerations: When tuning your system, consider that the IMS control program consists of more than one address space. You might want to include the control region and the DLISAS in the same RMF performance group so that RMF statistics can be compared with systems that do not use a DLISAS.