zoukankan      html  css  js  c++  java
  • 《Android深度探索》(卷1)HAL与驱动开发读后感

    第6章: 第一个Linux驱动程序统计单词个数

    从本章开始将进入最令人激动人心前时刻,开始第一次进行Linux驱动的编写。首先,简单介绍了一下什么是Linux驱动。并通过一个实例来详细介绍编写Linux程序的步骤。

    总结如下:

    编写Linux驱动的方法:

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

      第2步:注册和注销设备文件

      第3步:指定与驱动相关的信息

      第4步:指定回调函数

      第5步:编写业务逻辑

      第6步:编写 Makefile 文件

      第7步:编译 Linux 驱动程序

      第8步:安装和卸载 Linux 驱动

    Linux驱动测试的方法多种多样:

    1.使用Ubuntu Linux测试Linux驱动

    2.在Android模拟器上通过原(Native) C 程序测试Linux驱动

    3.使用Android NDK 测试Linux驱动

    4.使用Java代码直接操作设备文件来测试Linux 驱动

    5.使用开发板测试Linux驱动:

       在开发板上使用可执行程序测试Linux驱动

       在开发板上使用.Android NDK测试Linux驱动

       在开发板上使用Java代码测试Linux驱动

    6.将驱动编译进Linux内核进行测试

       第1步:将源文件文件放入Linux内核源代码

       第2步:修改Kconfig文件

       第3步:修改Makefile文件

       第4步:设置.config文件

       第5步:编译Linux内核

    使用Eclipse开发和测试Linux驱动程序

    第1步:建立C工程

    第2步:建立C源代码文件链接

    第3步:设置include路径

    第4步:编译Linux驱动

    安装了 CDT 插件后, Eclipse 不仅可以开发 Java 程序, 也可以开发普通的 C/C++程序。使用Eclipse 开发C/C++程序是一个好主意。 因为可以带来很多好处,如高亮显示代码、 格式化代码、 跟踪代码、Content Assist 列表、调试代码等。

    统计单词数的word_count驱动是本书实现的第一个完整的Linux驱动。 虽然word_count驱动的功能并不复杂, 但足以让以前从来接触过Linux驱动的开发人员了解Linux驱动的完整开发过程。本章不仅仅是介绍一个示例, 还介绍了如何使用不同的方法测试Linux驱动。 这些方法主要以平台来区分。 例如, 可以直接使用UbuntuLinux测试Linux驱动。 有很多驱动只要再利用相应的Linux内核编译一遍, 就可以直接安装在Android、Linux等嵌入式系统中。当然, 也可以直 接在Android模拟器、 开发板甚至手机上测试Linux驱动。

    对于Linux驱动的开发,关键在于要勤于动手、重在实践。通过动手才能有所提高。

      

     http://www.cnblogs.com/Mr-zsj/

  • 相关阅读:
    干货分享:如何使用Kubernetes的Ingress API
    十年OpenStack Ussuri最新版发布 主要改进在可靠性、安全性和用例支持等方面
    如何更好地优化容器的创建?这些技巧你务必收藏
    Kubernetes是容器化微服务的圣杯么?
    微服务是否真的需要服务网格?
    ZOOM火速收购加密公司Kaybase 能否补齐安全短板?
    5个实例告诉您:如何实施成功的容器化多云策略
    新基建火了,开源云计算渠道能做什么?
    盘点6个Kubernetes监视工具
    掌握这10种方法帮你快速在Linux上分析二进制文件
  • 原文地址:https://www.cnblogs.com/Mr-zsj/p/5539484.html
Copyright © 2011-2022 走看看