VMS Help
System Services, $EXPREG
*Conan The Librarian
|
Adds a specified number of new virtual pages to a process's
program region or control region for the execution of the current
image. Expansion occurs at the current end of that region's
virtual address space.
Format
SYS$EXPREG pagcnt ,[retadr] ,[acmode] ,[region]
C Prototype
int sys$expreg (unsigned int pagcnt, struct _va_range *retadr,
unsigned int acmode, char region);
pagcnt
OpenVMS usage:longword_unsigned
type: longword (unsigned)
access: read only
mechanism: by value
Number of pagelets to add to the current end of the program
or control region. The pagcnt argument is a longword value
containing this number.
On Alpha and Integrity server systems, the specified value is
rounded up to an even multiple of the CPU-specific page size.
retadr
OpenVMS usage:address_range
type: longword (unsigned)
access: write only
mechanism: by reference
Starting and ending process virtual addresses of the pages that
$EXPREG has actually added. The retadr argument is the address of
a 2-longword array containing, in order, the starting and ending
process virtual addresses.
acmode
OpenVMS usage:access_mode
type: longword (unsigned)
access: read only
mechanism: by value
Access mode to be associated with the newly added pages. The
acmode argument is a longword containing the access mode.
The most privileged access mode used is the access mode of the
caller.
The newly added pages are given the following protection:
(1) read and write access for access modes equal to or more
privileged than the access mode used in the call, and (2) no
access for access modes less privileged than that used in the
call.
region
OpenVMS usage:longword_unsigned
type: longword (unsigned)
access: read only
mechanism: by value
Number specifying which program region is to be expanded. The
region argument is a longword value. A value of 0 (the default)
specifies that the program region (P0 region) is to be expanded.
A value of 1 specifies that the control region (P1 region) is to
be expanded.