Components and System Files


Natural Nucleus Components

The Natural nucleus consists of two functional parts: the environment-independent nucleus and the environment-dependent nucleus.

Note
If you maintain different versions of Natural, you must use distinctive names for the nuclei to identify each version.

This section covers the following topics:

Environment-Independent Nucleus

The environment-independent nucleus contains components that are independent of the operating system or TP system (online interface) being used. The same instance of the environment-independent nucleus can be used in different online and batch environments in different address spaces. The environment-independent nucleus is reentrant.

The environment-independent nucleus can reside in the extended link pack area (ELPA) where it can be shared between different address spaces.

A module (such as the environment-independent nucleus) loaded into the ELPA is protected against modification. Therefore, tests for modifications of the environment-independent nucleus should be performed in a separate environment. You can use the operator command SETPROG to load a modified environment-independent nucleus into the ELPA.

If the environment-independent nucleus resides in the ELPA, multiple batch jobs or TP regions (for example, CICS) share the same instance of the environment-independent nucleus. This results in a significant reduction of paging activities and virtual storage consumption.

Modules for Linking

The following modules must be linked to the environment-independent nucleus:

  • Modules for base Natural

  • Environment-independent modules of Natural add-on products

  • Environment-independent user-supplied modules

When using System Maintenance Aid (SMA), the required modules are linked to the environment-independent nucleus during the appropriate installation job/step. Modules that can optionally be linked are mentioned in the Installation Procedure.

The installation of the environment-independent nucleus is described in Link the Nucleus in the Installation Procedure.

Specifying the Nucleus Name

The name of the environment-independent nucleus to be used is specified with the Natural profile parameter NUCNAME in the Natural parameter module during the installation of the environment-dependent nucleus. You can specify NUCNAME as a dynamic parameter in the primary parameter input, but you cannot specify NUCNAME in the input strings of the Natural profile parameter PROFILE or SYS.

The Natural parameter module is described in Building a Natural Parameter Module in the Operations documentation. NUCNAME, PROFILE and SYS are described in the Parameter Reference documentation.

If you maintain different versions of Natural, we recommend that you use distinctive names for the nucleus to clearly identify each version and environment, for example: NAT828 for the environment-independent nucleus, NAT828C for the environment-dependent nucleus for a CICS interface, and NAT828B for the batch environment.

Environment-Dependent Nucleus

The environment-dependent nucleus contains components that depend on the operating or TP system being used.

In addition to the environment-independent nucleus, every single address space in which Natural runs requires an environment-dependent nucleus containing modules that perform actions specific to the operating or TP system. The environment-dependent nucleus assumes control from the operating or TP system at the start of a Natural session, loads the environment-independent nucleus and passes control to it.

Modules for Linking

The following modules must be linked to the environment-dependent nucleus:

  • Environment-specific Natural interface modules

  • Environment-specific work file and print file modules

  • Environment-specific Natural parameter module (see also Building a Natural Parameter Module in the Operations documentation)

  • Environment-dependent modules of Natural add-on products

  • Adabas link routine (ADALNK or ADAUSER)

  • Environment-dependent user-supplied modules defined as CSTATIC in the Natural parameter module. The Natural profile parameter CSTATIC is described in the Parameter Reference documentation.

When using System Maintenance Aid (SMA), the required modules are linked to the environment-dependent nucleus during the appropriate installation job/step. Modules that can optionally be linked are mentioned in the Installation Procedure.

The installation of the environment-dependent nucleus is described in Link the Nucleus in the Installation Procedure.

Modules for Static Linking

Both the Natural configuration module NATCONFG (described in the Operations documentation) and the Natural parameter module contain the Natural-supplied list of additional modules to be statically linked to the nucleus.

The Natural parameter module also contains the user-supplied list of additional modules to be statically linked to the nucleus as specified with the Natural profile parameter CSTATIC.

Each entry of these lists consists of a program name and a V-type address constant which must be resolved by linking the corresponding module to the Natural parameter module.

