zoukankan      html  css  js  c++  java
  • 第六章读后感

    第六章主要学习到了安卓底层开发的相关知识,这章主要介绍了第一个linux驱动程序:统计单词个数。Linux驱动的工作和访问方式是Linux的亮点之一。 Linux系统将每一个驱动都映射成一个文件,这些文件称为设备文件或驱动文件,都保存在/dev目录中。这种 设计理念使得与Linux驱动进行交互就像与普通文件进行交互一样容易。当然,也比访问LinuxAPI 更容易。 由于大多数Linux驱动都有与其对应的设备文件, 因此与Linux驱动交换数据就变成了与 设备文件交换数据。例如,向Linux打印机驱动发送一个打印命令,可以直接使用C语言函数open打开设备文件, 再使用C语言函数 ioctl 向该驱动的设备文件发送打印命令。

    一、编写Linux驱动程序的步骤

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

    Module_init处理驱动初始化,module_exit处理驱动退出

    2.注册和注销设备文件

    Misc_register函数创建和misc_deregister移除设备文件

    3.指定与驱动相关的信息

    modinfo

    4.指定回调函数

    5.编写业务逻辑

    6.编写makefile文件

    7.编译Linux驱动程序

    8.安装和卸载Linux驱动

    二.接着进行统计单词个数的驱动例子。这个驱动程序并没有访问硬件,而是利用设备文件作为介质与应用程序进行交互。应用程序通过向设备文件传递一个自空格分隔的字符串(每一个被空格隔开的子字符串称为一个单词),然后从设备文件读出来的是该字符串包含的单词数。

    三.使用多种方式测试Linux驱动

    1.使用Ubuntu Linux测试Linux驱动

    2.Android模拟器上通过原生(NativeC程序测试Linux驱动

    3.使用Android NDK测试Linux驱动

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

    5.使用S3C6410开发板侧试Linux驱动

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

    四、使用eclipse开发和测试Linux驱动程序

    1.eclipse中开发Linux驱动程序

    建立C工程

    建立C源代码文件链接

    设置include路径

    编译Linux驱动

    2.eclipse中测试Linux驱动

    导入test-word_count.c

    设置include路径

    建立Target

    Build工程

    运行测试程序

    http://i.cnblogs.com/EditPosts.aspx?opt=1

  • 相关阅读:
    ZOJ 3332 Strange Country II
    ZOJ 3331 Process the Tasks(双塔DP)
    ZOJ 3326 An Awful Problem(模拟)
    HDU 1796 How many integers can you find(容斥原理)
    HDU 4059 The Boss on Mars(容斥原理)
    HDU 4135 Co-prime(容斥原理)
    HDU 5677 ztr loves substring(回文串加多重背包)
    CodeForces 668B Little Artem and Dance
    CodeForces 667A Pouring Rain
    Java实现 LeetCode 764 最大加号标志(暴力递推)
  • 原文地址:https://www.cnblogs.com/zhangyuye/p/5560990.html
Copyright © 2011-2022 走看看