ブロックデバイス
固定サイズのブロック単位でランダムアクセスして読み書きするデバイス。ディスク、SSD、USBメモリなど。
Unixはデバイスを二種類に分ける。ブロックデバイスは通常512または4096バイトのブロックで指定され、自由にシークでき、カーネルがページキャッシュ経由でバッファリングする。キャラクタデバイスはバイトストリームとして読まれ、バッファリングされない。キーボード、シリアルポート、/dev/random などがそれにあたる。
この区別は ls -l /dev の先頭文字が b か c かに現れる。ファイルシステムはブロックデバイスの上にしか置けない。他のセクタに触れずに一つのセクタを書き換えられると仮定しているからだ。物理デバイスの上にはLVMやRAIDなどの層が重ねられることが多く、各層は上の層からはブロックデバイスに見える。