基于Mini6410的Linux驱动学习总结


基于mini6410的linux驱动学习总结(一 驱动程序介绍)

1、什么是驱动程序?

使硬件工作的软件。

2、驱动分类

1)字符设备驱动

2)网络接口驱动

3)块设备驱动

2.1 字符设备

字符设备是一种按字节来访问的设备,字符驱动则负责驱动字符设备,这样的驱动通常实现open, close,read和write 系统调用。

2.2块设备

1)在大部分的Unix 系统, 块设备不能按字节处理数据,只能一次传送一个或多个长度是512字节( 或一个更大的2 次幂的数)的整块数据。

2)而Linux则允许块设备传送任意数目的字节。因此, 块和字符设备的区别仅仅是驱动的与内核的接口不同。

2.3 网络接口

任何网络事务都通过一个接口来进行, 一个接口通常是一个硬件设备(eth0), 但是它也可以是一个纯粹的软件设备, 比如回环接口(lo)。一个网络接口负责发送和接收数据

报文。

3、驱动程序安装

1)模块方式(已知J)

2)直接编译进内核

直接编译进内核

1)Kconfig

2)Makefile

例:将helloWorld编译进内核

  • 1
  • 2
  • 3
  • 4
  • 5
  • 下一页

相关内容