procinfo(8) システムの状態を /proc から集め、表示する

書式

procinfo [ -fsmadiDSbrChv ] [ -nN ] [ -Ffile ]

説明

procinfo はシステムに関するデータを /proc ディレクトリから集め、格好良く整形して標準出力デバイスに出力する。

各欄の意味は以下の通り:

Memory:
free(1) のマニュアル(なるべくなら、proc 版の free (1.x の頃に Linux を始めた人でなければ、 手元にある free は proc 版のはずである))を参照のこと。

Bootup:
システムが起動された時刻。

Load average:
実行しているジョブの平均個数、実行可能なプロセスの数とプロセスの総数 (カーネル が十分に新しい場合)、最後に実行されたプロセスの PID (同)。

user:
ユーザ空間でのジョブ実行に費やした時間の合計。

nice:
nice されたジョブの、ユーザ空間での実行に費やした時間の合計。

system:
カーネル空間での実行に費やした時間の合計。 注意: 割り込み処理に要した時間は、カーネルではカウントされない (これに関して procinfo は何もできない)。

idle:
何の処理もせずに費やした時間の合計。

uptime:
システムが起動されてからの時間。上記 4 項目の合計は、 ちょうどこの値にはならな いだろう。

page in:
ディスクからメモリへページインされたディスクブロックの数。(1 ブロックは、 ほと んどの場合 1 キロバイトである)。

page out:
上記 page in の逆(メモリからディスクへページアウトされたディスクブロックの数) 。

swap in:
スワップ空間からページインされたメモリページの数。

swap out:
スワップ空間へページアウトされたメモリページの数。

context:
システム起動以降の、コンテクスト・スイッチの総数。

disk 1-4:
ハードディスクへのアクセス回数。カーネル 1.0.x/1.1.x では、 よそで入手できる diskstat パッチをカーネルに当てないと動作しない。 全てのハードディスクが同じタイプ (例えば、全て IDE、全て SCSI) である 場合には、驚くべき結果を返すかもしれない。 [これが最近のカーネルでもまだ当てはまることなのか確かではないが、 わたしは異なるタイプのハードディスクが混在するシステムを持っていないので 確認できない。]

Interrupts:
この項目は、カーネルがバージョン 1.0.5 より古い場合には 全ての IRQ チャネルを合 わせた 1 つの数字、 カーネルがバージョン 1.0.5 以降の場合には IRQ チャネルごとに 2 列の数字、 のいずれかである。Intel アーキテクチャには 16 の異なる IRQ チャネルがあり、 それらが通常意味するところは以下の通りである:

0
タイマーチャネル 0
1
キーボード
2
コントローラー 9 (IRQ 8-15 を制御する) へのカスケード
3
シリアルポート 2
4
シリアルポート 1
5
パラレルポート 2
6
フロッピーディスクコントローラー
7
パラレルポート 1
8
リアルタイムクロック
9
IRQ2 へリダイレクトされている
10
--
11
--
12
--
13
数値演算コプロセッサ
14
ハードディスクコントローラー
15
--

ハードウェアの設定次第では、上記でパラレルポート、シリアルポート、 空欄(--)とした IRQ チャネルの意味が変更されているかもしれないので 注意すること。これがあ なたのコンピュータに当てはまるなら、 たぶんあなたはそれを承知しているだろう。もしまだ分かっていないなら、 カーネルを少なくとも Linux 1.1.43 以上にアップグレードして、 何がどの IRQ を使っているか procinfo に教えてもらおう。

Modules:
インストールされているモジュール(ローダブルデバイスドライバー)と、 キロバイト単位で表したそれらのサイズ( -m または -a オプションを用いた場合のみ)。使用回数が 0 より多いモジュールは、 アスタリスクで示される。

Character and Block Devices:
利用可能な全てのデバイスと、それらのメジャーデバイス番号( -m または -a オプションを用いた場合のみ)。

File Systems:
利用可能な全てのファイルシステム( -m または -a オプションを用いた場合のみ)。(proc ファイルシステムのように) デバイスの実体を 必要としないファイルシステムは、角括弧 [] の中に示される。

オプション

-f
procinfo を継続的に全画面表示で実行する。

-nN
表示更新の間に N 秒間停止する。このオプションは -f オプションの動作を含む。N には小数点が入ってもよい。 デフォルトの停止時間は 5 秒である。root が停止時間 0 秒で実行すると、 プログラムは取りうる最高の優先度で実行される。

-m
CPU とメモリの統計情報の代わりに、モジュールとデバイスドライバーに関する情報を 表示する。

-a
procinfo が取得可能な、全ての情報を表示する。

-d
メモリ、CPU 時間、ページング、スワップ、ディスク、コンテクスト、 割り込みの各統計値について、合計ではなく 1 秒ごとの値を表示する。 このオプションは -f オプションの動作を含む。

-D
メモリの情報が合計で表示される以外は -d と同じ。

-S
-d または -D と共に実行している場合、たとえ -n NN を 1 秒より大きな値として指定されていても、常に 1 秒ごとの値を表示する。

-Ffile
出力を file へリダイレクトする (通常は tty)。例えば、 procinfo を仮想コンソールやターミナルでずっと動かしておきたい場合、 init(8) から以下のように起動すると便利である:

p8:23:respawn:/usr/bin/procinfo -biDn1 -F/dev/tty8

-b
カーネルが、ディスク I/O に関して読み込みと書み込みの回数を 個別表示できる程度に新しければ、 -b フラグは procinfo に、I/O リクエストの回数ではなくブロック数を表示させる (あぁ! どちらもキロバイトへ正確に変換することなんてできないじゃないか)。

-i
通常、IRQ 表示部は 0 でない IRQ チャネルのみを表示することで 表示領域を節約している。 このオプションで IRQ チャネルの完全な一覧を得られるが、2.1.104 以降の カーネルを載せた Alpha や Intel 搭載のコンピュータでは、 procinfo はもはや 80x24 の画面に出力を収めることができない。進歩の代償、なのだろう。

-r
free(1) コマンドにあるような、「実際の」空きメモリ容量を表示する 行を追加する。

-h
簡単なヘルプメッセージを表示する。

-v
バージョン情報を表示する。

対話的コマンド

procinfo を全画面表示で実行している場合、 n, d, D, S, i, m, a, r, b を押すことでその動作を切り替えることができる。これらは対応するコマンド行オプシ ョンと同じ効果がある。 さらに、以下のキー入力も可能である: q はプログラムを終了する。 sm または a を押して切り替えた表示を、メイン画面に戻す。 td または D を押して切り替えた表示を、合計表示に戻す。 <space> は、次に何かキーを押すまで画面の更新を停止する。 CR は、合計表示でのチェックポイントを設定及び解除する。 Ctrl-L は画面をリフレッシュする。

ファイル

/proc
proc ファイルシステム。

バグ

何? 心配する? この私が?? まさか。

著者

Sander van Malssen <[email protected]>