大家好,今天小编关注到一个比较有意思的话题,就是关于如何学习linux驱动开发的问题,于是小编就整理了4个相关介绍如何学习linux驱动开发的解答,让我们一起看看吧。
如何自学linux驱动开发,做驱动开发需要哪些方面的知识?
做嵌入式应用的话一般的编程就可以了。那么嵌入式驱动开发与内核开发的话就需要学习多个方面的知识。我就把这方面的要求给你交流一下:(一家之言啊,多年从事嵌入式开发的一点感悟)嵌入式驱动开发需要了解的知识大概有以下几类:
每一个操作系统都有自己的构架,应该了解驱动在整个系统中的具***置与构建驱动程序的主要事项2 总线知识,比如PCI、U***总线。
3 芯片知识。
驱动其实就是对设备上一些寄存器的配置、CPU与设备本身的通讯以及对不同命令的处理4 要做好驱动,必须对所使用的CPU体系结构有一个比较深刻的认识5 C++基本用不上,主要是C和汇编。
6 做驱动最好要懂内核调试(比如说linux)
linux驱动开发有前途吗?
有前途,linux驱动开发这个看你能力,一般人做一点嵌入式应用程序开发,要求不是很高,如果做内核开发,那要求的能力比较高,耐心也很需要,如果学习的不错那就自己买一块板子试一下,但是如果是半路参加培训出来,而且硬件基础差的,我觉得还是考虑一下方向,。
嵌入式前景是不错,但是要求很高
linux内核和驱动开发,有什么经典的书籍推荐吗?
听过linux四库全书不?linux内核设计与实现、深入理解linux内核、linux设备驱动程序、linux内核源代码情景分析。 前三本国外的经典,英文还好的话最好看原版。linux内核设计与实现重在原理,比较好理解。深入理解linux内核比前者多了些细节。
linux自带有u***驱动,为什么还需要libu***?
比如内核里编译了温度传感器的驱动,还得有lm-sensors在用户层负责解释处理内核递交出的数据。
u***驱动是硬件驱动方面的东西,libu***是给应用软件开发和u***驱动协同操作(在底层读取u***内容)的功能时提供的库。
到此,以上就是小编对于如何学习linux驱动开发的问题就介绍到这了,希望介绍关于如何学习linux驱动开发的4点解答对大家有用。