Linux系统将硬件设备当成特殊的文件,称为设备文件。设备文件有3种分类:
- 字符型设备文件
- 块设备文件
- 网络设备文件
字符型设备文件是指处理数据时每次只能处理一个字符的设备。大多数类型的调制解调器和终端都是作为字符型设备文件创建的。
块设备文件是指处理数据时每次能处理大块数据的设备,如硬盘。
网络设备文件是指采用数据包发送和接收数据的设备,包括各种网卡和一个特殊的回环设备。这个回环设备允许linux系统使用常见的网络编程协议同自身通讯。
linux为系统上的每个设备都创建了一种称为节点的特殊文件。与设备的所有通信都通过设备节点完成。每个节点都有唯一的数值对供linux内核标识它。数值对包括一个主设备号和一个次设备号。类似的设备被划分到同样的主设备号下,次设备号用于标识主设备组下的某个特殊设备。