#author("2019-10-02T08:58:11+09:00","default:honma","honma")
#author("2019-12-26T09:02:54+09:00","default:honma","honma")
* nice値の設定 [#d8aa1fe1]

参考:[[NICE:http://linuxjm.osdn.jp/html/LDP_man-pages/man2/nice.2.html]], [[GETPRIORITY:http://linuxjm.osdn.jp/html/LDP_man-pages/man2/getpriority.2.html]]

getpriority()を使用したプライオリティの取得

#highlight(c){{
	errno = 0;
	ret = getpriority(PRIO_PROCESS, 0);
	if (errno == 0) {
		printf("priority = %d\n", ret);
	}
	else {
		perror("getpriority");
	}
}}

nice()を使用したプライオリティの設定

#highlight(c){{
	errno = 0;
	ret = nice(-1);
	if (errno == 0) {
		getprio();
	}
	else {
		perror("nice");
	}
}}

setpriority()を使用したプライオリティの設定

#highlight(c){{
	ret = setpriority(PRIO_PROCESS, 0, 1);
	if (ret == 0) {
		getprio();
	}
	else {
		perror("setpriority");
	}
}}
#highlight(end)
[[ソースコード:https://www.chobits.com/pukiwiki/index.php?plugin=attach&pcmd=open&file=getprio.c&refer=nice%E5%80%A4%E3%81%AE%E8%A8%AD%E5%AE%9A]]

#ref(getprio.c)

実行結果

 $ sudo ./getprio
 [sudo] ***** のパスワード:
 priority = 0
 
 priority = -1
 
 priority = 1

別ターミナルから確認

 $ cat /proc/`pidof getprio`/sched | grep -e policy -e prio
 getprio (105166, #threads: 1)
 policy                                       :                    0
 prio                                         :                  120
 $ cat /proc/`pidof getprio`/stat | awk -F' ' '{print $18,$19}'
 20 0
 
 ※ priority を -1 に設定後、確認
 
 $ cat /proc/`pidof getprio`/sched | grep -e policy -e prio
 getprio (105166, #threads: 1)
 policy                                       :                    0
 prio                                         :                  119
 $ cat /proc/`pidof getprio`/stat | awk -F' ' '{print $18,$19}'
 19 -1
 
 ※ priority を 1 に設定後、確認
 
 $ cat /proc/`pidof getprio`/sched | grep -e policy -e prio
 getprio (105166, #threads: 1)
 policy                                       :                    0
 prio                                         :                  121
 $ cat /proc/`pidof getprio`/stat | awk -F' ' '{print $18,$19}'
 21 1
 $

**設定値(CFSクラス)一覧 [#i81507d4]

|CENTER:|CENTER:|CENTER:|CENTER:|c
|優先度|/proc/<pid>/sched|>|/proc/<pid>stat|h
|~|prio|priority|nice|h
|高い|100|0|-20|
||119|19|-1|
|デフォルト|120|20|0|
||121|21|1|
|低い|139|39|19|

~
~
#htmlinsert(amazon_pc.html);

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS