Previous | Contents | Index |
If you specify astadr, the AST routine executes at the same access mode as the caller of the $GETJPI service.
OpenVMS usage: | user_arg |
type: | longword (unsigned) |
access: | read only |
mechanism: | by value |
JPI$_ACCOUNT
Returns the account name of the process, which is an 8-byte string, filled with trailing blanks if necessary.JPI$_APTCNT
Returns, in pagelets , the active page table count of the process, which is a longword integer value.JPI$_ASTACT
Returns the names of the access modes having active ASTs. This information is returned in a longword bit vector. When bit 0 is set, an active kernel mode AST exists; bit 1, an executive mode AST; bit 2, a supervisor mode AST; and bit 3, a user mode AST.JPI$_ASTCNT
Returns a count of the remaining AST quota, which is a longword integer value.JPI$_ASTEN
Returns a longword bit vector that indicates for each access mode whether ASTs are enabled for that mode. When bit 0 is set, Kernel mode has ASTs enabled; bit 1, Executive mode; bit 2, Supervisor mode; and bit 3, User mode.JPI$_ASTLM
Returns the AST limit quota of the process, which is a longword integer value.JPI$_AUTHPRI
Returns the authorized base priority of the process, which is a longword integer value. The authorized base priority is the highest priority a process without ALTPRI privilege can attain by means of the $SETPRI service.JPI$_AUTHPRIV
Returns the privileges that the process is authorized to enable. These privileges are returned in a quadword privilege mask and are defined by the $PRVDEF macro.JPI$_BIOCNT
Returns a count of the remaining buffered I/O quota, which is a longword integer value.JPI$_BIOLM
Returns the buffered I/O limit quota of the process, which is a longword integer value.JPI$_BUFIO
Returns a count of the buffered I/O operations of the process, which is a longword integer value.JPI$_BYTCNT
Returns the remaining buffered I/O byte count quota of the process, which is a longword integer value.JPI$_BYTLM
Returns the buffered I/O byte count limit quota of the process, which is a longword integer value.JPI$_CASE_LOOKUP_PERM
On Alpha and Integrity server systems, returns information about the file name lookup case sensitivity of a specified process. This value is set for the life of the process unless the style is set again. Values are 0 (PPROP$K_CASE_BLIND) and 1 (PPROP$K_CASE_SENSITIVE).For additional information, see the Guide to OpenVMS File Applications.
JPI$_CASE_LOOKUP_TEMP
On Alpha and Integrity server systems, returns information about the file name lookup case sensitivity of a specified process. This value is set only for the life of the image. Values are 0 (PPROP$K_CASE_BLIND) and 1 (PPROP$K_CASE_SENSITIVE).For additional information, see the Guide to OpenVMS File Applications.
JPI$_CHAIN
Processes another item list immediately after processing the current one. The buffer address field in the item descriptor specifies the address of the next item list to be processed. You must specify the JPI$_CHAIN item code last in the item list.You can chain together 32-bit and 64-bit item lists.
JPI$_CLASSIFICATION
On Alpha and Integrity server systems, returns, as a 20-byte padded string, the current MAC classification stored in the PSB.JPI$_CLINAME
Returns the name of the command language interpreter that the process is currently using. Because the CLI name can include up to 39 characters, the buffer length field in the item descriptor should specify 39 bytes.JPI$_CPU_ID
Returns, as a longword integer, the ID of the CPU on which the process is running or on which it last ran. This value is returned as --1 if the system is not a multiprocessor.JPI$_CPULIM
Returns the CPU time limit of the process, which is a longword integer value.JPI$_CPUTIM
Returns the process's accumulated CPU time in 10-millisecond ticks, which is a longword integer value.JPI$_CREPRC_FLAGS
Returns the flags specified by the stsflg argument in the $CREPRC call that created the process. The flags are returned as a longword bit vector.JPI$_CURPRIV
Returns the current privileges of the process. These privileges are returned in a quadword privilege mask and are defined by the $PRVDEF macro.JPI$_CURRENT_AFFINITY_MASK
On Alpha and Integrity server systems, returns the current explicit affinity mask for the associated kernel thread.JPI$_CURRENT_USERCAP_MASK
On Alpha and Integrity server systems, returns the current user capability mask for the associated kernel thread.JPI$_DEADLOCK_WAIT
Returns the per-process deadlock wait ticks. This value is in 100-nsec units.JPI$_DFMBC
Returns the default multibuffer count for a process as a longword integer value.JPI$_DFPFC
Returns the default page fault cluster size of the process, which is a longword integer value measured in pagelets .JPI$_DFWSCNT
Returns, in pagelets , the default working set size of the process, which is a longword integer value.JPI$_DIOCNT
Returns the remaining direct I/O quota of the process, which is a longword integer value.JPI$_DIOLM
Returns the direct I/O quota limit of the process, which is a longword integer value.JPI$_DIRIO
Returns a count of the direct I/O operations of the process, which is a longword integer value.JPI$_EFCS
Returns the state of the process's local event flags 0 through 31 as a longword bit vector.JPI$_EFCU
Returns the state of the process's local event flags 32 through 63 as a longword bit vector.JPI$_EFWM
Returns the event flag wait mask of the process, which is a longword bit vector.JPI$_ENQCNT
Returns the remaining lock request quota of the process, which is a longword integer value.JPI$_ENQLM
Returns the lock request quota of the process, which is a longword integer value.JPI$_EXCVEC
Returns the address of a list of exception vectors for the process. Each exception vector in the list is a longword. There are eight vectors in the list: these are, in order, a primary and a secondary vector for kernel mode access, for executive mode access, for supervisor mode access, and for user mode access.The $GETJPI service cannot return this information for any process other than the calling process; if you specify this item code and the process is not the calling process, $GETJPI returns the value 0 in the buffer.
JPI$_FILCNT
Returns the remaining open file quota of the process, which is a longword integer value.JPI$_FILLM
Returns the open file limit quota of the process, which is a longword value.JPI$_FINALEXC
Returns the address of a list of final exception vectors for the process. Each exception vector in the list is a longword. There are four vectors in the list, one for each access mode, in this order: kernel, executive, supervisor, and user.The $GETJPI service cannot return this information for any process other than the calling process; if you specify this item code and the process is not the calling process, $GETJPI returns the value 0 in the buffer.
JPI$_FREP0VA
Returns the address of the first free page at the end of the program region (P0 space) of the process.JPI$_FREP1VA
Returns the address of the first free page at the end of the control region (P1 space) of the process.JPI$_FREPTECNT
Returns the number of pagelets that the process has available for virtual memory expansion.On Alpha and Integrity server systems, the value returned requires a quadword of storage. If the buffer size supplied is not equal to 8 bytes, and the number of free pagelets exceeds the maximum value that can be represented in a longword, $GETJPI returns the largest positive 32-bit integer: 2147483647.
JPI$_GETJPI_CONTROL_FLAGS
The JPI$_GETJPI_CONTROL_FLAGS item code, which is specified in the $GETJPI item list, provides additional control over $GETJPI; therefore, $GETJPI might be unable to retrieve all the data requested in an item list because JPI$_GETJPI_CONTROL_FLAGS requests that $GETJPI not perform certain actions that might be necessary to collect the data. For example, a $GETJPI control flag might instruct the calling program not to retrieve a process that has been swapped out of the balance set.If $GETJPI is unable to retrieve any data item because of the restrictions imposed by the control flags, it returns the data length as 0. To verify that $GETJPI received a data item, examine the data length to be sure that it is not 0. To ensure the verification, be sure to specify the return length for each item in the $GETJPI item list when any of the JPI$_GETJPI_CONTROL_FLAGS flags is used.
Unlike other $GETJPI item codes, the JPI$_GETJPI_CONTROL_FLAGS item is an input item. The item list entry should specify a longword buffer. The desired control flags should be set in this buffer.
Because the JPI$_GETJPI_CONTROL_FLAGS item code tells $GETJPI how to interpret the item list, it must be the first entry in the $GETJPI item list. The error code SS$_BADPARAM is returned if it is not the first item in the list.
The JPI$_GETJPI_CONTROL_FLAGS item code includes the following flags:
Flag Description JPI$M_NO_TARGET_INSWAP Does not retrieve a process that has been swapped out of the balance set. This control flag is used to avoid adding the load of swapping processes into a system. By using this control flag and requesting information from a process that has been swapped out, the following occurs:
- Any data stored in the virtual address space of the process is not accessible.
- Any data stored in the process header (PHD) might not be accessible.
- Any data stored in resident data structures, such as the process control block (PCB) or the job information block (JIB), is accessible.
You must examine the return length of an item to verify that the item was retrieved.
JPI$M_NO_TARGET_AST Does not deliver a kernel mode AST to the target process. This control flag is used to avoid executing a target process to retrieve information. By using this control flag and not delivering an AST to a target process, the following occurs:
- Any data stored in the virtual address space of the process is not accessible.
- Any data stored in system data structures, such as the process header (PHD), the process control block (PCB), or the job information block (JIB), is accessible.
You must examine the return length of an item to verify that the item was retrieved.
The use of this control flag also implies that $GETJPI does not swap in a process, because $GETJPI would only bring a process into memory to deliver an AST to that process.
JPI$M_IGNORE_TARGET_STATUS Attempts to retrieve as much information as possible, even though the process might be suspended or is being deleted. This control flag is used to retrieve all possible information from a process. JPI$M_THREAD Sets the wildcard mode to return information on all of the process's kernel threads beginning with the initial kernel thread. JPI$_GPGCNT
Returns, in pagelets, the process's global page count in the working set, which is a longword integer value.JPI$_GRP
Returns, as a longword integer value, the group number of the process's UIC.JPI$_HOME_RAD
Returns the home RAD. RAD is supported on AlphaServer GS series systems and starting from OpenVMS Version 8.4, support is extended to NUMA capable Integrity servers.JPI$_IMAGECOUNT
Returns, as a longword integer value, the number of images that have been run down for the process.JPI$_IMAGE_AUTHPRIV
On Alpha and Integrity server systems, returns the authorized privilege mask of the installed image.These privileges are returned in a quadword privilege mask and are defined by the $PRVDEF macro.
JPI$_IMAGE_PERMPRIV
On Alpha and Integrity server systems, returns the permanent (default) privilege mask of the installed image.These privileges are returned in a quadword privilege mask and are defined by the $PRVDEF macro.
JPI$_IMAGE_RIGHTS
Returns the binary content of the image rights list as an array of quadword identifiers. Each entry consists of a longword identifier value and longword identifier attributes, as shown in Table SYS-42. The image rights list is a set of identifiers associated with a protected subsystem image. When a process runs a protected subsystem, the subsystem rights are automatically added to the process's image rights list. These identifiers are subsequently removed during image rundown. Allocate a buffer that is sufficient to hold the image rights list, because $GETJPI returns only as much of the list as will fit in the buffer.
Table SYS-42 Attributes of an Identifier Symbolic Name Description KGB$M_DYNAMIC Identifier can be enabled or disabled. KGB$M_RESOURCE Resources can be charged to the identifier.
These privileges are returned in a quadword privilege mask and are defined by the $PRVDEF macro.
Mode Name | Value |
---|---|
JPI$K_DETACHED | 0 |
JPI$K_NETWORK | 1 |
JPI$K_BATCH | 2 |
JPI$K_LOCAL | 3 |
JPI$K_DIALUP | 4 |
JPI$K_REMOTE | 5 |
Symbolic Name | Description |
---|---|
JPI$M_NEW_MAIL_AT_LOGIN | User had new mail messages waiting at login. |
JPI$M_PASSWORD_CHANGED | User changed the primary password during login. |
JPI$M_PASSWORD_EXPIRED | User's primary password expired during login. |
JPI$M_PASSWORD_WARNING | System gave the user a warning at login that the account's primary password would expire within 5 days. |
JPI$M_PASSWORD2_CHANGED | Account's secondary password was changed during login. |
JPI$M_PASSWORD2_EXPIRED | Account's secondary password expired during login. |
JPI$M_PASSWORD2_WARNING | System gave the user a warning at login that the account's secondary password would expire within 5 days. |
Mode Name | Value |
---|---|
JPI$K_OTHER | 0 |
JPI$K_NETWORK | 1 |
JPI$K_BATCH | 2 |
JPI$K_INTERACTIVE | 3 |
These privileges are returned in a quadword privilege mask and are defined by the $PRVDEF macro.
Because this number is a quadword, the buffer length field in the item descriptor should specify 8 (bytes).
Because this number is a quadword, the buffer length field in the item descriptor should specify 8 (bytes).
Because this number is a quadword, the buffer length field in the item descriptor should specify 8 (bytes).
You can use the process index number as an index into system global sections. Because the process index number is unique for each process, its use as an index into system global sections guarantees no collisions with other system processes accessing those sections.
The process index is intended to serve users who formerly used the low-order word of the PID as an index number.
State | Description |
---|---|
SCH$C_CEF | Common event flag wait |
SCH$C_COM | Computable |
SCH$C_COMO | Computable, out of balance set |
SCH$C_CUR | Current process |
SCH$C_COLPG | Collided page wait |
SCH$C_FPG | Free page wait |
SCH$C_HIB | Hibernate wait |
SCH$C_HIBO | Hibernate wait, out of balance set |
SCH$C_LEF | Local event flag wait |
SCH$C_LEFO | Local event flag wait, out of balance set |
SCH$C_MWAIT | Mutex and miscellaneous resource wait |
SCH$C_PFW | Page fault wait |
SCH$C_SUSP | Suspended |
SCH$C_SUSPO | Suspended, out of balance set |
Symbol | Description |
---|---|
PCB$V_ASTPEN | AST pending |
PCB$V_BATCH | Process is a batch job |
PCB$V_DELPEN | Delete pending |
PCB$V_DISAWS | Disable automatic working set adjustment |
PCB$V_FORCPEN | Force exit pending |
PCB$V_HARDAFF | Process bound to a particular CPU |
PCB$V_HIBER | Hibernate after initial image activate |
PCB$V_INQUAN | Initial quantum in progress |
PCB$V_INTER | Process is an interactive job |
PCB$V_LOGIN | Log in without reading authorization file |
PCB$V_NETWRK | Process is a network connect object |
PCB$V_NOACNT | No accounting for process |
PCB$V_NODELET | No delete |
PCB$V_PHDRES | Process header resident |
PCB$V_PREEMPTED | Kernel mode suspend has overridden supervisor mode suspend |
PCB$V_PSWAPM | Process swap mode (1=noswap) |
PCB$V_PWRAST | Power fail AST |
PCB$V_RECOVER | Process can recover locks |
PCB$V_RES | Resident, in balance set |
PCB$V_RESPEN | Resume pending, skip suspend |
PCB$V_SECAUDIT | Mandatory security auditing |
PCB$V_SOFTSUSP | Process is in supervisor mode suspend |
PCB$V_SSFEXC | System service exception enable (kernel) |
PCB$V_SSFEXCE | System service exception enable (exec) |
PCB$V_SSFEXCS | System service exception enable (super) |
PCB$V_SSFEXCU | System service exception enable (user) |
PCB$V_SSRWAIT | System service resource wait disable |
PCB$V_SUSPEN | Suspend pending |
PCB$V_WAKEPEN | Wake pending, skip hibernate |
PCB$V_WALL | Wait for all events in mask |
Symbol | Description |
---|---|
PCB$V_NOUNSHELVE | Process does not automatically unshelve files. |
Previous | Next | Contents | Index |