A FASTPAM environment consists of cross-file and cross-task system and user memory areas which are created before files are opened and repeatedly used whenever files are accessed.
User memory area:
The user memory area is a virtually contiguous memory area in which the FPAMACC parameter lists (...ACC=ACCESS) are located. The parameter lists generated with the FPAMACC macro (see below) are required for file access. They must lie in a contiguous area of the virtual address space. They are made resident by FASTPAM if the required FASTPAM authorization is present. The number of parameter lists determines the maximum number of parallel accesses to files opened with this environment.System memory areas (only with FASTPAM authorization):
An I/O path is created by the system for each FPAMACC parameter list. This I/O path includes all the resident class 3 memory that is required for an I/O by the system. Its size depends on the value specified in the MAXIOLEN operand:1 Kbyte for MAXIOLEN = *MINI
2 Kbytes for MAXIOLEN = *MAXI
Attributes
A FASTPAM environment is defined by the following fixed attributes:
name
scope
address of the FPAMACC parameter lists
number of FPAMACC parameter lists
maximum I/O length for all file accesses with this environment
eventing: yes/no; if yes: short ID of the event item (event ID)
A FASTPAM environment is uniquely identified by its name and scope. An environment can be used for any number of files by any number of tasks that lie in the scope of the environment. The scope of an environment is determined by the memory area in which the FPAMACC parameter lists are created:
If the area lies in the task-local address space, the environment is valid for that task only, i.e. no other task can join the environment even if it has same parameters.
If the area is in a common memory pool, the scope defined by the SCOPE operand in the ENAMP macro (ENAble Memory Pool) applies.