zoukankan      html  css  js  c++  java
  • 读书笔记第九章

    第九章
    HAL是建立在linux驱动之上的一套程序库。这套程序库并不属于linux内核,而是属于linux内核层之上的应用层。可以用来保护不想公开源代码的作者。
    HAL架构比较简单,其基本原理就是在安卓系统中使用程序库调用位于内核空间的linux驱动,然后安卓应用程序可以通过NDK程序访问HAL中的程序库,或直接在安卓应用程序中访问HAL中的程序库。
    编写一款支持HAL的linux驱动程序的步骤:
    1、编写linux驱动,linux驱动的代码要尽量简介,尽可能将业务逻辑放到HAL library中。
    2、编写HAL library,HAL library就是普通的linux library文件,单这类库文件有一个接口。通过HAL_MODULE_INFO_SYM变量实现。
    3、编写Service Library,这是必要的步骤。
    测试读写寄存器操作:在编写linux驱动以及与驱动相关的程序的过程中应分段测试每一部分程序,每编写完一部分,应使用相应的方法进行测试,以便将当前编写的程序bug降到最低。
    编写HAL模块的步骤和原理:
    1、定义结构体和宏。
    2、编写HAL模块的open函数作为程序切入口。
    3、定义hw_module_methods_t结构体变量。
    4、定义HAL_MODULE_INFO_SYM变量。
    5、编写HAL模块的close函数。
    6、编写控制LED的函数。

  • 相关阅读:
    idea 编程字体推荐
    推荐!国外程序员整理的系统管理员资源大全
    jquery阻止事件冒泡的3种方式
    web前端打印总结
    前端打印插件
    object实现小老鼠交互
    前端性能优化(DOM篇)
    输入框获得焦点时外边框颜色改变
    webstorm配置scss自动编译路径
    微信开发测试号配置
  • 原文地址:https://www.cnblogs.com/spurlash/p/5651720.html
Copyright © 2011-2022 走看看