摘要: 第十章嵌入式Linux的调试技术 第十章主要介绍如何利用开发板、Android模拟器以及一些函数、工具(gdb、gdbservice以及kgdb)调试嵌入式Linux内核模块、可执行程序和共享库。 对于复杂的Linux驱动以及HAL等程序库,需要使用设置断点、逐步跟踪代码、输出调试信息等方法对其进行 阅读全文
posted @ 2016-07-08 16:51 maxgty 阅读(176) 评论(0) 推荐(0) 编辑
摘要: 第九章硬件抽象层:HAL 第九章主要介绍建立在Linux驱动之上的一套程序库HAL(硬件抽象层)。这套程序库不属于Linux内核,而是属于Linux内核层之上的应用层。 Google为Android增加HAL的主要目的除了尽量避免应用程序直接访问Linux驱动外,还可以保护“私人财产”。对于那些既想 阅读全文
posted @ 2016-07-08 16:50 maxgty 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 第八章让开发版发出声音:蜂鸣器驱动 第八章本章主要介绍蜂鸣器的实现原理,并实现一个完整的蜂鸣器驱动(可以打开和关闭蜂鸣器),以及把Linux驱动分成多个文件的方式。 蜂鸣器是开发板上带的一个硬件设备,可以通过向寄存器写入特定的值来控制蜂鸣器发出尖叫声。 PWM驱动不同于LED驱动,将由多个文件组成, 阅读全文
posted @ 2016-07-08 16:49 maxgty 阅读(230) 评论(0) 推荐(0) 编辑
摘要: 第七章LED将为我闪烁:控制发光二极管 第七章演示如何开发一个完整的、真正意义上的Linux驱动,通过向Linux驱动发送数据可以控制LED小灯的开关。 第一节LED驱动的实现原理 Linux驱动不是直接向硬件中的内存写数据,而是与本机的I/O内存进行交互。I/O内存时通过各种接口连接到主机和硬件在 阅读全文
posted @ 2016-06-06 22:24 maxgty 阅读(90) 评论(0) 推荐(0) 编辑
摘要: 第六章第一个Linux驱动程序:统计单词个数 第六章介绍如何在多种平台,使用多种方法测试Linux驱动。 本章主讲统计单词个数的算法的实现技术:Linux驱动。统计单词个数的功能是封装在Linux驱动中的。驱动不一定是直接和硬件打交道的,还可以喝普通的library一样提供其他程序的调用来实现特定功 阅读全文
posted @ 2016-06-06 22:23 maxgty 阅读(123) 评论(0) 推荐(0) 编辑
摘要: 第五章搭建S3C6410开发板的测试环境 第五章本章主要介绍开发板的调试环境的搭建,以及如何将Android系统安装开发板上。 开发板是开发和学习嵌入式技术的主要硬件设备。 尽管可以在PC上开发Linux驱动,然后重新编译成ARM构架的Linux驱动模块,但最终都是要在开发板上进行测试的。 开发板从 阅读全文
posted @ 2016-06-06 22:22 maxgty 阅读(143) 评论(0) 推荐(0) 编辑
摘要: 第四章主要讲述了如何对于Android源代码和Linux内核源代码的下载与编译。 本章使用Git下载两套源代码,一套是Android源代码。Android所使用的Linux内核并不是到官网上下载一个Linux内核就可以的。Android所使用的Linux内核是在官方Linux内核的基础上修改而成的, 阅读全文
posted @ 2016-04-29 11:00 maxgty 阅读(130) 评论(0) 推荐(0) 编辑
摘要: 第二章主要讲述了如何搭建Android底层开发环境。 第一节告诉读者Android底层开发所需要的所有程序:JDK6或以上版本、Eclipse 3.4或以上版本、ADT、CDT、Android SDK、Android NDK、交叉编译环境、Linux内核源代码、Android源代码、用于调试开发板的 阅读全文
posted @ 2016-04-29 10:59 maxgty 阅读(100) 评论(0) 推荐(0) 编辑
摘要: 第三章主要讲述了管理源代码的软件Git。 对于想要参与到内核的开发的程序员来说,掌握Git是必须的。Linux下的许多软件不直接一二进制的安装包提供,而是直接提供源代码,需要下载、编译、安装。原因是Linux内核版本多,安装包的版本也会非常多,为了降低安装难度,直接提供源代码,由用户进行编译。 第一 阅读全文
posted @ 2016-04-29 10:59 maxgty 阅读(143) 评论(0) 推荐(0) 编辑
摘要: 第一章主要是向读者普及了Android以及Linux的基础知识。 第一节讲述了Android的构架。Android的系统架构分为四层: 第一层:Linux内核。主要包括Linux的驱动程序以及内存管理、进程管理、电源管理等程序。Android使用Linux 2.6作为其内核。 第二层:C/C++代码 阅读全文
posted @ 2016-04-29 10:58 maxgty 阅读(134) 评论(0) 推荐(0) 编辑