Linux驱动开发入门(一)驱动的概念

什么是驱动?

缺少驱动的电脑是什么样的?
       试想一下,你有一台缺少USB驱动的电脑。那么当你电脑上插入一个U盘的时候,U盘只是和电脑的物理接口连在一起,通了电。因为没有软件驱动,没进行USB通信,无法读取到U盘内的数据。就不会和正常一样提示移动设备插入,不能在文件系统中打开U盘。
       正如缺少USB驱动的电脑无法操作U盘一样,没有显示器驱动的电脑也无法显示图形图像,没有音频驱动的电脑也会变成哑巴。

1.驱动的实现是为了操作硬件,使硬件运行在某种工作状态。
2.驱动是连接硬件与内核的桥梁。

驱动的分类

块设备:系统中能够随机(不需要按顺序)访问固定大小数据片,如硬盘。
字符设备:按照字符流的方式被有序访问,如串口、键盘。
网络设备:一般由字符设备注册,网络设备可以通过BSD套接口访问,如网卡。

驱动 接口
字符设备驱动 字符设备文件
网络设备驱动 BSD套接字
块设备驱动 块设备文件

下一篇:Linux驱动开发入门(二)开发环境配置

猜你喜欢

转载自blog.csdn.net/xue_nuo/article/details/107758916
今日推荐