请各位给指点一下学习嵌入式Linux的路线与方法,谢谢!

时间:2021-09-03 07:50:22
目前在公司负责Android系统设备驱动的开发,因为是新手,所以负责的都是像重力传感器、触屏、LED之类的简单字符设备。目前通过3-4个月的工作,已经基本摸熟了这些设备的编写方法。我对Android在Linux用户空间实现的那些HAL层和JNI层兴趣不大(虽然还是得干,但有点是任务的感觉,没有发自兴趣)那么如何在Linux内核驱动开发中更进一步?接下来是不是可以学习一下块设备?或者是应该停下来仔细研究一下内核的一些基本知识?还请各位过来人指教一下,谢谢!

11 个解决方案

#1


建议先看一下内核方面的书,对内核有个大概的认识,然后选定一个方向,钻研进去,内核内容太多了,如果想面面学到,有点不现实,所以在文件系统,内存管理,进程控制和通讯等其中选取一个深入研究,以点带面。

#2


先买块板子。

然后就是看你往哪方面发展,
是GUI还是网络,还是驱动。自己想清楚。

然后就是多看看书

#3


请问网络和驱动两个方向的各自特点。

#4


引用 2 楼 feiyinzilgd 的回复:
先买块板子。

然后就是看你往哪方面发展,
是GUI还是网络,还是驱动。自己想清楚。

然后就是多看看书


个人还是对驱动有兴趣,因为原来我是做硬件出身的,不知这方面如何循序渐进的学习?谢谢!

#5


引用 4 楼 alterwood 的回复:
引用 2 楼 feiyinzilgd 的回复:
先买块板子。

然后就是看你往哪方面发展,
是GUI还是网络,还是驱动。自己想清楚。

然后就是多看看书


个人还是对驱动有兴趣,因为原来我是做硬件出身的,不知这方面如何循序渐进的学习?谢谢!

先找本内核源代码书看看再说哈

#6


先要熟悉一下硬件,然后熟悉Linux编程,最好是一边做开发,一边看书,遇到什么问题就从书上找答案,这样比较好

#7


我一直做linux驱动,最近感觉想往应用上转了

#8


有硬件基础 多好学驱动啊

我觉得还是先把字符驱动基础打好吧  有很多东西要学的呢

跟着项目边做边学是最好的方法

#9


我个人觉得,研究个例子!android.build系统里的每个.mk文件我都得看,学习是很枯燥乏味的!
你需要的是找到突破口,那么你负责的那一块内容就是突破口,看看其他的driver是怎么写的?自己再实现它。
远看它是很复杂困难的,当你完成时就会会当凌绝顶,一览众山小!而且Linux的driver架构不是很复杂!
仔细看看,会由收获的!

#10


嵌入式工作还是不少的,LZ能力不错.应该不是市场不好的原因,如果因为这个我还是早点转行好.

#11


引用 1 楼 wyjkk 的回复:
建议先看一下内核方面的书,对内核有个大概的认识,然后选定一个方向,钻研进去,内核内容太多了,如果想面面学到,有点不现实,所以在文件系统,内存管理,进程控制和通讯等其中选取一个深入研究,以点带面。

支持

#1


建议先看一下内核方面的书,对内核有个大概的认识,然后选定一个方向,钻研进去,内核内容太多了,如果想面面学到,有点不现实,所以在文件系统,内存管理,进程控制和通讯等其中选取一个深入研究,以点带面。

#2


先买块板子。

然后就是看你往哪方面发展,
是GUI还是网络,还是驱动。自己想清楚。

然后就是多看看书

#3


请问网络和驱动两个方向的各自特点。

#4


引用 2 楼 feiyinzilgd 的回复:
先买块板子。

然后就是看你往哪方面发展,
是GUI还是网络,还是驱动。自己想清楚。

然后就是多看看书


个人还是对驱动有兴趣,因为原来我是做硬件出身的,不知这方面如何循序渐进的学习?谢谢!

#5


引用 4 楼 alterwood 的回复:
引用 2 楼 feiyinzilgd 的回复:
先买块板子。

然后就是看你往哪方面发展,
是GUI还是网络,还是驱动。自己想清楚。

然后就是多看看书


个人还是对驱动有兴趣,因为原来我是做硬件出身的,不知这方面如何循序渐进的学习?谢谢!

先找本内核源代码书看看再说哈

#6


先要熟悉一下硬件,然后熟悉Linux编程,最好是一边做开发,一边看书,遇到什么问题就从书上找答案,这样比较好

#7


我一直做linux驱动,最近感觉想往应用上转了

#8


有硬件基础 多好学驱动啊

我觉得还是先把字符驱动基础打好吧  有很多东西要学的呢

跟着项目边做边学是最好的方法

#9


我个人觉得,研究个例子!android.build系统里的每个.mk文件我都得看,学习是很枯燥乏味的!
你需要的是找到突破口,那么你负责的那一块内容就是突破口,看看其他的driver是怎么写的?自己再实现它。
远看它是很复杂困难的,当你完成时就会会当凌绝顶,一览众山小!而且Linux的driver架构不是很复杂!
仔细看看,会由收获的!

#10


嵌入式工作还是不少的,LZ能力不错.应该不是市场不好的原因,如果因为这个我还是早点转行好.

#11


引用 1 楼 wyjkk 的回复:
建议先看一下内核方面的书,对内核有个大概的认识,然后选定一个方向,钻研进去,内核内容太多了,如果想面面学到,有点不现实,所以在文件系统,内存管理,进程控制和通讯等其中选取一个深入研究,以点带面。

支持