[fpc-devel] Linux thread priority mess (and possible implementation)
Michael Schnell
mschnell at lumino.de
Thu Jun 24 12:12:29 CEST 2010
The term "priority" is used a bit misleadingly. Same for "real-time"
AFAIR:
- There are 100 basic priorities (for realtime-tasks) theses can only
be assigned to processes/thread if you have the appropriate rights.
- Theses priorities are strict. If a process/thread with a certain
priority wants to run, a thread with a lower priority never runs (unless
there is another CPU).
- If there are multiple processes/threads with the same priority, they
are scheduled according to the Scheduling definition (e.g. SHED-_FIFO)
- Additionally there is another "non-realtime" priority lower than all
others. Same is used for standard user processes/threads
- Same is scheduled using time slices, that are dynamically controlled
(e.g. by a "fair scheduler algorithm". there are several such algorithms
that can be configured)
- The time-slice allocation can be influenced by (sub-) "priories"
("nice"-definitions) -20 ... + 20 or something like that
-Michael
More information about the fpc-devel
mailing list