E.2.5. /proc/devices

このファイルは、現在設定済みの様々なキャラクターデバイス及びブロックデバイスを表示します (但し、モジュールがロードされていないデバイスは除く)。このファイルの出力例は以下の通りです:
Character devices:
  1 mem
  4 /dev/vc/0
  4 tty
  4 ttyS
  5 /dev/tty
  5 /dev/console
  5 /dev/ptmx
  7 vcs
  10 misc
  13 input
  29 fb
  36 netlink
  128 ptm
  136 pts
  180 usb

Block devices:
  1 ramdisk
  3 ide0
  9 md
  22 ide1
  253 device-mapper
  254 mdp
/proc/devices の出力には、デバイスのメジャー番号及び名前が含まれ、Character devices (キャラクターデバイス) 及び Block devices (ブロックデバイス) の 2 つの主要なセクションに分かれます。
キャラクターデバイス は、ブロックデバイス と似ていますが、以下の 2 点が基本的な相違点となります:
  1. キャラクターデバイスには、バッファリングは必要ありません。ブロックデバイスではバッファーが使用可能で、要求に対応する前に順序付けをすることができます。情報をデバイスに書き込む前に順序付けすることにより、より効率性の高い順序での配置が可能となるため、この機能は情報を保管するように設計されたデバイス (例: ハードディスク) に重要となります。
  2. キャラクターデバイスは、サイズが事前設定されていないデータを送信します。ブロックデバイスは、デバイス別に設定済みの一定サイズのブロック単位で情報を送受信することができます。
デバイスについての詳しい情報は、システムにインストールされている以下のドキュメントを参照して下さい:
/usr/share/doc/kernel-doc-<kernel_version>/Documentation/devices.txt