Android-如何在Ubuntu上为Android系统编写Linux内核驱动程序?
针对Android的可定制性,很多厂家都在基于系统级别的开发,如何在Ubuntu上为Android系统编写Linux内核驱动程序?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
针对Android的可定制性,很多厂家都在基于系统级别的开发,如何在Ubuntu上为Android系统编写Linux内核驱动程序?
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(4)
android驱动分为linux的设备驱动和android专有驱动,大部分时候android驱动就是linux驱动。而android这边还要搞定HAL(硬件抽象层),把linux驱动中很多硬件操作封装在这里,而这个HAL是不用遵守GPL的,他只需提供*.so文件即可,保护了硬件供应商的隐私。
总的来说,要写android的驱动就是linux驱动+HAL。
如果真的就实现你说的要求的话,其实很简单。
首先,不同版本的Ubuntu所提供的环境都不一样,当然,大同小异,喜欢用最新的也可以。
找好自己这个Ubuntu版本,然后为其安装好jre、adb、minicom等工具。
然后好了,不同版本的Android运行的Linux内核版本也不一样,对于不同的硬件环境,当然bootloader、最重要的BSP、板文件等也都是不一样的,甚至编译工具也是不一样的。把该有的Android内核、编译工具都准备好之后,就基本能开始了。
之后就学怎么为Linux写驱动程序吧,这才是重点!而且这不是三言两语能说清的。建议先看《Linux驱动程序开发详解》,其他不懂上网搜吧。
在Ubuntu上下载、编译和安装Android最新源代码,以及内核源代码(Linux Kernel)准备好Android内核驱动程序开发环境,就可以开发了,这里有非常详细的介绍:
http://blog.csdn.net/Luoshengyang/article/details/6568411
这个问题说的有些太宽泛了。更多的厂家的修改和添加是在hal层的。真正的kernel动的不会太多。