HOMEサンプル問題・例題解説101試験の例題と解説103.6 プロセスの実行優先度を変更する

101試験の例題と解説

103.6プロセスの実行優先度を変更する

今回は101試験の試験範囲から、「103.6 プロセスの実行優先度を変更する」についての例題を解いてみます。

■例題
新たに起動されたプロセスのデフォルトのnice値として正しいものを選びなさい。

  1. 0
  2. 1
  3. 20
  4. 19
  5. -19

※この例題は実際のLinuC試験とは異なります。

解答と解説

答えは 1. 0 です。

nice値は、プロセス間の優先順位を決定する値です。新たに起動されたプロセスはnice値0として設定されます。

nice値は-20から19までの値を取ります。これは正の値と負の値がそれぞれ20段階あり、0は正でも負でもありませんが、少なくともマイナス記号は付かないので、正の値側に入ると覚えておけばよいでしょう。

↑優先順位低い
0〜19まで20段階
19
18


1
0

-1


-19
-20
-1から-20まで20段階
↓優先順位高い

優先順位の考え方ですが、他のプロセスに優先順位を譲る「ナイスな奴」だと考えるのが覚えやすいようです。俺が俺がと自分のことしか考えない「ナイスではない奴」に対する評価はマイナスになります。

○nice値の例

$ ps alx
F   UID   PID  PPID PRI  NI   VSZ  RSS WCHAN  STAT TTY        TIME COMMAND
4     0     1     0  16   0  1716  440 -      S    ?          0:00 init [3]     
1     0     2     1 -100  -     0    0 migrat S    ?          0:00 [migration/0]
1     0     3     1  34  19     0    0 ksofti SN   ?          0:00 [ksoftirqd/0]
5     0     4     1 -100  -     0    0 -      S    ?          0:00 [watchdog/0]
1     0     5     1  10  -5     0    0 worker S<   ?          0:00 [events/0]
1     0     6     1  10  -5     0    0 worker S<   ?          0:00 [khelper]
1     0     7     1  10  -5     0    0 worker S<   ?          0:00 [kthread]
1     0     8     7  10  -5     0    0 xenwat S<   ?          0:00 [xenwatch]
1     0     9     7  10  -5     0    0 xb_rea S<   ?          0:00 [xenbus]

ksoftirqdプロセスは最も低い優先順位で動いています。いくつかのプロセスは高い優先順位(-5)で動作しています。

nice値の変更は、一般ユーザーも行うことができますが、nice値を増やして優先順位を下げることはできても、nice値を増やして優先順位を上げるにはroot権限が必要です。

  • 今回の解説について、理解できないポイントがあればどんどん質問を。
  • 採用になった方にはLPI-Japanオリジナルの記念品を贈呈します。
  • ご質問・ご意見はこちら
  • ※上記の解説とその内容については、例題作成者の監修です。
    内容や試験問題に関わるお問い合わせにつきましては、LPI-Japan事務局ではお応えできませんのでご了解ください。

このページのトップへ