Specifications

Operating System Routines
EXE$ALLOCBUF, EXE$ALLOCIRP
The caller must check and adjust process quotas (JIB$L_BYTCNT or JIB$L_
BYTLM, or both) by calling EXE$DEBIT_BYTCNT or EXE$DEBIT_BYTCNT_
BYTLM. (Note that you can perform this task and allocate a buffer of
the requested size by using the routines EXE$DEBIT_BYTCNT_ALO and
EXE$DEBIT_BYTCNT_BYTLM_ALO. These routines invoke EXE$ALLOCBUF.)
The normal buffered I/O postprocessing routine (IOC$REQCOM), initiated by the
REQCOM macro, readjusts quotas and also deallocates the buffer.
Note that the value returned in R1 and placed at IRP$W_SIZE in the allocated
buffer is the size of the requested buffer. The actual size of the allocated buffer
is determined according to the algorithms used by EXE$ALONONPAGED and
the size of the lookaside list packets. The nonpaged pool deallocation routine
(EXE$DEANONPAGED), called in buffered I/O postprocessing, uses similar
algorithms when returning memory to nonpaged pool.
3–15