• 第六章


    第六章 Linux驱动程序

    1.编写Linux驱动程序的步骤

    (1)建立Linux驱动骨架(装载和卸载Linux驱动)

    Linux内核在使用驱动时首先需装载驱动,在装载过程中需要进行一些初始化的工作,例如建立设备文件,分配内存地址空间等。退出Linux系统是,需要卸载Linux驱动。卸载的过程中就是释放Linux驱动占用的资源。两个函数分别为module_init和module_exit宏指定。

    (2)注销和注册设备文件

    分别用misc_register和misc_deregister函数创建和移除设备文件

    (3)指定与驱动相关的信息

    通过modinfo命令获取驱动程序的作者姓名、使用的开源协议、别名、驱动描述等信息

    Modinfo word_count.ko

    (4)指定回调函数

    Linux驱动包含了很多动作,也可以成为事件。例如,向设备文件写入数据会触发“写”事件。Linux系统会调用对应驱动程序的write回调函数,从设备文件读数据会处罚“读”事件,调用read回调函数。

    (5)编写业务逻辑

    具体的业务逻辑与驱动的功能有关。业务逻辑可能由多个函数、多个文件甚至是多个Linux驱动模块组成。具体根据实际情况而定。例如打印机发送打印指令等

    (6)编写Makefile文件

    Linux内核源代码的编译规则是通过makefile文件定义的。因此编写一个新的Linux驱动程序必须要有一个makefile文件

    (7)编译Linux驱动程序

    Linux驱动程序可以直接编译进内核,也可以作为模块单独编译

    (8)安装和卸载Linux驱动

    安装

    Insmod word_count.ko

    查看word_count是否安装成功

    Lsmod | grep word_count

    查看Linux驱动输出的日志信息

    Demesg | grep word_count | tail –n 2

    http://www.cnblogs.com/BJBLOG/

  • 相关阅读:
    #研发解决方案介绍#基于持久化配置中心的业务降级
    #研发解决方案介绍#Tracing(鹰眼)
    #研发解决方案介绍#Recsys-Evaluate(推荐评测)
    穷追不舍、事故入手和倒逼
    职场的真相——七句话
    被小伙伴们吓哭了:可怕的命令
    适用于研发基层员工的十个行为模式
    研发阿米巴组织的运行逻辑
    技术总监是干什么的?
    大学教给了我们什么(二)
  • 原文地址:https://www.cnblogs.com/BJBLOG/p/5561308.html
Copyright © 2020-2023  润新知