字符设备有哪些,字符包括哪些
30、嵌入式系统中配置了大量的外围设备,即I/O设备。依据工作方式不同可以分为字符设备、块设备和网络设备,下面描述不正确的是(30),A.键盘、显示器、打印机、扫描仪、鼠标等都属于字符设备B.块设备是以块为单位进行传输的,如磁盘、磁带和光盘等C.网络设备主要用于与远程设备进行通信D.网络设备的传输速度和字符设备相。
1、字符驱动和字符设备驱动有什么区别驱动人生支持百万硬件设备驱动,轻松一键解决驱动难题。可以讲字符设备和字符设备驱动归为一类,它们都是可以顺序/随机地进行读取和存储的单元,二者驱动主要在于块设备需要具体的burst实现,对访问也有一定的边界要求。其他的没有什么不同。网络设备是特殊设备的驱动,它负责接收和发送帧数据,可能是物理帧,也可能是ip数据包,这些特性都有网络驱动决定。
网络设备是一个net_device结构,并通过register_netdev注册到系统里,最后通过ifconfiga的命令就能看到。不论是什么设备,设备级的数据传输都是基本类似的,内核里的数据表示只是一部分,更重要的是总线的访问,例如串行spi,i2c,并行dma等。
2、字符设备和块设备提供连续的数据流,是一个线性设备,应用程序可以顺序读取,通常不支持随机存取。相反,此类设备支持按字节/字符来读写数据。举例来说,调制解调器是典型的字符设备。如:键盘、鼠标、显示屏应用程序可以随机访问设备数据,程序可自行确定读取数据的位置。硬盘是典型的块设备,应用程序可以寻址磁盘上的任何位置,并由此读取数据。此外,数据的读写只能以块(通常是512B)的倍数进行。
如:硬盘、U盘两种设备本身并没用严格的区分,主要是字符设备和块设备驱动程序提供的访问接口()是不一样的Linux的设备管理是和文件系统紧密结合的,各种设备都以文件的形式存放在/dev目录下,称为设备文件。应用程序可以打开、关闭和读写这些设备文件,完成对设备的操作,就像操作普通的数据文件一样,为了管理这些设备,系统为设备编了号,每个设备号又分为主设备号和次设备号。