2016年7月8日
摘要: 1)HAL(硬件抽象层)是建立在Linux驱动之上的一套程序库。这套程序库并不属于Linux内核,而是属于Linux内核层上的应用层。Google为Android增加HAL的主要目的除了尽量避免应用程序直接访问Linux驱动外,还有保护私人财产。 2)在传统的Linux系统中Linux驱动一般有两种 阅读全文
posted @ 2016-07-08 09:04 WL, 阅读(108) 评论(0) 推荐(0) 编辑
摘要: 1)printk函数的用法与printf函数类似,只不过printk函数运行在内核空间,printf函数运行在用户空间。也就是说,像Linux驱动这样的Linux内核程序只能使用printk函数输出调试信息。 2)Printk函数至少要有1个参数,如果格式字符串中包含有占位符,后面必须跟与占位符相等 阅读全文
posted @ 2016-07-08 09:04 WL, 阅读(260) 评论(0) 推荐(0) 编辑
摘要: 1)蜂鸣器是S3C6410 开发板上带的一个硬件设备。可以通过向寄存器写入特定的值来控制蜂鸣器发出尖叫声。PWM驱动的实现方式不同于LED驱动,PWM驱动将有多个文件组成。这也是大多数Linux驱动的标准实现方式。也就是说一个复杂的驱动不太可能将所有的代码都放在一个文件中。最好将相关的代码放在相应文 阅读全文
posted @ 2016-07-08 09:03 WL, 阅读(229) 评论(0) 推荐(0) 编辑
  2016年6月5日
摘要: 第七章: 学习了上一章的内容,本章将继续学习Linux驱动,控制LED灯泡。LED驱动实现的原理即Linux驱动与本机的I\O内存进行交互。LED驱动的模式和word_count驱动的实现步骤类似, 并且LED驱动还提供了两种交互方式:命令和读写设备文件。在实现LED驱动的过程中,会建立一个/dev 阅读全文
posted @ 2016-06-05 13:57 WL, 阅读(88) 评论(0) 推荐(0) 编辑
摘要: 第六章: 在本章的内容中,详细介绍了开发和测试Linux驱动程序的完整过程,并学习了如何在多平台下使用多种方式测试Linux驱动程序。首先,Linux驱动程序和普通的Linux API没有本质的区别,只是使用的方式不同。Linux驱动的工作和访问方式的亮点在于将每一个驱动都映射成一个文件,使得Lin 阅读全文
posted @ 2016-06-05 13:56 WL, 阅读(115) 评论(0) 推荐(0) 编辑
摘要: 第五章: 本章主要学习关于开发板的测试环境,由于我们所开发的Linux驱动,不管使用何种方法编译后,都需要在开发板上进行测试,这是因为在ARM架构的开发板可以在X86架构的PC在CPU指令及二进制格式上有所不同 ,而且在Linux所需要的硬件在PC上很难进行模拟,因此要在开发板上进行调试和测试。 开 阅读全文
posted @ 2016-06-05 13:54 WL, 阅读(84) 评论(0) 推荐(0) 编辑
  2016年4月27日
摘要: 在上一章节学习的基础上,这一章节将利用Git下载两套源代码 Android源代码和Linux内核源代码进行实战训练。 首先,要准备Android源代码的下载环境,必须在Linux环境下来执行一系列的命令,在书中介绍了详细的步骤和使用的方法,在此过程当中,需要注意的是如果需要备份Android源代码, 阅读全文
posted @ 2016-04-27 10:03 WL, 阅读(85) 评论(0) 推荐(0) 编辑
摘要: 在Linux和Android软件环境下,由于Linux下的软件有很多都不直接以二进制形式的安装包提供,而是直接提供了源代码,用户需要直接下载源代码,然后在本机上编译并安装,因此,“开源”就与Linux形成了密不可分的联系。而鉴于Linux内核的版本过于繁多,为了减小发行包的大小,干脆直接提供源代码, 阅读全文
posted @ 2016-04-27 10:02 WL, 阅读(86) 评论(0) 推荐(0) 编辑
摘要: 在了解和学习开发Linux驱动程序过程中,仍然需要Android应用程序以及Android NDK程序开测试Linux驱动、HAL程序库等底层程序,因此学习如何搭建Android平台,将更好的理解和学习Android底层开发的交叉编译环境和Android应用程序的环境。 Android底层开发环境基 阅读全文
posted @ 2016-04-27 10:01 WL, 阅读(96) 评论(0) 推荐(0) 编辑
摘要: Android的系统以其“私人定制”式的嵌入方式,成功拿下了市场占有率的头把交椅。而Android系统的顺利运行,又离不开Linux驱动的“移植”支持,因此,全面了解Android系统和Linux驱动的特征,可以更好的学习Linux系统的方法和技巧。 Android的系统架构分为4层;移植又分为应用 阅读全文
posted @ 2016-04-27 10:00 WL, 阅读(82) 评论(0) 推荐(0) 编辑