Linux 驱动程序 概说

P { MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px }

早期驱动程序,每个应用单独开发驱动程序,不能复用

驱动程序要设计成共用接口,复用性

 

驱动程序工程师与应用程序工程师共同定义接口函数

如果接口函数需要修改参数,会导致应用程序同样修改

 

驱动分类

字符设备、网络接口、块设备

 

字符设备:按字节来访问,通常实现open, close, read, write系统调用

 

UNIX系统中,块设备不能按字节处理数据,一次只能传输512(1024,4096)字节的整块数据。

 

Linux系统中允许块设备传送任意数目的字节 。因此块与字符设备的区别在于驱动与内核的接口不同。

 

字符设备不能随机访问,块设备可以。

 

网络接口:RJ45网卡、回环接口(lo, loopback),负责发送和接收数据报文

 

 

驱动程序的安装

 

1、模块方式(开发过程)

无需公布源代码

2、直接编译进内核(发布阶段)

需要公布源代码,License考虑

 

 

把驱动编译进内核

 

需要修改两个文件Kconfig, Makefile

 

Kconfig:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值