赞
踩
一、字符设备****加粗样式
1、定义
产生的数据是字符流的设备,称为支付设备。大部分设备都是字符设备,比如LCD屏、键盘、SPI、UART、I2C等。在Linux中,以文件形式统一管理字符设备。
2、特点
字符设备的数据一般来自寄存器,数据量比较少,传输速度比较快。字符设备应用广泛,学习相对容易,是目前学习的重点。
3、文件形式的设备的操作
字符设备和块设备都是文件形式的设备。所以在Linux中,对字符设备和块设备的操作,是通过对文件的操作实现的(Linux中一切皆文件),如Open ()命令、read()命令、Write()命令
4、字符设备驱动框架
A、每一个设备,必须有一个且只有一个设备号,即设备ID。就像人的身份证号码。用于在众多设备中区分不同的设备;
B、设备节点,即把设备视为文件时,“设备文件”的名称,就像人的名字。Linux把所有设备都看成是文件(一切皆文件);
C、在Linux操作系统中,对设备的操作就是对文件的操作。即在**“应用空间”操作Open ()、read()、Write()时,实际在“内核空间”**的驱动代码中有对应的Open ()、read()、Write()被操作。
二、块设备
1、定义
数据以块为单位(存储)的设备,称为块设备。一般块设备之存储设备,如磁盘、U盘、Flash、EEPROM、SD卡等。在Linux中,以文件形式统一管理块设备。
2、特点
处理的数据量比较大,速度比较慢。块设备比较复杂,当前了解即可,不是学习重点。
三、网络设备
1、定义
网络设备走的是协议(如TCP/IP),在Linux中,把网络设备做成Socket设备。网络设备一般有以太网、WIFI、有线网卡等。在Linux中,以Socket网络接口形式统一管理网络设备。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。