Previous Topic Next topic Print topic


ASLM: Errno 1022

The test fails because it creates an executable program dl which, on HP-UX, gets created with the MGAS segmented memory model, but the COBOL product uses the MPAS flat memory model.

Note: MGAS is the system default, MPAS is the default for COBOL executables.

Not all memory models can access shared memory created by different memory models, as shown in the table below.

Process type accessing shared memory Process type creating shared memory
64-bit MPAS 64-bit MGAS 32-bit MPAS 32-bit MGAS
64 bit MPAS Y Y Y Y
64 bit MGAS Y Y Y Y
32 bit MPAS Y Y Y Y
32 bit MGAS N Y Y Y

The runtime uses shared memory to access licenses from the ASLM license manager. If the shared memory does not exist the runtime will create it. If the first program run is COBOL 64-bit it will create a shared memory block as a 64-bit MPAS process, and if a 32-bit MGAS program invokes COBOL and tries to get a license the "ASLM Errno 1022" error is reported.

Resolution:

The solution is to either create the 32-bit program with the MPAS memory model, or remove the shared memory block used by ASLM licensing and recreate it from a 32-bit MPAS COBOL program.

Previous Topic Next topic Print topic