VMS Help
System Services, $DELTVA 64 (Alpha Only)
*Conan The Librarian (sorry for the slow response - running on an old VAX)
|
|
On Alpha systems, deletes a range of virtual addresses from a
process's virtual address space. Upon successful completion of
the service, the deleted pages are inaccessible, and references
to them cause access violations.
This service accepts 64-bit addresses.
Format
SYS$DELTVA_64 region_id_64 ,start_va_64 ,length_64 ,acmode
,return_va_64 ,return_length_64
C Prototype
int sys$deltva_64 (struct _generic_64 *region_id_64,
void *start_va_64, unsigned __int64
length_64, unsigned int acmode, void
*(*(return_va_64)), unsigned __int64
*return_length_64);
region_id_64
OpenVMS usage:region identifier
type: quadword (unsigned)
access: read only
mechanism: by 32- or 64-bit reference
The region ID associated with the region from which to address
the VA space.
The file VADEF.H in SYS$STARLET_C.TLB and the $VADEF macro in
STARLET.MLB define a symbolic name for each of the three default
regions in P0, P1, and P2 space.
The following region IDs are defined:
Symbol Region
VA$C_P0 Program region
VA$C_P1 Control region
VA$C_P2 64-bit program region
Other region IDs, as returned by the $CREATE_REGION_64 service,
can be specified. Also, the region ID that a virtual address
is in can be obtained by calling the $GET_REGION_INFO service,
specifying the VA$_REGSUM_BY_VA function.
start_va_64
OpenVMS usage:address
type: quadword address
access: read only
mechanism: by value
The starting virtual address of the pages to be deleted. The
specified address must be a CPU-specific page aligned address.
If the region_id_64 argument specifies a shared page table region
or if the start_va_64 argument lies within a shared page table
region, the specified address must be a CPU-specific page table
page aligned address.
length_64
OpenVMS usage:byte count
type: quadword (unsigned)
access: read only
mechanism: by value
Length of the virtual address space to be deleted. The length
specified must be a multiple of CPU-specific pages. If the
virtual address space is being deleted from a shared page table
region, the specified length must be page table page aligned or
include the last page in a memory-resident section.
acmode
OpenVMS usage:access_mode
type: longword (unsigned)
access: read only
mechanism: by value
Access mode associated with the call to $DELTVA_64. The acmode
argument is a longword containing the access mode.
The $PSLDEF macro in STARLET.MLB and the file PSLDEF.H in
SYS$STARLET_C.TLB define the following symbols and their values
for the four access modes:
Value Symbolic Name Access Mode
0 PSL$C_KERNEL Kernel
1 PSL$C_EXEC Executive
2 PSL$C_SUPER Supervisor
3 PSL$C_USER User
The most privileged access mode used is the access mode of the
caller. The calling process can delete pages only if those pages
are owned by an access mode equal to or less privileged than the
access mode of the calling process.
return_va_64
OpenVMS usage:address
type: quadword address
access: write only
mechanism: by 32- or 64-bit reference
The lowest process virtual address of the deleted virtual address
range. The return_va_64 argument is the 32- or 64-bit virtual
address of a naturally aligned quadword into which the $DELTVA_64
service returns the virtual address.
return_length_64
OpenVMS usage:byte count
type: quadword (unsigned)
access: write only
mechanism: by 32- or 64-bit reference
The 32- or 64-bit virtual address of a naturally aligned quadword
into which the $DELTVA_64 service returns the length in bytes of
the virtual address range deleted.
[legal]
[privacy]
[GNU]
[policy]
[netiquette]
[sponsors]
[FAQ]
Polarhome, production since 1999.
Member of Polarhome portal.