103.6基礎
同じスケジューリング方針の通常プロセスAとBを比較する。
Aのnice値は5、Bのnice値は15である。
一般的なCPUスケジューリング上の関係として適切な説明はどれか。
× 不正解
nice値は大きいほど他の通常プロセスへCPUを譲る方向、つまり優先度が低い方向になる。数値の大小と優先度の表現は逆向きである。
詳細解説
誤りBの方がnice値もCPU優先度も高い
nice値が大きいほどCPU優先度は低い方向になるため、両方が高いわけではない。
nice値は大きいが優先度は低い方向である。
誤りnice値はCPU優先度と無関係である
通常スケジューリングではnice値がCPU配分の重みに影響する。
nice値はCPU配分の重みに影響する。
正しいAの方がBよりCPU優先度が高い方向にある
Aのnice値5はBの15より小さく、CPUを譲る度合いが低い。
正解。5のAが15のBより高優先度方向にある。
誤りBは必ずAより先に実行を完了する
優先度はCPU配分へ影響するが、処理量やI/O等があるため完了順を保証しない。
優先度だけで完了順は決まらない。
実際に確かめる
一時的な検証環境で実行できる例です。
nice -n 5 bash -c 'ps -o ni= -p "$$"'; nice -n 15 bash -c 'ps -o ni= -p "$$"'期待される結果
5と15(呼出し元のnice値が0の場合)理解のポイント
- nice値が小さいほど高優先度方向
- 大きいほどCPUを譲る
- 完了順は保証しない
確認時の注意
- 確認環境: Linux / GNU coreutils・procps-ng
基礎のおさらい
相対的な効果
nice値は同じスケジューリング方針の通常プロセス間でCPU配分へ影響する。
I/O待ち
CPU優先度はディスクやネットワーク待ち時間を直接短縮するものではない。
問題IDKP-103-095
確認環境Linux / GNU coreutils・procps-ng
最終技術確認2026-08-12
誤り・権利侵害を報告