LoginSignup
3
1

More than 1 year has passed since last update.

Linux 「/proc」について(自分用メモ

Posted at

●「/proc」ディレクトリはプロセス、ハードウェアおよびシステムリソースなどの情報を扱うための擬似的なファイルシステム。そのため、ハードディスク上にファイルは存在せず、システムが起動する際にメモリ上に作成されます。
「/proc」ディレクトリ配下のファイルはメモリ上に作成される仮想的なファイルなので、ほとんどのファイルはサイズは0(ゼロ)、ファイルの種類はempty(空)と表示されます。(「/proc/kcore」ファイルはファイルサイズとしてシステムのメモリ容量が表示されます。)

起動中のプロセスやカーネルが認識しているハードウェアの情報が格納されているディレクトリは「/proc」

●「/proc」ディレクトリ配下にある主なファイル。

ファイル名
・interrupts IRQに関する情報
・inports I/Oアドレスの情報
・bus/pci/divece PCIデバイスに関する情報
・bus/usb/devices USBデバイスに関する情報
・meminfo メモリに関する情報
・cpuinfo CPUに関する情報
・dma 使用中のDMAチャネルに関する情報
・modules ロードされているカーネルモジュールに関する情報
・scsi/scsi SCSIデバイスに関する情報

「/proc」ディレクトリ配下に格納されているファイルの多くはASCIIテキスト形式なので、catコマンドなどで内容が確認できます。

※IRQ(Interrupt ReQuest)とは、マウスやキーボードなどの周辺機器(デバイス)からCPUへの割り込み要求のことです。IRQには0から1、2、3のように順に番号がつき、そのうちのいくつかは特定のデバイスに割り当てられています。例えば0はシステムタイマー、1はキーボードに割り当てられています。
なお、IRQ番号が重複しているとハードウェアが正常に動作しないことがあります。

※I/Oポートアドレスとは周辺機器(デバイス)とCPUがデータをやり取りする際に使用する16ビットのアドレスのことです。「/proc/ioports」ファイルでは、どのデバイスにどのI/Oポートアドレスが割り当てられているのかが確認できます。
なお、I/Oポートアドレスが重複しているとハードウェアが正常に動作しないことがあります。

※DMAとは、CPUを介することなくメインメモリと周辺機器の間で直接的に情報転送を行う方式です。
DMAチャネルは周辺機器がDMAのコントローラ(制御装置)に対して情報転送を要求するために使用する通信経路の事

※また、以下のようなコマンドを使用して、これらのファイルの内容を効率的に確認することもできます。

■lspci
PCIデバイスに関する情報を表示します。

■lsmod
ロードされているカーネルモジュールに関する情報を表示します。

■lsusb
USBデバイスに関する情報を表示します。
1つのUSBデバイスの情報は「T:」がある行から始まります。

■lspci
PCI(Peripheral Components Interconnect)デバイスとはPCIバスに接続されたデバイスのことです。PCIデバイスにはネットワークカード(NIC:Network Interface Card)やSCSIカードなどがあります。
PCIデバイスの情報を表示するコマンドはlspciです。

lspci [オプション]

※ -v 詳細表示(-vvでさらに詳細も可能)

●lspciコマンドの実行結果から以下のような情報が読み取れます。
・(1)PCI識別番号
・(2)PCIデバイスの種類 
・(3)ベンダー名(ベンダーID)
・(4)デバイス名
・(5)バスの速度(詳細表示のみ)
・(6)IRQ番号(詳細表示のみ)
・(7)I/Oポートアドレス(詳細表示のみ)

3
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1