Linux-SRT User's Manual (5)

Name

/etc/qosrc - QOS configuration file

Description

Lines in the qosrc file must conform to one of the following formats (anything else is treated as a comment):

1. "pattern" nice pri per P cpu Q A I
2. "pattern" <reserve>            A I
3. <reserve> nice pri per P cpu Q

Lines of type 3 define a named reserve for later use (no QOS is allocated until a task joins that reserve). Lines of type 1 and 2 associate a program with a reserve (automatic or named respectively).

Lines of type 1 and 2 are used by setp when invoked with the "lookup reserve" option, and by autoqosd when tasks perform an exec() call. Lines of type 3 are used by autoqosd when it starts up, in order to pre-register named reserves.

Key to fields:

A = Auto
I = Inherit
P = Policy
Q = Overrun policy
nice = nice
pri = static priority
per = period (ms)
cpu = slice (%)

Policies: F = FIFO, R = RR, O = OTHER, Q = QOS, I = IDLE, P = PAUSE.

"Auto" applies parameters at task startup (otherwise they are only applied at the user's request, via setp or the window manager integration).
"Inherit" specifies if children should inherit these parameters.

You can use wildcards and include arguments in command lines to provide context. Wildcards correspond to UNIX shell semantics (* and ?).

Use 0 and 1 for binary flags. Put zeroes in fields which don't apply.

Example

# /etc/qosrc
#
# cmdline       nice  pri  per   P  cpu   Q   A I
# -----------------------------------------------

"xmms*"            0    0   50   Q   50   P   1 1
"kmp3*"            0    0   50   Q   25   O   1 1
"xanim"            0   30   50   F   50   O   1 1
"*realplay*"     -20    0   50   O   90   I   1 1
"xlock"            0    0  100   O   10   I   1 1
"krecord"          <fifo>                     1 1
"kmedia"           <fifo>                     1 1
"*"                <default>                  0 1

<default>          0    0   50   Q   50   O
<ui>               0    0   50   Q    5   O
<idle>             0    0    0   I    0   P
<pause>            0    0    0   P    0   P
<fifo>             0   30    0   F    0   P
<safe>             0   30   50   F   90   O
<ceiling>          0    0   50   O   75   P

See also

setp, autoqosd

Bugs

The /etc/qosrc file is system-wide. User preferences in ~/.qosrc are planned for future releases.

Author

David Ingram <dmi@uk.research.att.com>