驱动程序介绍

驱动分类----

1--字符设备--按字节来访问,有顺序,不能随机。

2--网络接口设备--一个接口通常是硬件设备如:eth0,但也可以为一个软件如回环lo。

3--块设备---一般一个块512的整数倍,linux中无限制。在linux中字符设备与块设备的区别仅仅是驱动与内核的接口不同。


驱动安装方式---

1---模块方式

2---直接编译进内核

-----修改kconfig

------修改makefile

把驱动程序拷贝进linux源代码相应目录下。根据驱动类型字符,块,网络接口等找到相应目录。----修改相应目录下kconfig,添加驱动程序项,通过make menuconfig找到驱动程序项,并选择。这时配置项会保存到.config中。--------修改makefile,添加驱动程序项。重新编译内核,make uImage  ARCH=arm CROSS_COMPILE=arm-linux-



使用驱动程序-----

应用程序-------字符设备文件------------字符设备驱动-----------------字符设备

---------文件系统--块设备文件-块设备驱动   ------------------块设备

---------套接字            ------------协议栈---网络设备驱动-----网络接口设备

黄色表示------位于内核空间。



linux用户程序通过设备文件来使用驱动程序操作字符设备和块设备,设备文件在dev/目录下。


你可能感兴趣的:(linux,网络,makefile)