Android设备驱动程序开发 - 入口点

qui*_*iel 7 linux android kernel driver device

我将成为Android设备驱动程序开发的一部分.在准备中,我想掌握基础知识并提高我的技能.

在过去的两年里我一直在使用VB和JAVA,所以我对C编程没有信心.Linux设备驱动程序对我来说也是一个新的世界.

目前,根据我在不同论坛发现的提示,以下资源是很好的起点.

Q1:我可以听到你对此的建议.

  1. http://lwn.net/Kernel/LDD3/
  2. http://www.freesoftwaremagazine.com/articles/drivers_linux

Q2:你知道特定于android的教程吗?

而且,这里是我应该学习的android的具体驱动程序.

  1. USB
  2. 蓝牙
  3. 无线上网
  4. 相机

感谢您的时间!

Syl*_*ard 5

我不得不将Android内核和驱动程序移植到自定义平台.Android内核基本上是一个Linux内核(2.6.x),只有一些修改.内核和驱动程序主要用C语言编写,你必须进入它.如果您已经拥有其他语言的经验,那么您也将学习它.WEB上有大量有关该内容和教程的书籍.不要忘记对所有"指针"的东西感到满意.这是C中的主要内容.linux Kernel如果充满了指向数据结构的指针,甚至更多,指向数据结构中打包的函数的指针.

以下是我获得所需信息和知识的方法.对于Linux内核,O'Reilly的书很棒.我一直提到的设备驱动程序是:
"了解Linux内核"
"Linux设备驱动程序"

至于编写Android内核的非常具体的资源,我几个月来一直在寻找它,我总是最终使用Linux资源,我完成了工作.

祝你好运,玩得开心,不要忘记它总是有益于你获得新技能


小智 4

你提到的第一本书非常好(那里描述了USB和网络)。

我建议的其他书籍位于:kernel source /Documentation/kernel-docs.txt
(也可以在这里找到: https: //www.kernel.org/doc/Documentation/kernel-docs.txt