ご存知のとおり、プロセス実行優先度の管理は nice
コマンドで行います。
今回は、ディスク I/O 優先度の管理を行う ionice
についての備忘録です。
0. 前提条件
- Debian GNU/Linux 8 Jessie での作業を想定。
1. 使用方法
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
|
- スケジューリングクラス(
-c
)について1
(RealTime) … 最も優先度が高い。2
(Best-Effort) …1
(RealTime) と3
(Idle) の間。3
(Idle) … 最も優先度が低い。
- プライオリティ(
-n
)について- スケジューリングクラス
1
(RealTime) と2
(Best-Effort) にのみ使用可能。 0
〜7
… 値が小さいほど優先度が高い。
- スケジューリングクラス
2. 使用例
以下は、コマンド cmd
をディスク I/O 優先度を最高にして実行する例。
1
|
|
以下は、コマンド cmd
をディスク I/O 優先度を最低にして実行する例。
1
|
|
以下は、コマンド cmd
をディスク I/O 優先度をベストエフォート(優先度最低)にして実行する例。
1
|
|
以下は、プロセス番号 1234
で実行中のプロセスのディスク I/O 優先度を確認する例。
1
|
|
以下は、プロセス番号 1234
で実行中のプロセスのディスク I/O 優先度を最低に変更する例。
1
|
|
以下は、コマンド cmd
をプロセス優先度を最低、ディスク I/O 優先度も最低にして実行する例。(マシンに最も負荷をかけない方法)
1
|
|
非力なマシンで作業を行うことの多い当方にとっては、非常によく使用するコマンドです。
当然ながら、ディスク I/O の負荷が低く抑えられる代わりに処理に時間がかかります。
以上。