User`s guide

Macros for Porting from VAX to Alpha or I64
D.3 Locking Pages into a Working Set
D.3.1 Image Initialization-Time Lockdown
These macros are used for image initialization-time lockdown:
$LOCK_PAGE_INIT
$LOCKED_PAGE_END
$LOCKED_PAGE_START
$LOCK_PAGE_INIT
Required in the initialization routines of an image that is using $LOCKED_
PAGE_START and $LOCKED_PAGE_END to delineate areas to be locked at
initialization time.
Format
$LOCK_PAGE_INIT [error]
Parameters
[error]
Address to which to branch if one of the $LKWSET calls fail. If this address is
reached, R0 reflects the status of the failed call, and R1 contains 0 if the call to
lock the code failed, or 1 if that call succeeded but the call to lock the linkage
section failed.
Description
$LOCK_PAGE_INIT creates the necessary psects and issues the $LWKSET calls
to lock into the working set the code and linkage sections that were declared by
$LOCKED_PAGE_START and $LOCKED_PAGE_END. R0 and R1 are destroyed
by this macro.
The psects locked by this macro are $LOCK_PAGE_2 and $LOCK_LINKAGE_2.
If code sections in other modules, written in other languages, use these psects,
they will be locked by an invocation of this macro in a VAX MACRO module.
$LOCKED_PAGE_END
Marks the end of a section of code that may be locked at image initialization time
by the $LOCK_PAGE_INIT macro.
Format
$LOCKED_PAGE_END [link_sect]
Parameters
[link_sect]
Psect to return to if the linkage psect in effect when the $LOCKED_PAGE_
START macro was executed was not the default linkage psect, $LINKAGE.
D–8 Macros for Porting from VAX to Alpha or I64