名 前
sched_get_priority_max, sched_get_priority_min − 静 的 プ ラ イ オ リ テ ィ の 範 囲 を 取 得 す る
書 式
#include <sched.h>
int sched_get_priority_max(int policy);
int sched_get_priority_min(int policy);
説 明
sched_get_priority_max() は policy に よ っ て 指 定 さ れ た ス ケ ジ ュ ー リ ン グ の ア ル ゴ リ ズ ム で 使 用 さ れ る プ ラ イ オ リ テ ィ の 最 大 値 を 返 す 。 sched_get_priority_min() は policy に よ っ て 指 定 さ れ た ス ケ ジ ュ ー リ ン グ の ア ル ゴ リ ズ ム で 使 用 さ れ る プ ラ イ オ リ テ ィ の 最 小 値 を 返 す 。 サ ポ ー ト さ れ る policy の 値 は SCHED_FIFO、 SCHED_RR、 SCHED_OTHER、 SCHED_BATCH, SCHED_IDLE, SCHED_DEADLINE で あ る 。 こ れ ら の ス ケ ジ ュ ー リ ン グ 方 針 に 関 す る 詳 細 は sched(7) に 書 か れ て い る 。 数 値 的 に 大 き な プ ラ イ オ リ テ ィ 値 を 持 つ プ ロ セ ス は 小 さ な プ ラ イ オ リ テ ィ 値 を 持 つ プ ロ セ ス よ り 前 に ス ケ ジ ュ ー ル さ れ る 。 こ の た め sched_get_priority_max() が 返 す 値 は sched_get_priority_min() が 返 す 値 よ り も 大 き い 。
Linux で は 、 ポ リ シ ー SCHED_FIFO と SCHED_RR で は 1 か ら 99 の 範 囲 の 静 的 プ ラ イ オ リ テ ィ ー を 持 ち 、 そ れ 以 外 の ポ リ シ ー で は プ ラ イ オ リ テ ィ と し て 0 を 持 つ 。 そ れ ぞ れ の 方 針 の ス ケ ジ ュ ー リ ン グ プ ラ イ オ リ テ ィ の 範 囲 は 変 更 す る こ と が で き な い 。 ス ケ ジ ュ ー リ ン グ プ ラ イ オ リ テ ィ の 範 囲 は 他 の POSIX シ ス テ ム と 異 な っ て い る か も し れ な い 。 そ れ で 、 移 植 性 (portable)の あ る ア プ リ ケ ー シ ョ ン で は 仮 想 的 な 範 囲 を 用 い sched_get_priority_max() と sched_get_priority_min() で 与 え ら れ た 間 隔 に マ ッ プ し て 使 用 す る こ と は い い 考 え で あ る 。 POSIX.1−2001 で は SCHED_FIFO と SCHED_RR に お け る 最 大 値 と 最 小 値 の 間 隔 を 少 な く と も 32 に す る こ と を 要 求 し て い る 。
POSIX シ ス テ ム で は sched_get_priority_max() と sched_get_priority_min() は <unistd.h> に _POSIX_PRIORITY_SCHEDULING が 定 義 さ れ て い る 場 合 に の み 使 用 可 能 で あ る 。
返 り 値
成 功 し た 場 合 は sched_get_priority_max() と sched_get_priority_min() は 指 定 さ れ た ス ケ ジ ュ ー リ ン グ 方 針 の プ ラ イ オ リ テ ィ の 最 大 値 /最 小 値 を 返 す 。 エ ラ ー の 場 合 は −1 が 返 さ れ 、 errno が 適 切 に 設 定 さ れ る 。
エ ラ ー
EINVAL 引 き 数 |
policy が 定 義 さ れ て い る ス ケ ジ ュ ー リ ン グ 方 針 と 一 致 し な い 。 |
準 拠
POSIX.1−2001.
関 連 項 目
sched_getaffinity(2), sched_getparam(2), sched_getscheduler(2), sched_setaffinity(2), sched_setparam(2), sched_setscheduler(2), sched(7)
こ の 文 書 に つ い て
こ の man ペ ー ジ は Linux man−pages プ ロ ジ ェ ク ト の リ リ ー ス 3.79 の 一 部 で あ る 。 プ ロ ジ ェ ク ト の 説 明 と バ グ 報 告 に 関 す る 情 報 は http://www.kernel.org/doc/man−pages/ に 書 か れ て い る 。