[an error occurred while processing this directive]

HP OpenVMS Systems Documentation

Content starts here

OpenVMS Programming Concepts Manual


Previous Contents Index

Chapter 4
4 Process Control
     4.1     Using Process Control for Programming Tasks
         4.1.1         Determining Privileges for Process Creation and Control
         4.1.2         Determining Process Identification
         4.1.3         Qualifying Process Naming Within Groups
     4.2     Obtaining Process Information
         4.2.1         Using the PID to Obtain Information
         4.2.2         Using the Process Name to Obtain Information
         4.2.3         Using SYS$GETJPI and LIB$GETJPI
             4.2.3.1             Requesting Information About a Single Process
             4.2.3.2             Requesting Information About All Processes on the Local System
         4.2.4         Using SYS$GETJPI with SYS$PROCESS_SCAN
             4.2.4.1             Using SYS$PROCESS_SCAN Item List and Item-Specific Flags
             4.2.4.2             Requesting Information About Processes That Match One Criterion
             4.2.4.3             Requesting Information About Processes That Match Multiple Values for One Criterion
             4.2.4.4             Requesting Information About Processes That Match Multiple Criteria
         4.2.5         Specifying a Node as Selection Criterion
             4.2.5.1             Checking All Nodes on the Cluster for Processes
             4.2.5.2             Checking Specific Nodes on the Cluster for Processes
             4.2.5.3             Conducting Multiple Simultaneous Searches with SYS$PROCESS_SCAN
         4.2.6         Programming with SYS$GETJPI
             4.2.6.1             Using Item Lists Correctly
             4.2.6.2             Improving Performance by Using Buffered $GETJPI Operations
             4.2.6.3             Fulfilling Remote SYS$GETJPI Quota Requirements
             4.2.6.4             Using the SYS$GETJPI Control Flags
         4.2.7         Using SYS$GETLKI
         4.2.8         Setting Process Privileges
     4.3     Changing Process and Kernel Threads Scheduling
     4.4     Using Affinity and Capabilities in CPU Scheduling (Alpha Only)
         4.4.1         Defining Affinity and Capabilities
             4.4.1.1             Using Affinity and Capabilities with Caution
         4.4.2         Types of Capabilities
         4.4.3         Looking at User Capabilities
         4.4.4         Using the Capabilities System Services
         4.4.5         Types of Affinity
             4.4.5.1             Implicit Affinity
             4.4.5.2             Explicit Affinity
     4.5     Using the Class Scheduler in CPU Scheduling
         4.5.1         Specifications for the Class_Schedule Command
             4.5.1.1             The Add Sub-Command
             4.5.1.2             The Delete Sub-Command
             4.5.1.3             The Modify Sub-Command
             4.5.1.4             The Show Sub-Command
             4.5.1.5             The Suspend Sub-Command
             4.5.1.6             The Resume Sub-Command
         4.5.2         The Class Scheduler Database
             4.5.2.1             The Class Scheduler Database and Process Creation
         4.5.3         Determining If a Process Is Class Scheduled
         4.5.4         The SYS$SCHED System Service
     4.6     Changing Process Name
     4.7     Accessing Another Process's Context
         4.7.1         Reading and Writing in the Address Space of Another Process (Alpha Only)
             4.7.1.1             EXE$READ_PROCESS and EXE$WRITE_PROCESS
    Command 1     EXE$READ_PROCESS
    Command 2     EXE$WRITE_PROCESS
         4.7.2         Writing an Executive Image (Alpha Only)
             4.7.2.1             INITIALIZATION_ROUTINE Macro (Alpha Only)
    Command 3     INITIALIZATION_ROUTINE
             4.7.2.2             Linking an Executive Image (Alpha Only)
             4.7.2.3             Loading an Executive Image (Alpha Only)
             4.7.2.4             LDR$LOAD_IMAGE (Alpha Only)
    Command 4     LDR$LOAD_IMAGE
             4.7.2.5             LDR$UNLOAD_IMAGE (Alpha Only)
    Command 5     LDR$UNLOAD_IMAGE
     4.8     Synchronizing Programs by Specifying a Time for Program Execution
         4.8.1         Obtaining the System Time
             4.8.1.1             Executing a Program at a Specified Time
             4.8.1.2             Executing a Program at Timed Intervals
         4.8.2         Placing Entries in the System Timer Queue
     4.9     Controlling Kernel Threads and Process Execution
         4.9.1         Process Hibernation and Suspension
             4.9.1.1             Using Process Hibernation
             4.9.1.2             Using Alternative Methods of Hibernation
             4.9.1.3             Using SYS$SUSPND
         4.9.2         Passing Control to Another Image
             4.9.2.1             Invoking a Command Image
             4.9.2.2             Invoking a Noncommand Image
         4.9.3         Performing Image Exit
             4.9.3.1             Performing Image Rundown
             4.9.3.2             Initiating Rundown
             4.9.3.3             Performing Cleanup and Rundown Operations
             4.9.3.4             Initiating Image Rundown for Another Process
         4.9.4         Deleting a Process
             4.9.4.1             Deleting a Process By Using System Services
             4.9.4.2             Terminating Mailboxes


Previous Next Contents Index