Traditional CPU Scheduling [ Using the HP 3000 Workload Manager ] MPE/iX 5.0 Documentation
Using the HP 3000 Workload Manager
Traditional CPU Scheduling
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.
MPE/iX 5.0 Documentation