第十章讲了 对于复杂的Linux驱动以及HAL等程序库,需要使用各种方法对其进行测试。例如设置断点、逐步跟踪代码输出调试信息等。 在Linux系统中,/proc经常被用来作为内核空间与用户空间进行数据交互的工具,/proc文件系统的行为方式与设备文件系统类似。/proc是虚拟文件系统,也就是说,/p ...
分类:
移动开发 时间:
2016-07-08 11:47:33
阅读次数:
159
本章主要讲硬件抽象层:HAL,它是建立在Linux驱动之上的一套程序库。刚开始介绍了为什么要在Android中加入HAL,目的有三个,一,统一硬件的调用接口。二,解决了GPL版权问题。三,针对一些特殊的要求。可以利用位于用户空间的HAL代码来辅助Linux驱动完成一些工作。 编写HAL模块的步骤和原 ...
分类:
移动开发 时间:
2016-07-08 11:33:41
阅读次数:
169
嵌入式Linux的调试技术对于复杂的Linux驱动以及HAL等程序库,需要使用各种方法对其进行调试。例如,设置断点、逐步跟踪代码、输出调试信息等。 Printk函数的用法与printf函数类似,只不过printk函数运行在内核空间,printf函数运行在用户空间。也就是说,像Linux驱动这样的Li ...
分类:
系统相关 时间:
2016-07-08 00:01:20
阅读次数:
376
本章主要讲硬件抽象层:HAL硬件抽象层是建立在Linux驱动之上的一套程序库。这套程序库并不属于Linux内核,而是属于Linux内核层上的应用层。 Google为Android加入HAL主要有以下目的:统一硬件的调用接口。由于HAL有标准的调用接口,所以可以利用HAL屏蔽了Linux驱动复杂、不统 ...
分类:
其他好文 时间:
2016-07-07 23:55:44
阅读次数:
141
linux命令cut用法cut命令cut[OPTION]...[FILE]...-dDELIMITER:指明分隔符-fFILEDS:#:第#个字段#,#[,#]离散的多个字段例如1,3,6#-#连续的多个字段,例如1-6混合使用1-3,7--output-delimiter=STRING[root@master~]#cut-d:-f1/etc/passwd
root
bin
daemon
adm
lp
sync
shutdown
hal..
分类:
系统相关 时间:
2016-07-07 22:40:13
阅读次数:
297
1.主要讲了对于复杂的Linux驱动以及HAL等程序库,需要使用各种方法对其进行调试。例如,设置断点、逐步跟踪代码、输出调试信息等。 2.打印内核调试信息:printk printk 函数的用法与printf 函数类似,只不过printk函数运行在内核空间, printf函数运行在用户空间。也就是说 ...
分类:
系统相关 时间:
2016-07-07 22:39:40
阅读次数:
274
第九章HAL是建立在linux驱动之上的一套程序库。这套程序库并不属于linux内核,而是属于linux内核层之上的应用层。可以用来保护不想公开源代码的作者。HAL架构比较简单,其基本原理就是在安卓系统中使用程序库调用位于内核空间的linux驱动,然后安卓应用程序可以通过NDK程序访问HAL中的程序 ...
分类:
其他好文 时间:
2016-07-07 22:33:27
阅读次数:
179
本章主要讲了嵌入式Linux的调试技术。 (一)打印内核调试信息:printk Printk函数用法与printf函数类似,只不过printk函数运行在内核空间,printf函数运行在用户空间,printk函数在printk.c文件中实现。 Printk函数的原型如下:asmlinkage int ...
分类:
移动开发 时间:
2016-07-07 22:29:09
阅读次数:
154
通过第九章的学习,我学到了如下知识点: 第九章:硬件抽象层:HAL 9.1为什么要在Android中加入HAL 1.HAL并不是Linux内核的一部分,而是位于Android的系统运行库层 2.为Android加入HAL主要目的:统一硬件的调用借口,解决了GPL的版权问题,针对一些特殊的要求。 9. ...
分类:
其他好文 时间:
2016-07-07 22:29:02
阅读次数:
501
(一)Linux代码的重用 重用=静态重用(将要重用的代码放到其他的文件的头文件中声明)+动态重用(使用另外一个Linux驱动中的资源,例如函数、变量、宏等) 1、编译是由多个文件组成的Linux驱动(静态重用) 对于复杂的Linux驱动,需要使用多个源代码文件存放不同的功能代码,这样做有利于代码分 ...
分类:
移动开发 时间:
2016-07-07 22:27:58
阅读次数:
219