Nice (UNIX)のソースを表示
←
Nice (UNIX)
ナビゲーションに移動
検索に移動
あなたには「このページの編集」を行う権限がありません。理由は以下の通りです:
この操作は、次のグループに属する利用者のみが実行できます:
登録利用者
。
このページのソースの閲覧やコピーができます。
{{小文字|title=nice}} '''{{mono|nice}}'''(ナイス)は、[[Unix系]][[オペレーティングシステム]]上のそれぞれの[[プロセス]]に対する優先度を設定するコマンド、およびこれによってマッピングされる[[システムコール]]である。 == 動作・用途 == {{mono|nice}}コマンドは、同名の[[システムコール]]を呼び出すことで、与えられた[[プロセス]]の、[[スケジューリング|カーネルスケジューラ]]内での[[優先度付きキュー|優先度]]を変更する。 {{mono|nice}}値の−20は最大の優先度であり、19は最低の優先度である。プロセスのデフォルトの{{mono|nice}}値は親プロセスから継承するが、通常は0である。 {{mono|nice}}は、複数のプロセスが[[CPU]]が供給できるよりも大きい計算資源を要求しているときに有用である。このような場合、高い優先度のプロセスが、低い優先度のプロセスよりも多量のCPU時間を獲得する。もし、プロセスが要求しているよりも多くの計算資源をCPUが提供できるならば、最も優先度の低いプロセスでさえ、最大でCPUの99%近くを使用できる。[[スーパーユーザー]](またはroot)だけが、{{mono|nice}}値を小さく(高い優先度に)設定することが出来る。Linuxでは、{{mono|/etc/security/limits.conf}}を変更することで、他のユーザやグループが{{mono|nice}}値を小さく変更することを許可できる<ref>[http://manpages.debian.net/cgi-bin/man.cgi?query=limits.conf limits.conf man page]</ref>。 関連する{{mono|'''renice'''}}コマンドは、すでに実行しているプロセスの優先度を変更するために使用される<ref>{{Cite book|和書 | author= Mike Loukides 著、砂原秀樹 監訳 |title= UNIXシステムチューニング | year=1991 | date=1991-7-21 |page=107 |publisher=[[アスキー出版局]]|isbn =4-7561-0077-5 }}</ref>。 特定の{{mono|nice}}値を設定したときの、数学的に厳密な効果は、Unixの実装でスケジューラがどのように設計されているかに依存している。典型的なオペレーティングシステムのスケジューラは、CPUバウンドのプロセスよりもI/Oバウンドのプロセスを優先するなど、[[ヒューリスティクス]]なアルゴリズムを組み込んでいる。単純な例として、2つの同一のCPUバウンドのプロセスが単一CPUの(2.6.22以前の)Linuxシステムで同時に動作しているとき、<math>p</math>をプロセスの優先度とすると、それぞれのCPU時間の割り当ては<math>20-p</math>に比例する。したがって、{{mono|nice}}値が+15で動作するプロセスが使用できるCPU時間は、通常の優先度のプロセスに比べて<math>\tfrac{1}{4}</math>となる( <math>\tfrac{20-15}{20-0}=\tfrac{1}{4}</math>)。BSD 4.xのスケジューラでは、同じ例でのCPU時間の比率は、およそ10対1となる。 (*) 2.6.23以降のLinuxで採用されている[[Completely Fair Scheduler|CFS]]では計算式が異なる Linuxには{{mono|'''ionice'''}}プログラムも存在する。これはCPU時間よりもI/Oのスケジューリングに影響を与える。 == 関連項目 == *[[GNU Core Utilities]] *[[top (UNIX)]] *[[ps (UNIX)]] *[[kill]] == 参照 == {{reflist}} == 外部リンク == * [https://linuxjm.osdn.jp/html/gnumaniak/man1/nice.1.html Manpage of nice] - JM Project * [https://nixdoc.net/man-pages/HP-UX/man1/nice.1.html nice(1)] - コマンド man page(HP-UX リファレンス) * [https://nixdoc.net/man-pages/HP-UX/man1/renice.1m.html renice(1M)] - コマンド man page(HP-UX リファレンス) {{Unixコマンド}} [[Category:UNIXのソフトウェア]] [[Category:OSのプロセス管理]]
このページで使用されているテンプレート:
テンプレート:Cite book
(
ソースを閲覧
)
テンプレート:Mono
(
ソースを閲覧
)
テンプレート:Reflist
(
ソースを閲覧
)
テンプレート:Unixコマンド
(
ソースを閲覧
)
テンプレート:小文字
(
ソースを閲覧
)
Nice (UNIX)
に戻る。
ナビゲーション メニュー
個人用ツール
ログイン
名前空間
ページ
議論
日本語
表示
閲覧
ソースを閲覧
履歴表示
その他
検索
案内
メインページ
最近の更新
おまかせ表示
MediaWiki についてのヘルプ
特別ページ
ツール
リンク元
関連ページの更新状況
ページ情報