什么是linux驱动?

1、应用程序的执行是依赖于操作系统的

2、应用程序需要调用linux OS的库函数来实现

3、驱动程序是连接OS和硬件之间的桥梁

4、应用程序不能直接操作硬件

拿Linux举例,linux既可以跑在pc上,也可以跑在arm开发板上,跑在开发板上,那么驱动就要适配开发板,不同的硬件架构都可以跑linux,linux源码也是一样的,唯一不一样的是对应的驱动程序;

移植的概念:OS移植到不同的硬件上面;

二、linux驱动的分类:

1、字符设备驱动(例如开发板的led、蜂鸣器等GPIO的控制占大部分)

2、块设备驱动(和存储设备相关的都是块设备,比如tf卡、emmc等)

3、网络设备驱动(WiFi、以太网等)

理解掌握字符设备驱动概念最重要,工作中遇到的大部分都是字符设备;

三、驱动分为四个部分:

头文件

驱动模块的入口和出口

声明信息

功能实现

四、字符驱动程序框架

模块是linux内核进行组件管理的一种方式,驱动时基于模块进行注册和注销的;

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值