HPlogo Using the HP 3000 Workload Manager: HP 3000 MPE/iX Computer Systems > Chapter 1 Introducing the Workload Manager

Traditional CPU Scheduling

» 

Technical documentation

Complete book in PDF
» Feedback

 » Table of Contents

 » Glossary

 » Index

In traditional CPU scheduling (prior to MPE/iX Release 5.0), system and user processes run in one of five scheduling subqueues: the AS subqueue, BS subqueue, CS subqueue, DS subqueue and ES subqueue. In this scheme, scheduling subqueue is both an entity and a process attribute.

The scheduling subqueue as an entity has defined characteristics (such as base and limit, the minimum and maximum quantum, timeslice, and the boost property) that determine the scheduling policies of processes running in that subqueue. You can think of the scheduling subqueue as a dynamically changing collection of processes. The scheduling subqueue is a process attribute when, for example, a job is described as “having a priority of CS” or, for example, when “a program is running at DM priority”.

Users with system supervisor (OP) or system manager (SM) capability can affect the behavior of the scheduling subqueues as entities. Such users may alter, or tune, the characteristics of the CS, DS and ES scheduling subqueues. (These subqueues, which collect user processes, are also known as the circular scheduling subqueues). No users, regardless of capability, can alter the characteristics of the AS and BS subqueues, which are reserved for system processes.

Users without special capabilities can influence the scheduling subqueue as a process attribute through one of the following means:

  • Users can choose a scheduling subqueue via the ;PRI= option of the HELLO, RUN or JOB commands. Such a change lasts for the duration of the session, program, or job. Furthermore, the system manager constrains the priority that a user can assign to a process via the MAXPRI option of the NEWUSER, ALTUSER, NEWACCT, or ALTACCT commands.

  • Users can change the scheduling subqueue of a process via the ;PRI= option of the ALTPROC command. Such a change lasts until the process terminates or until the queue attribute is changed again.

  • Programmers (and system managers) can use one of two Link Editor options to determine a program's scheduling subqueue when they are creating an executable program file: the priority_level, to specify the default execution priority at run time or max_priority_level, to specify the maximum priority a program can have at run time. Within this limit, users can alter the program's priority by issuing the ;PRI= option of the RUN command.

  • Programmers can use either the AIFPROCPUT routine or the GETPRIORITY intrinsic to change the scheduling subqueue of a process.

Feedback to webmaster