Document revision date: 19 July 1999 | |
Previous | Contents | Index |
Returns the current time in 128-bit UTC format.On Alpha systems, this service accepts 64-bit addresses.
SYS$GETUTC utcadr
int sys$getutc (unsigned int *utcadr [4]);
utcadr
OpenVMS usage: coordinated universal time type: utc_date_time access: write only mechanism: by 32- or 64-bit reference (Alpha) mechanism: by 32-bit reference (VAX)
The 128-bit time value to be returned.
The Get UTC Time service returns the current system time in 128-bit UTC format. System time is updated every 10 milliseconds.On Alpha systems, the frequency at which system time is updated varies, depending on the clock frequency of the Alpha processor.
None
None
$ASCUTC, $BINUTC, $NUMUTC, $TIMCON
SS$_NORMAL The service completed successfully. SS$_ACCVIO The argument was not accessible for write in the mode of the caller.
On Alpha systems, obtains data from the user image alignment fault buffer if buffered user alignment fault data reporting has been enabled.This service accepts 64-bit addresses.
SYS$GET_ALIGN_FAULT_DATA buffer ,buffer_size ,return_size
int sys$get_align_fault_data (void *buffer, int buffer_size, int *return_size);
buffer
OpenVMS usage: address type: longword (unsigned) access: read/write mechanism: by 32- or 64-bit reference
The user buffer in which the alignment fault data is to be stored. The buffer is the 32- or 64-bit address of this user buffer.buffer_size
OpenVMS usage: byte count type: longword (signed) access: read mechanism: by value
The size, in bytes, of the buffer specified by the buffer argument.return_size
OpenVMS usage: longword_signed type: longword (signed) access: write mechanism: by 32- or 64-bit reference
The amount of data, in bytes, stored in the buffer. The return_size argument is the 32- or 64-bit address of a naturally aligned longword into which the service returns the size of the buffer. The return_size is set to 0 if there is no data in the buffer.
The Get Alignment Fault Data service obtains data from the user image alignment fault buffer if buffered user alignment fault data reporting has been enabled.When buffered user alignment fault data reporting is enabled, the operating system writes each alignment fault into a user-defined buffer. The user must poll this buffer periodically to read the data.
The user must call the $START_ALIGN_FAULT_REPORT service to enable buffered user alignment fault data reporting.
For more information about buffered user alignment fault data reporting, see the $START_ALIGN_FAULT_REPORT system service.
None
None
$GET_SYS_ALIGN_FAULT_DATA, $INIT_SYS_ALIGN_FAULT_REPORT, $PERM_DIS_ALIGN_FAULT_REPORT, $PERM_REPORT_ALIGN_FAULT, $START_ALIGN_FAULT_REPORT, $STOP_ALIGN_FAULT_REPORT, $STOP_SYS_ALIGN_FAULT_REPORT
SS$_NORMAL The service completed successfully. SS$_ACCVIO The buffer named in the buffer argument is not accessible. SS$_AFR_NOT_ENABLED Alignment fault reporting has not been enabled. SS$_BADPARAM The buffer size is smaller than the minimum defined by the AFR$K_USER_LENGTH
symbol.
On Alpha systems, returns information about the exception context for a given arithmetic exception.
SYS$GET_ARITH_EXCEPTION sigarg ,mcharg ,buffer
int sys$get_arith_exception (void *sigarg, void *mcharg, void *buffer);
sigarg
OpenVMS usage: signal array type: vector_longword_signed access: read only mechanism: by reference
Address of the signal array for the given arithmetic exception.mcharg
OpenVMS usage: mech array type: vector_quadword_unsigned access: read only mechanism: by reference
Address of the mechanism array for the given arithmetic exception.buffer
OpenVMS usage: vector_quadword type: vector_quadword_unsigned access: write only mechanism: by descriptor
Four-quadword buffer to receive additional exception context. The buffer argument is the address of a descriptor that points to this buffer.
The Get Arithmetic Exception Information service returns, to the buffer specified by the buffer argument, the following information for a given arithmetic exception in an array of quadwords:
- First quadword, the PC of the triggering instruction in the trap shadow
- Second quadword, a copy of the triggering instruction
- Third quadword, the exception summary
- Fourth quadword, the register write mask
None
None
SS$_NORMAL The service completed successfully. SS$_ACCVIO The specified buffer cannot be written. SS$_BADBUFLEN The specified buffer length is invalid or out of range.
On Alpha systems, gets information about a specified virtual region.This service accepts 64-bit addresses.
SYS$GET_REGION_INFO function_code ,region_id_64 ,start_va_64 , nullarg ,buffer_length ,buffer_address_64 ,return_length_64
int sys$get_region_info (unsigned int function_code, struct _generic_64 *region_id_64, void *start_va_64, void *reserved, unsigned int buffer_length, void *buffer_address_64, unsigned int *return_length_64);
function_code
OpenVMS usage: function code type: longword (unsigned) access: read only mechanism: by value
Function code specifying how the information you are requesting should be looked up. All function codes return region summary information in the return buffer in the format of the Region Summary Buffer. The Region Summary Buffer format is shown in Table SYS-12. If less buffer space is specified than the length of the Region Summary Buffer, only the amount of information requested is returned. If more buffer space is specified than the length of the Region Summary Buffer, the service will fill in the buffer. The return length will reflect the amount of useful information written to the buffer, the size of the Region Summary Buffer.The file VADEF.H in SYS$STARLET_C.TLB and the $VADEF macro in STARLET.MLB define a symbolic name for each function code. The following function codes are defined:
Symbolic Name Description VA$_REGSUM_BY_ID Return the region summary information for the region whose ID is specified in the region_id_64 argument. VA$_REGSUM_BY_VA Return the region summary information for the region that contains the virtual address specified in the start_va_64 argument. VA$_NEXT_REGSUM_BY_VA Return the region summary information for the region containing the starting address. If the starting address is not in a region, return the region summary information for the next region with a starting address higher than the specified address. Note: For the VA$_NEXT_REGSUM_BY_VA function, OpenVMS checks for a start_va_64 argument in the inaccessible address range in P2 space. If it finds one, OpenVMS adjusts the address to account for the discontinuity. For more information about the layout of the 64-bit virtual address space, see the OpenVMS Alpha Guide to 64-Bit Addressing and VLM Features.
This function code can be used for wildcard operations. See the description of the start_va_64 argument for information on how to program a wildcard operation on regions.
region_id
OpenVMS usage: region identifier type: quadword (unsigned) access: read only mechanism: by 32- or 64-bit reference
The region ID associated with the region about which information is requested. This argument is read only if the function code VA$_REGSUM_BY_ID is specified.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_va_64
OpenVMS usage: input address type: quadword address access: read only mechanism: by value
Virtual address associated with region about which information is requested. This argument is read only if the function_code argument is VA$_REGSUM_BY_VA or VA$_NEXT_REGSUM_BY_VA.If the function_code argument is VA$_REGSUM_BY_VA, this argument is a virtual address within the region about which you are requesting information.
To perform a wildcard search on all regions, specify VA$_NEXT_REGSUM_BY_VA as the function code and begin with the start_va_64 argument specified as -1. For subsequent calls, specify start_va_64 as the sum of the previous region's start address and length. Call the $GET_REGION_INFO service in a loop until the condition SS$_NOMOREREG is returned.
Note
Before performing the lookup function, OpenVMS sign-extends the 64-bit starting address so that it represents a properly formed virtual address for the CPU.nullarg
OpenVMS usage: null_arg type: longword (unsigned) access: read only mechanism: by value
Placeholding argument reserved to Compaq.buffer_length
OpenVMS usage: longword_unsigned type: longword (unsigned) access: read only mechanism: by value
Length of the buffer into which information is returned.buffer_address_64
OpenVMS usage: varying_arg type: unspecified access: write only mechanism: by 32- or 64-bit reference
The 32- or 64-bit virtual address of a quadword-aligned buffer into which to return information if the buffer_length argument is nonzero.This argument is ignored if the buffer_length argument is zero.
Table SYS-12 Region Summary Buffer Format Field name Meaning Field Size (Bytes) Field Offset (Decimal) VA$L_FLAGS Flags used when region was created 4 8 VA$L_REGION_PROTECT Create and owner mode of region 4 12 VA$Q_REGION_ID Region identifier 8 0 VA$PQ_START_VA Starting (lowest) virtual address of region 8 16 VA$Q_REGION_SIZE Total length of region 8 24 VA$PQ_FIRST_FREE_VA First free virtual address in region 8 32 VA$C_REGSUM_LENGTH Length of Region Summary Buffer constant 40 The file VADEF.H in SYS$STARLET_C.TLB and the $VADEF MACRO in STARLET.MLB define the REGSUM structure.
return_length_64
OpenVMS usage: longword_unsigned type: longword (unsigned) access: write only mechanism: by 32- or 64-bit reference
The 32- or 64-bit virtual address of a naturally aligned longword into which the service returns the length of the information in bytes.
The Get Information About a Specified Virtual Region service is a kernel mode service that can be called from any mode. This service gets the requested information about the specified region or the next region in a wildcard search. If the returned value of this service is not a successful condition value, a value cannot be returned in the memory locations pointed to by the buffer_address_64 or return_length_64 arguments.None
None
$CREATE_REGION_64, $DELETE_REGION_64
SS$_NORMAL The service completed successfully. SS$_ACCVIO The buffer_address_64 argument or the return_length_64 argument cannot be written by the caller. SS$_BADPARAM Unrecognized function code. SS$_IVREGID Invalid region ID specified in conjunction with the VA$_REGSUM_BY_ID function code. SS$_NOMOREREG No region at a higher address than specified in the start_va_64 argument, which was specified in conjunction with the wildcard function code VA$_NEXT_REGSUM_BY_VA. SS$_PAGNOTINREG The value specified in the start_va_64 argument is not within a region and was specified in conjunction with the function code VA$_REGSUM_BY_VA.
Retrieves the security characteristics of an object.
SYS$GET_SECURITY [clsnam] ,[objnam] ,[objhan] ,[flags] ,[itmlst] ,[contxt] ,[acmode]
int sys$get_security ( void *clsnam, void *objnam, unsigned int *objhan, unsigned int flags, void *itmlst, unsigned int *contxt, unsigned int *acmode);
clsnam
OpenVMS usage: char_string type: character-coded text string access: read only mechanism: by descriptor
Name of the object class. The clsnam argument is the address of a descriptor pointing to a string containing the name of the object class. The following is a list of protected object class names:
- CAPABILITY
- COMMON_EVENT_CLUSTER
- DEVICE
- FILE
- GROUP_GLOBAL_SECTION
- ICC_ASSOCIATION
- LOGICAL_NAME_TABLE
- QUEUE
- RESOURCE_DOMAIN
- SECURITY_CLASS
- SYSTEM_GLOBAL_SECTION
- VOLUME
objnam
OpenVMS usage: char_string type: character-coded text string access: read only mechanism: by descriptor
Name of the protected object whose associated security profile is going to be retrieved. The objnam argument is the address of a descriptor pointing to a string containing the name of the protected object.The format of an object name is class specific. The following table lists object names and describes their formats.
Object Class Object Name Format CAPABILITY A character string. Currently, the only capability object is VECTOR. COMMON_EVENT_CLUSTER Name of the event flag cluster, as defined in the Associate Common Event Flag Cluster ($ASCEFC) system service. DEVICE Standard device specification, described in the OpenVMS User's Manual. FILE Standard file specification, described in the OpenVMS User's Manual. GROUP_GLOBAL_SECTION Section name, as defined in the Create and Map Section ($CRMPSC) system service. ICC_ASSOCIATION ICC security object name node::association_name. The special node name, ICC$::, refers to entries in the clusterwide registry. For registry entries, the Access Access Type does not apply. LOGICAL_NAME_TABLE Table name, as defined in the Create Logical Name Table ($CRELNT) system service. QUEUE Standard queue name, as described in the Send to Job Controller ($SNDJBC) system service. RESOURCE_DOMAIN An identifier or octal string enclosed in brackets. SECURITY_CLASS Any class name shown in column 1, or a class name followed by a period (.) and the template name. Use the DCL command SHOW SECURITY to display possible template names. SYSTEM_GLOBAL_SECTION Section name, as defined in the Create and Map Section ($CRMPSC) system service. VOLUME Volume name or name of the device on which the volume is mounted. objhan
OpenVMS usage: object_handle type: longword (unsigned) access: read only mechanism: by reference
Data structure identifying the object whose associated characteristics are going to be retrieved. The objhan argument is an address of a longword containing the object handle. You can use the objhan argument as an alternative to the objnam argument; for example, channel number clearly specifies the file open on the channel and can serve as an object handle. The following table shows the format of the object classes.
Object Class Object Handle Format COMMON_EVENT_CLUSTER Event flag number DEVICE Channel number FILE Channel number RESOURCE_DOMAIN Resource domain identifier VOLUME Channel number
flags
OpenVMS usage: flags type: mask_longword access: read only mechanism: by value
Mask specifying processing options. The flags argument is a longword bit vector wherein a bit, when set, specifies the processing option. The flags argument requires the contxt argument. The following table describes each flag.
Symbolic Name Description OSS$M_RELCTX Release the context structure at the completion of this request. OSS$M_WLOCK Maintain a write lock on the security profile at the completion of this request. $GET_SECURITY ignores the flag if the context has already been established. These symbolic names are defined in the $OSSDEF macro. You construct the flags argument by specifying the symbolic names of each flag.
itmlst
OpenVMS usage: item_list_3 type: longword (unsigned) access: read only mechanism: by reference
Item list specifying which information about the process or processes is to be returned. The itmlst argument is the address of a list of item descriptors, each of which describes an item of information. The list of item descriptors is terminated by a longword of 0.With the item list, the user retrieves the protected object's characteristics. The user defines which security characteristics to retrieve. If this argument is not present, only the flags argument is processed. Without the itmlst argument, you can only manipulate the security profile lock or release contxt resources.
The following diagram depicts a single item descriptor.
Previous | Next | Contents | Index |
privacy and legal statement | ||
4527PRO_054.HTML |