Process scheduling

Fixed priority parameter table fp_dptbl

The scheduler uses fp_dptbl(4), the fixed priority scheduler (or dispatcher) parameter table, to manage fixed priority processes. A default version of fp_dptbl is delivered with the system, and you can change it to suit local needs. fp_dptbl is specified in the space.c file in the /etc/conf/pack.d/fp directory. It is built into the kernel as part of system configuration if the /etc/conf/sdevice.d/fp file has a ``Y'' in the second column:

   fp Y 1 0 . . . .
You can adjust the size and values of fp_dptbl depending on the applications on your system. This example is part of an fp_dptbl:

fp_glbpri fp_qntm
100, 100,
101, 80,
102, 60,
103, 40,
104, 20,
105, 10,

The highest priority specified in this table is 105, so LWPs with priority 105 always run before any other LWPs. If it does not sleep, an LWP with priority 105 runs for 10 clock ticks before the scheduler looks for another LWP to run. (Because 105 is the highest priority, an LWP at this priority would be preempted after its time slice only if there were another LWP with priority 105.) LWPs at priority 104 run for 20 clock ticks, and so on. The lowest fixed priority specified in this table is 100; a process with priority 100 runs for 100 clock ticks.

The default priority in the fixed priority class is the lowest priority configured in fp_dptbl. This is the priority assigned to an LWP if it is changed to a fixed priority LWP and no priority is specified. This is also the priority assigned to the init process and all its children if INITCLASS is set to FP.

Although fp_dptbl contains default time slices for fixed priorities, users with the appropriate privilege can set fixed priorities and time slices independently. Users can specify any time slice they want for a fixed priority LWP, including an infinite time slice. The system assumes that fixed priority LWPs voluntarily give up the CPU so other work can get done.

Next topic: Fixed class parameter table fc_dptbl
Previous topic: Time-Sharing parameter table ts_dptbl

© 2004 The SCO Group, Inc. All rights reserved.
UnixWare 7 Release 7.1.4 - 22 April 2004