每天整理点Linux--块设备,字符设备

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了每天整理点Linux--块设备,字符设备相关的知识,希望对你有一定的参考价值。

块设备(blockdevice)是一种具有一定结构的随机存取设备,对这种设备的读写是按块进行的,他使用缓冲区来存放暂时的数据,待条件成熟后,从缓存一次性写入设备或从设备中一次性读出放入到缓冲区,如磁盘和文件系统等

字符设备(Characterdevice)这是一个顺序的数据流设备,对这种设备的读写是按字符进行的,而且这些字符是连续地形成一个数据流。他不具备缓冲区,所以对这种设备的读写是实时的,如终端、磁带机等。

  系统中能够随机(不需要按顺序)访问固定大小数据片(chunks)的设备被称作块设备,这些数据片就称作块。最常见的块设备是硬盘,除此以外,还有软盘驱动器、CD-ROM驱动器和闪存等等许多其他块设备。

  内核管理块设备要比管理字符设备细致得多,需要考虑的问题和完成的工作相比字符设备来说要复杂许多。这是因为字符设备仅仅需要控制一个位置—当前位置—而块设备访问的位置必须能够在介质的不同区间前后移动。所以事实上内核不必提供一个专门的子系统来管理字符设备,但是对块设备的管理却必须要有一个专门的提供服务的子系统。不仅仅是因为块设备的复杂性远远高于字符设备,更重要的原因是块设备对执行性能的要求很高;对硬盘每多一分利用都会对整个系统的性能带来提升,其效果要远远比键盘吞吐速度成倍的提高大得多。

以上是关于每天整理点Linux--块设备,字符设备的主要内容,如果未能解决你的问题,请参考以下文章

驱动笔试题目整理

嵌入式开发(七):linux字符型设备驱动初步

linux中啥是块设备和字符设备?

[Linux]字符设备块设备网络设备虚拟设备

LINUX中块设备文件和字符设备文件的本质区别

Linux驱动字符设备驱动