NET/MASTER Network Control Language (NCL) Programmer's Guide

Factors Affecting NCL Procedure Location
Executing NCL Procedures
106160 Tandem Computers Incorporated 8–9
keeps all NCL procedures that are currently executed by one or more NCL processes if
the value of the SYSPARMS NCLPRSHR command is either YES or a number. (NCL
procedures that are preloaded using SYSPARMS PRELOAD are displayed with a
status of PRELOAD by the SHOW PRELOAD command.)
If the value of the SYSPARMS NCLPRSHR command is a number, your NonStop
NET/MASTER MS system also maintains a list called the retain list. This list keeps
NCL procedures in memory that have been previously executed but are currently not
being executed. (NCL procedures that are retained because SYSPARMS NCLPRSHR
is either YES or a number are displayed with a status of RETAINED by the SHOW
PRELOAD command.)
Keeping NCL procedures in the retain list allows NCL procedures that may be
executed frequently over short periods of time to have a high probability of retention
in memory between execution requests. The purpose of the retain list is to limit the
amount of disk I/O activity required to load NCL procedures.
An NCL procedure is removed from the active list and put in the retain list when all
NCL processes using it have finished executing. The retain list uses three factors to
determine whether an NCL procedure is dropped off the list. These are length of time
in the list, the amount of use an NCL procedure receives, and the size of the list
(established by specifying a number using the SYSPARMS NCLPRSHR command).
The contents of the active list and the retain list are mutually exclusive. If an NCL
procedure is in one list, it cannot be in the other list. This means that NCL procedures
preloaded using the SYSPARMS PRELOAD command are never placed in the retain
list.
It also means that, if the value of the SYSPARMS NCLPRSHR command is YES or a
number, as soon as the number of NCL processes that are executing an NCL
procedure drops to zero, NonStop NET/MASTER MS removes it from the active list.
NonStop NET/MASTER MS either deletes the NCL procedure from memory, if the
value of the SYSPARMS NCLPRSHR command is YES, or places it in the retain list, if
the value of the SYSPARMS NCLPRSHR command is a number.
An NCL procedure that was preloaded using the SYSPARMS PRELOAD command is
removed from the active list and put in the pend-unload list when it is unloaded using
the SYSPARMS UNLOAD command but it is still being executed. This means a new
copy of an NCL procedure can be preloaded while an old copy of the NCL procedure
is being executed. New users of the NCL procedure will execute the new copy, even if
other users are still using the old copy. (NCL procedures that are in the pend-unload
list are displayed with a status of P-UNLOAD by the SHOW PRELOAD command.)