The Natural-supplied list provided with NATCONFG is used if the Natural parameter module is not linked to the environment-independent nucleus. If modules are statically linked to the environment-independent nucleus, a Natural parameter module that defines all these modules must also be linked to the environment-independent nucleus.

Optionally, you can specify an alternative Natural parameter module by using the Natural profile parameter PARM (described in the Parameter Reference documentation). An alternative parameter module takes precedence over a parameter module that is linked to either the environment-independent or the environment-dependent nucleus.

Merging Module Lists

During initialization of a Natural session, up to three lists of statically-linked modules (specified with the Natural profile parameter CSTATIC) are merged:

  • Base list for the merge is the list of the Natural parameter module specified with the Natural profile parameter PARM;

  • V-type address constants not resolved in this list are resolved using the Natural parameter module linked to the environment-dependent nucleus;

  • V-type address constants not yet resolved are resolved using the Natural parameter module linked to the environment-independent nucleus.

If a user-supplied module is to be statically linked to the environment-independent nucleus, it must be specified in the Natural parameter module linked to the environment-independent nucleus as well as in the Natural parameter module specified with the Natural profile parameter PARM.

Modules for Dynamic Loading

When initializing a Natural session, you can also dynamically load the modules (supplied with the product or user-defined) that have been defined for static linking. For information on whether the module of a Natural add-on product is suitable for dynamic loading, read the documentation for your specific Natural add-on product.

For information on defining external names for static non-Natural programs and dynamic linking and controlling these programs, see the Natural profile parameters RCA and RCALIAS described in the Parameter Reference documentation.

Modules Called Dynamically

If a module is not defined for static linking, Natural attempts to load and execute the module using environment-dependent functions (for example, EXEC CICS LINK under CICS) when the corresponding Natural CALL statement is executed.

Natural System Files

The Natural system files are stored in an Adabas database.

The table below lists and describes the Natural system files that are usually available in a Natural environment. The availability of the system files and the data contained in the files depends on the products installed in addition to base Natural.

The settings for the system files are defined with Natural profile parameters of the same names (exception: scratch-pad file). You can follow the hyperlinks in the table below to read details about these parameters in the Parameter Reference documentation.

System File Supplied with File Contents
FNAT Base Natural All objects required for Natural system applications.
FUSER Base Natural User-specific objects required for user-defined applications.
FPROF Base Natural Parameter profiles specified by the profile parameter PROFILE, provided no database information is supplied as subparameter of PROFILE.
Scratch-pad file Base Natural Data that is not stored explicitly as a Natural object in another system file. See also Natural Scratch-Pad File in the Operations documentation.
FDIC Base Natural Natural Data Definition Modules (DDMs).

If Predict is installed, FDIC also contains data for the Predict dictionary system.

If the Natural Development Server is installed, FDIC also contains application data and holds object locking information.

FREG Base Natural Registry data that is not stored explicitly in another system file.
FSEC Natural Security Control information required for security definitions.
FSPOOL Natural Advanced Facilities Control and spooling information required to output a report on a screen or printer and obtain print statistics.

It is also possible to store Natural system files in a VSAM file system if Natural for VSAM is installed. The Installation for z/OS documentation describes the installation steps that apply when using an Adabas database for storage.

Defining a Scratch-Pad File

Like all other system files, the scratch-pad file is a logical file. The logical file number of the scratch-pad file is 212.

Since there is no mnemonic for the scratch-pad file such as FNAT and FUSER or FDIC, it has to be defined:

  • either statically by using the macro NTLFILE in the Natural parameter module or

  • dynamically by using the Natural profile parameter LFILE.

Examples of NTLFILE and LFILE Definitions:

LFILE Parameter:

LFILE=(212,physical-dbid,physical-fnr,password,cipher-key)

NTLFILE Macro:

NTLFILE 212,physical-dbid,physical-fnr,password,cipher-key

On this page