LINKLST/LPA Considerations
Only reentrant load modules can be executed from the LPA. Before copying a library’s contents to an LPA defined library or defining a library as an LPA library, inspect the members and move those that are non-reentrant to a LINKLST-defined library.
记住,放在LPA lib里面的module是要有RN标识的,因为他们是被所有Address Space共享使用的。
Reentrant load module means that it can be executed concurrently by several tasks but it cannot be temporarily modified. Then, each copy can be used by any number of tasks running in any number of CPUs in any number of address spaces at the same time.
To determine which members are non-reentrant, use the ISPF Browse facility and follow these steps:
1. Display an ISPF browse member selection list for the load library.
2. Issue the SORT ATTR command.
3. Scroll to the right to see the Attributes column.
Note: Most members show attributes of RN RU, for reentrant and reuseable.
4. Members showing spaces instead of RN are non-reentrant and cannot be moved into the LPA.
Command ===> Scroll ===> CSR
Name Prompt Alias-of ---- Attributes ---- SSI
_________ IXLINSIN IXLI1MAN RN RU 01113205
_________ IXLINSIP IXLI1MAN RN RU 01113205
_________ IXLI1MAN RN RU 01113205
_________ IEAVNPRR RU 01117560
_________ IEAVNP16 RU 01110024
_________ IEAVTSAS RU
_________ ISGNWMSI RU 80570538
_________ AMDSADPL 70675312
How to Determine LPA Load Module Storage Requirements
5. Issue the SORT RMODE command.
To determine the amount of storage required, follow one of these methods:
For 24-bit storage, add the hexadecimal value found in the Size field for all programs containing the value 24 in the RM (RMODE) field.
For 31-bit storage, add the hexadecimal value found in the Size field for all programs containing the value ANY in the RM (RMODE) field.