Copyright Digital Equipment Corp. All rights reserved.

Arguments

 

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 to map the private page
   frame section. 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.
 

start_pfn

   OpenVMS usage:page frame number
   type:         longword (unsigned)on Alpha, quadword (unsigned) on
                 Integrity servers
   access:       read only
   mechanism:    by value
   The CPU-specific page frame number where the section begins in
   memory.
 

page_count

   OpenVMS usage:CPU-specific page count
   type:         longword (unsigned) on Alpha, quadword (unsigned)
                 on Integrity servers
   access:       read only
   mechanism:    by value
   Length of the page frame section in CPU-specific pages.
 

acmode

   OpenVMS usage:access_mode
   type:         longword (unsigned)
   access:       read only
   mechanism:    by value
   Access mode that is to be the owner of the pages created during
   the mapping. 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.

   Address space cannot be created within a region that has a create
   mode associated with it that is more privileged than the caller's
   mode. The condition value SS$_IVACMODE is returned if the caller
   is less privileged than the create mode for the region.
 

flags

   OpenVMS usage:mask_longword
   type:         longword (unsigned)
   access:       read only
   mechanism:    by value
   Flag mask specifying the characteristics of the private section
   to be created. The flags argument is a longword bit vector in
   which each bit corresponds to a flag. The $SECDEF macro and the
   SECDEF.H file define a symbolic name for each flag. You construct
   the flags argument by performing a logical OR operation on the
   symbol names for all desired flags.

   The following table describes each flag that is valid for the
   $CRMPSC_PFN_64 service:

   Flag            Description

   SEC$M_ARGS64    Indicates that all parameters, specifically
                   start_pfn and page_count, are passed as 64-bit
                   numbers. This flag is ignored on OpenVMS Alpha
                   but must be set on Integrity server systems. If
                   the flag is not set on Integrity servers, the
                   error code SS$_IVSECFLG is returned.
   SEC$M_EXPREG    Pages are mapped into the first available space
                   at the current end of the specified region.
   SEC$M_NO_       Pages cannot overmap existing address space.
   OVERMAP         By default, pages can overmap existing address
                   space.
   SEC$M_PFNMAP    Pages form a page frame section. By default, this
                   flag is always present in this service and cannot
                   be disabled.
   SEC$M_          Flag that must be set when a PFN-mapped section
   UNCACHED        is created if this section must be treated
                   as uncached memory. Flag is ignored on Alpha
                   systems; it applies only to Integrity server
                   systems.
   SEC$M_WRT       Pages form a read/write section. By default,
                   pages form a read-only section.

   All other bits in the flags argument are reserved for future
   use by VSI and should be specified as 0. The condition value
   SS$_IVSECFLG is returned if any undefined bits are set or if
   an invalid combination of flags is set.
 

return_va_64

   OpenVMS usage:address
   type:         quadword address
   access:       write only
   mechanism:    by 32- or 64-bit reference
   The lowest process virtual address into which the private page
   frame section was mapped. The return_va_64 argument is the 32- or
   64-bit virtual address of a naturally aligned quadword into which
   the 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 length of the virtual address range mapped. The
   return_length_64 argument is the 32- or 64-bit virtual address
   of a naturally aligned quadword into which the service returns
   the length of the virtual address range in bytes.
 

start_va_64

   OpenVMS usage:address
   type:         quadword address
   access:       read only
   mechanism:    by value
   The starting virtual address to map the private page frame
   section. The specified virtual address must be a CPU-specific
   page aligned address. If the flag SEC$M_EXPREG is specified, the
   start_va_64 argument must not be specified or must be specified
   as 0. If SEC$M_EXPREG is set and the start_va_64 argument is
   nonzero, the condition value SS$_IVESCFLG is returned.