驱动学习之驱动框架基础
来源:互联网 发布:unity3d模型下载 编辑:程序博客网 时间:2024/05/17 23:14
驱动框架的概念或者目的:
第一:
内核中驱动部分维护者针对每个种类 (这个种类有可能是LEDS i2c rtc)等等的驱动设计一套成熟的、标准的、典型的驱动实现,然后把不同厂家的同类硬件驱动中相同的部分抽出来自己实现好,再把不同部分留出接口给具体的驱动开发工程师来实现,这就叫驱动框架。真正的驱动工作人员 把内核给你提供出来相关结构体进行信息的填写。调用相关的接口进行注册即可。内部的实现都是由内核来实现的。
第二: 内核对资源的管控
内核对所有的资源都会进行一定监管(这个需要你是用内核的那一套来申请和释放资源)比如GPIO
这些体系让内核能够对资源在各个驱动之间的使用统一协调和分配,
保证整个内核的稳定健康运行。譬如系统中所有的GPIO就属于系统资源,每个驱动模块如果要使用某个GPIO就要
先调用特殊的接口先申请,
申请到后使用,使用完后要释放。又譬如中断号也是一种资源,驱动在使用前也必须去申请。这也是驱动框架的组成部分。
第三点:
作为驱动人员学习驱动最主要的目的:就是学习一些接口函数和特定的数据结构。了解内核做了那一部分 预留除了什么样的结构体和函数指针需要我们来完成
目前内核驱动发展的情况:
第一点:典型的驱动(LED,鼠标,键盘,网络等等典型的驱动)
第二点: 非典型驱动(一个世面上没见到设备)
对于典型的驱动,内核的工作者都提供类相应的驱动框架(类)都会把相同的地方自己实现,不同的地方留给产商。
我们需要研究的第一个框架是:LED框架
目的:那一部分是内核的工作人员写的,作用是什么,提供给驱动人员什么样的一个结构体和接口函数。
那一部分需要自己来弄懂。 内核中那一部分文件是LED的框架,处在内核中的哪一个位子,每一个文件的作用是什么,之间呈现一个怎么样的调用关系
- 驱动学习之驱动框架基础
- 驱动层之V4L2的驱动框架
- linux驱动之块设备驱动框架
- linux驱动之I2C驱动框架
- linux驱动之nandflash驱动框架
- Linux设备驱动模型学习之基础中的基础篇
- Linux设备驱动模型学习之基础中的基础篇
- Linux设备驱动模型学习之基础中的基础篇
- linux驱动框架--hwmon学习
- linux wirelss 驱动框架学习
- linux驱动框架--hwmon学习
- MTK Camera驱动框架学习
- USB驱动程序之驱动框架
- 字符驱动之:基本框架
- Linux驱动学习笔记之触摸屏驱动
- Linux驱动学习之:按键中断驱动
- Linux驱动学习笔记之触摸屏驱动
- Linux驱动学习之:PWM驱动
- 数据结构实验之排序四:寻找大富翁
- 小知识之字符串排序遇到的问题参考
- EasyUI combobox的panelHeight自动高度
- 主体高度不定,footer在最下面
- 几种简单的负载均衡算法及其Java代码实现
- 驱动学习之驱动框架基础
- ES6面向对象--实现绚丽小球(跟随鼠标)
- 深度学习: sliding window (滑动窗口)
- 通过dos命令启动停止mysql数据库
- Unity3D学习笔记之脚本的生命周期
- 快速切换到主线程更新UI的几种方法
- C++笔记——.和::和:和->的区别
- JS下发起文件下载请求
- SpringMVC 深度解析@RequestMapping(一)