- 追加された行はこの色です。
- 削除された行はこの色です。
#author("2019-12-26T08:59:59+09:00","default:honma","honma")
#author("2019-12-26T15:07:04+09:00","default:honma","honma")
* 静的プライオリティの範囲 [#c08f2746]
Linuxにおける静的プライオリティの範囲の取得方法
#highlight(c){{
#define _GNU_SOURCE
#include <stdio.h>
#include <stdlib.h>
#include <sched.h>
#include <linux/sched.h>
int main(int argc, char **argv)
{
printf("SCHED_FIFO = %d - %d\n", sched_get_priority_min(SCHED_FIFO), sched_get_priority_max(SCHED_FIFO));
printf("SCHED_RR = %d - %d\n", sched_get_priority_min(SCHED_RR), sched_get_priority_max(SCHED_RR));
printf("SCHED_OTHER = %d - %d\n", sched_get_priority_min(SCHED_OTHER), sched_get_priority_max(SCHED_OTHER));
/*
* SCHED_BATCH, SCHED_IDLE を利用するには _GNU_SOURCE の定義が必要
*/
printf("SCHED_BATCH = %d - %d\n", sched_get_priority_min(SCHED_BATCH), sched_get_priority_max(SCHED_BATCH));
printf("SCHED_IDLE = %d - %d\n", sched_get_priority_min(SCHED_IDLE), sched_get_priority_max(SCHED_IDLE));
/*
* SCHED_DEADLINE は Kernel 3.14以降 で利用可能
* <linux/sched.h> のインクルードが必要
*/
printf("SCHED_DEADLINE = %d - %d\n", sched_get_priority_min(SCHED_DEADLINE), sched_get_priority_max(SCHED_DEADLINE));
return 0;
}
}}
#highlight(end)
#ref(sched_priority_min_max.c)
実行結果
$ ./sched_priority_min_max
SCHED_FIFO = 1 - 99
SCHED_RR = 1 - 99
SCHED_OTHER = 0 - 0
SCHED_BATCH = 0 - 0
SCHED_IDLE = 0 - 0
SCHED_DEADLINE = 0 - 0
参考:[[ 静的プライオリティの範囲を取得する:https://linuxjm.osdn.jp/html/LDP_man-pages/man2/sched_get_priority_max.2.html]]
#htmlinsert(amazon_pc.html);