zoukankan      html  css  js  c++  java
  • Linux 内核:设备驱动模型 学习总结

    背景

    其实之前就转载过别人针对Linux的设备驱动模型(Linux Device Driver Model,LDDM)的文章,但是受限于自身的能力,因此花了点时间重新学习了一下。

    前人写的文章很好,我很受用。因此,我也尝试通过我自己的方式来整理了一下。

    基于 Linux 内核 v3.14。

    目录

    标题 说明
    1、sysfs与kobject基类 介绍了搭建设备驱动模型的基石,kobject这个基类与sysfs的关系。
    2、driver-bus-device与probe 介绍设备--总线--驱动框架,以及probe流程。
    3、class与device 介绍设备类如何组织在sysfs中的device
    4、uevent与热插拔 介绍probe时发送uevent到用户空间,以及用户空间是如何处理的
    5、平台设备驱动 介绍platform设备框架,以加深对设备--总线--驱动框架
    6、设备资源管理 介绍内核如何解决设备驱动中的资源管理问题
    附录:Linux 内核:sysfs 有关的API sysfs api

    首先对sysfs的核心数据kobject,kset等数据结构做出了分析,正是通过它们才能向用户空间呈现出设备驱动模型。

    接着,以/sys/bus目录的建立为例,来说明如何通过kobject和kset来建立该bus目录。随后,介绍了驱动模型中表示总线,设备和驱动的三个数据结构。

    然后,补充了uevent的一些知识。

    最后介绍了platform总线(bus/platform)的注册,再介绍了虚拟的platform设备(devices/platform)的添加过程。

    如果说我的文章对你有用,只不过是我站在巨人的肩膀上再继续努力罢了。
    若在页首无特别声明,本篇文章由 Schips 经过整理后发布。
    博客地址:https://www.cnblogs.com/schips/
  • 相关阅读:
    小批量随机梯度下降
    查询文档
    自动求梯度
    数据操作
    Hadoop 入门
    Matplotlib 二维图像绘制方法
    Pandas 数据处理基础
    NumPy 数值计算基础课程
    关于 Shell 脚本
    语法分析
  • 原文地址:https://www.cnblogs.com/schips/p/linux_device_model.html
Copyright © 2011-2022 走看看