linux 嵌入式驱动工程师 要掌握哪些东西 我做过单片机,想做LINUX 驱动不知道要学那些东西请指教!

如题所述

先看《linux内核完全剖析》入门
然后掌握GNU工具链的用法,学习如何进行交叉编译,推荐多跑几次LFS和CLFS,熟悉常用的内核配置和编译方法。
然后从内核源码中找到和你的驱动功能类似的部分,学习如何编写Linux驱动的内核模块。
大方向是这样的,具体的还是要看你的工程情况,也许你只需要了解其中一部分内容。如果想牢固的掌握的话,以上步骤我觉得是必须的。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-06-02
还是先熟悉应用程的开发吧。如果你想学习驱动开发,那操作系统原理是
必须要懂得一点的,为此你可以看<The Design of Unix Operating System>,
以求入门。该书虽为英文,但行文流畅易懂,你会学到操作系统的大量概念
和原理。
你做过单片机,说明你应该做过裸机上的驱动开发的,对吧?其实,
开发驱动归结到底,就是读写寄存器和处理中断。这点在Linux操作系统下开发,
和在纯裸机上开发驱动程序是一样的,只不过Linux下开发的驱动程序是被嵌入
到操作系统内部去的。而Linux是多任务的,也就是说有可能上面会有很多的
应用程序在使用你写的驱动程序,所以在你的驱动程序中,可能经常需要处理
这方面并发的问题。这一点是和裸机下开发驱动程序不一样的最关键区别。
关于这方面的整体理解,你可以看看杭州JulianTec所总结的文章:《应用程序、
操作系统、驱动程序和硬件》这篇文章。
第2个回答  2011-06-10
做驱动要懂底层,软硬件结合,能灵活的用软件控制硬件,使它工作,驱动要求比较高些,一般要求是要有经验的工程师,但经过易嵌培训的学员可直接着手驱动工程师
相似回答