Guardian Procedure Calls Reference Manual (G06.25+)
Guardian Procedure Calls (G)
Guardian Procedure Calls Reference Manual—522629-013
6-15
GETPOOL_PAGE_ Procedure (H-Series RVUs
Only)
GETPOOL_PAGE_ Procedure (H-Series RVUs
Only)
Summary
Considerations for C Programmers
Syntax for TAL Programmers
Parameters
Summary
The GETPOOL_PAGE_ procedure obtains a block of memory from a buffer pool. The
memory is aligned on a page boundary and the space allocated is a multiple of a
page size.
Considerations for C Programmers
•
You cannot call GETPOOL_PAGE_ directly from a C program, because it returns a
value and also sets the condition-code register. To access this procedure, you
must write a “jacket” procedure in TAL that your C program can call directly. For
information on how to do this, see the discussion of procedures that return a value
and a condition code in the
C/C++ Programmer’s Guide. Note that the POOL_*
procedures, which should be used in new development can be called directly from
C.
Syntax for TAL Programmers
Parameters
address returned value
EXTADDR
returns the extended address of the memory block obtained if the operation is
successful or returns -1D if an error occurred or
block-size is 0. (Values less
than -1D may be returned to privileged callers.)
pool-head input, output
INT .EXT:ref:19
is the pool head previously defined by a call to DEFINEPOOL.
address := GETPOOL ( pool-head ! i,o
,block-size ); ! i
Caution. address should be a simple INT(32) or EXTADDR variable; otherwise, the
assignment can alter the condition code.