GDSX (Extended General Device Support) Manual
Design and Development
Extended General Device Support (GDSX) Manual—529931-001
2-26
Extended Memory Pools
Message Pool
The message pool (also called the local message pool) is used primarily for queuing
purposes. If data is received by GDSX but no recipient has been identified, the data is
temporarily stored in this pool. This pool is in the upper 32K of the user data segment
and contains approximately 32,000 words (see User Data Segment on page 2-20).
Memory allocated from this pool is only word addressable. The GETLOCALPOOL and
PUTLOCALPOOL procedures are used to allocate and deallocate space from this
pool.
Extended Memory Pools
USCODE can use memory pool space in the extended segment (by default, ID 1024)
in whatever ways you determine, except that the shared extended pool is intended to
hold information that is to be visible to all tasks, and the private extended pool should
be used by tasks to hold data that is not to be visible to other tasks. The selection of
the pool names, extended buffer pool and extended message pool, was arbitrary.
No mechanism for queuing of allocation requests or timeout is provided. For private
storage, such a facility has no purpose, because each task has its own individual pool.
Shared Extended Pool
The shared extended pool is intended to hold information that is to be visible to all
tasks. Memory allocated from this pool is byte addressable. The GETEXTPOOL[X]
and PUTEXTPOOL procedures are used to allocate and deallocate space from this
pool. It is your responsibility to manage this area.
Before issuing a call to GETEXTPOOL[X] for space in this pool, you specify the
maximum pool space to be used by setting a configuration parameter (see GDSX
Configuration Parameters on page 2-46). The maximum size of the shared extended
pool can be established by setting the POOLSIZE configuration parameter.
POOLSIZE specifies the maximum pool size (in words) that all user tasks can share.
TSCODE calculates an extended memory requirement of POOLSIZE * 2 bytes for the
shared extended pool. The default for POOLSIZE is 16,398 words. TSCODE will
allocate this pool unless the total for all the areas to be allocated in this extended
segment exceeds 16,777,216 bytes, in which case configuration error message 10012
is sent to the home terminal:
10012 Sum of final EXT. MEM size > 16777216d
Private Extended Pool
The private extended pool should be used by tasks to hold data that is not to be visible
to other tasks. Memory allocated from this pool is byte addressable. The
GETEXTPOOL[X] and PUTEXTPOOL procedures are used to allocate and deallocate
space from this pool.