A set of tables, called nucleus module lists (NMLs), are used to identify the members in SYS1.NUCLEUS that are to be loaded into the DAT-on nucleus region. NMLs can be installed as part of an IBM® product, a vendor product, or a customer user modification. Each NML contains a list of the SYS1.NUCLEUS members that are part of the same product or user modification. The NMLs themselves are load modules that also reside in SYS1.NUCLEUS.
Use the NMLDEF macro to generate an NML statement (at the end of the macro expansion). See z/OS MVS Programming: Authorized Assembler Services Guide for more information on using the NMLDEF macro.
Existing nucleus-resident entry points cannot be replaced or overridden using an NML. To find out how to perform these functions, refer to information about customizing the nucleus in the z/OS MVS Programming: Authorized Assembler Services Guide.
You can use a NUCLSTxx member of SYS1.PARMLIB instead of NMLDEF to specify modules to be loaded into the nucleus. For more information on NUCLSTxx, especially its possible advantages over NMLDEF, see z/OS MVS Initialization and Tuning Reference.
The requirements for the caller are:
Environmental factor | Requirement |
---|---|
Minimum authorization: | Problem state or supervisor state, and any PSW key |
Dispatchable unit mode: | Task or SRB |
Cross memory mode: | No requirement |
AMODE: | 24- or 31-bit |
ASC mode: | No requirement |
Interrupt status: | No requirement |
Locks: | No requirement |
Control parameters: | None. |
None.
None.
None.
None.
The standard form of the NMLDEF macro is written as follows:
Syntax | Description |
---|---|
name | name: Symbol. Begin name in column 1. |
␢ | One or more blanks must precede NMLDEF. |
NMLDEF | |
␢ | One or more blanks must follow NMLDEF. |
NUCL=nucid | nucid: One to eight characters in length. |
The parameter is explained as follows:
None.
None.
IEANC002 NMLDEF NUCL=(ABC00122,ABC00123)
To install a user nucleus-resident routine or a release of a product, you can use SMP/E, or code your own JCL.
//FORDON JOB MSGLEVEL=(1,1)
//NMLDEF EXEC ASMHCL
//ASM.SYSIN DD *
IEANC001 NMLDEF NUCL=DXXTEST
//LKED.SYSLMOD DD DSN=SYS1.NUCLEUS,VOL=SER=DCH352,UNIT=3380,DISP=OLD
//LKED.SYSIN DD *
NAME IEANC001
/*
To install a user nucleus-resident routine or a release of a product, you can use SMP/E, or code your own JCL.
//FORDON JOB MSGLEVEL=(1,1)
//NMLDEF EXEC ASMHCL
//ASM.SYSIN DD *
IEANC002 NMLDEF NUCL=(ABC00001,ABC00002,ABC00003,ABC00004,ABC00005, X
ABC00006,ABC00007,ABC00008,ABC00009,ABC00010)
//LKED.SYSLMOD DD DSN=SYS1.NUCLEUS,VOL=SER=DCH352,UNIT=3380,DISP=OLD
//LKED.SYSIN DD *
NAME IEANC002
/*