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 ``fp_glbpri'' column contains global priorities (the priorities
that determine when an LWP runs).
Higher numbers run first.
-
The ``fp_qntm'' column contains the default time slice (or
quantum) associated with the priority in the ``fp_glbpri'' column;
this is the maximum amount of time an LWP
with this priority can use the CPU before the scheduler gives another
LWP a chance.
This time slice is specified in clock ticks.
(The system clock ticks HZ times per second, where
HZ is a hardware-dependent constant defined in the
param_p.h header file.)
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
© 2007 The SCO Group, Inc. All rights reserved.
SCO OpenServer Release 6.0.0 -- 05 June 2007