aiku给你们最真心地学习建议--转
2015-11-20 00:50
218 查看
aiku给你们最真心地学习建议:
以前我最开始的就搞驱动,后来发现要熟悉hal层,接着就硬着看hal代码,第一次看,很剧痛,慢慢的,看习惯了,就好了,后来发现,搞驱动的人,不懂hal,很多时候就定位不了问题在哪里,所以那个时候,自己就会又一层那就是hal,很多时候,应用叫你添加接口的时候,你发现单单会hal和kernel,远远不够,因为上层给你的接口是到jni层,那么你这时候,就会逼自己去学jni,其实jni层,就是java native interface缩写,这个时候,学了这层又上一层了。从这样驱动开发人员,就一层层网上趴。虽然辛苦,但是总比上层往下钻容易。我可以负责任地说,如果同样2个人,同样有点c++的基础,我相信学驱动的人总比搞应用的人,打通整个流程要快。你们觉得呢?
特别是比如做sensor.触摸屏,音频,wifi,蓝牙的同学,一般建议从驱动层,打通到hal层,再打通到jni,然后到系统,最后到应用。只要打通了,所有问题你都可以很清楚定位,到底是哪一层出问题。
当然,我们的vip群就有vip样!!我只针对本群的学习提出意见或建议,每个人刚开始学习驱动就不可能一下子,把所有的模块往上层打通,但至少要打通到jni层。因为很多模块只需要驱动开发人员只要修改代码到hal层就ok了,剩下问题就丢给系统开发的同学,说实在的jni层也就是一个.cpp文件,说白了,里面干的事情主要java虚拟机起来,去寻找对应的hal层的.so库,还有就是上层的字符串对hal层的函数指针映射关系,简单说就是告诉我们,上层如何调用底层hal的函数或者open函数的。
在这里非常感谢大家听我一胡扯一下,如果觉得大家想跟我交流,都可以加我微信号:aiku868
或者可以加我的公众平台:aiku嵌入式
也可以加我的安卓开发交流群:欢迎加群号码:318016558
一起交流安卓驱动和系统开发
以前我最开始的就搞驱动,后来发现要熟悉hal层,接着就硬着看hal代码,第一次看,很剧痛,慢慢的,看习惯了,就好了,后来发现,搞驱动的人,不懂hal,很多时候就定位不了问题在哪里,所以那个时候,自己就会又一层那就是hal,很多时候,应用叫你添加接口的时候,你发现单单会hal和kernel,远远不够,因为上层给你的接口是到jni层,那么你这时候,就会逼自己去学jni,其实jni层,就是java native interface缩写,这个时候,学了这层又上一层了。从这样驱动开发人员,就一层层网上趴。虽然辛苦,但是总比上层往下钻容易。我可以负责任地说,如果同样2个人,同样有点c++的基础,我相信学驱动的人总比搞应用的人,打通整个流程要快。你们觉得呢?
特别是比如做sensor.触摸屏,音频,wifi,蓝牙的同学,一般建议从驱动层,打通到hal层,再打通到jni,然后到系统,最后到应用。只要打通了,所有问题你都可以很清楚定位,到底是哪一层出问题。
当然,我们的vip群就有vip样!!我只针对本群的学习提出意见或建议,每个人刚开始学习驱动就不可能一下子,把所有的模块往上层打通,但至少要打通到jni层。因为很多模块只需要驱动开发人员只要修改代码到hal层就ok了,剩下问题就丢给系统开发的同学,说实在的jni层也就是一个.cpp文件,说白了,里面干的事情主要java虚拟机起来,去寻找对应的hal层的.so库,还有就是上层的字符串对hal层的函数指针映射关系,简单说就是告诉我们,上层如何调用底层hal的函数或者open函数的。
在这里非常感谢大家听我一胡扯一下,如果觉得大家想跟我交流,都可以加我微信号:aiku868
或者可以加我的公众平台:aiku嵌入式
也可以加我的安卓开发交流群:欢迎加群号码:318016558
一起交流安卓驱动和系统开发
相关文章推荐
- 内存管理,readwrite,readonly,assign,retain,copy,nonatomic,的作用以及深浅拷贝
- URAL 1354 Palindrome. Again Palindrome (回文 + KMP)
- 适用于珠宝行业企业的TurboMail邮件系统
- programming-challenges Hanoi Tower Troubles Again! (110908) 题解
- UVa 12123 - Magnetic Train Tracks
- How can i get access to a Highcharts chart through a DOM-Container
- LeetCode:Factorial Trailing Zeroes
- TIME_WAIT状态(2MSL)的作用
- Container Water | LeetCode
- 【leetcode】Contains Duplicate
- PAT-PAT (Advanced Level) Practise Highest Price in Supply Chain(25) 【三星级】
- 【Linux学习笔记】栈与函数调用惯例 http://blog.csdn.net/xiaogugood/article/details/38490663
- Linux内核地址映射模型 http://blog.csdn.net/f22jay/article/details/7925531
- 编译遇到“__stack_chk_fail_local”错误
- [__NSCFString containsString:]: unrecognized selector sent to instance 的解决方案
- 人工智能中的具体搜索方法
- HOJ Train Problem II
- 栈区,堆区,全局区:内存结构图 http://blog.csdn.net/xlf13872135090/article/details/8828704
- 多线程 - 你知道线程栈吗 http://blog.csdn.net/gykimo/article/details/9132157
- 进程线程及堆栈关系的总结 http://blog.csdn.net/echoisland/article/details/6403763