字符设备:对字符设备的读写不需要通过OS的缓冲区(Buffer),它不可被文件系统MOUNT。字符特殊文件与外设进行I/O操作时每次只传输一个字符,通常不支持随机存取数据。
块设备:对块设备的读写需要通过OS的缓冲区(Buffer),它可以被MOUNT到文件系统中。块设备文件用来同外设进行定长的包传输,它使用了Cache机制,在外设和内存之间一次可以传送一整块数据。块设备通常支持随机存取和寻址,并使用缓存器。
裸设备:也叫裸分区(原始分区),是一种没有经过格式化,不被Unix/Linux通过文件系统来读取的特殊字符设备。裸设备可以绑定一个分区,也可以绑定一个磁盘。裸设备使用字符特殊文件,它由应用程序负责对它进行读写操作,不经过文件系统的缓冲。