HP 3000 Manuals

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