微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > 嵌入式系统设计讨论 > 如何学习嵌入式开发?推荐几本学习嵌入式linux的书籍

如何学习嵌入式开发?推荐几本学习嵌入式linux的书籍

时间:10-02 整理:3721RD 点击:
如何学习嵌入式开发?需要学习哪些内容,为什么需要这些内容?推荐几本学习嵌入式linux的书籍

我认为还是要搞清楚操作系统基本原理,看看linux内核方面的书籍,看看Linux驱动编程的书籍。
推荐的有:《linux内核设计与实现》
网上看到其他人的推荐:
华清远见的《嵌入式Linux C语言应用程序设计》
如果是想搞嵌入式驱动开发,建议看以下的三本书北航的<<ARM嵌入式Linux系统构造与驱动开发范例>>,<<嵌入式设计及Linux驱动开发指南>>,<<构建嵌入式开发环境>>,<<嵌入式Linux应用程序开发详解>>

《鸟哥的linux私房菜》《UNIX环境高级编程》

最好找个高手带一带,可以少走很多无用的弯路
底层: <<ARM嵌入式系统开发-软件设计与优化>>
              
应用层开发:  <<Linux编程技术详解>>      适合入门
             <<unix环境高级编程>>       unix编程的圣经!        
             <<C++ GUI Qt 4 编程>>      官方教材
             最后最好找本网络编程的书来看看
驱动学习:    <<Linux设备驱动开发详解>>  前半部分还可以,后面基本就是贴代码,借来看,不建议买:-)
             <<Linux设备驱动 第三版>>   强烈推荐!买本中文版的,译者水平很深厚,翻译得还OK,
                                        不要找中文电子版的,翻译得很垃圾
至于Linux Bootloader Qt移植之类实践性较强的,建议到chinaunix上的牛人的博客里找资料,内容一般比较新  

先学习C和Linux,C语言的好书就那几本,《C和指针》,《C专家编程》,《C程序设计语言》,Linux可以看鸟哥的私房菜;
    然后,可以看关于操作系统,网络编程,进错间同学等方面的书,如:《Unix网络编程》《构建嵌入式Linux系统》等;
    最后,可以看一下关于内核和驱动的东西,如:宋宝华的《Linux设备驱动》《LDD3》,《深入理解Linux内核》等;
    要能结合开发板练习,效果会更好,可以考虑去培训一下,会节约很多时间。

多读案例,实践总结,看书,再实践。
arm,汇编,操作系统,C语言,建议可以先从《鸟哥私房菜》,学习linux操作系统!还得有点模电数电的基础!

如何构造嵌入式Linux系统
嵌入式uCLINUX及其应用开发

可以尝试以下路线:
(1) c语言是所有编程语言中的强者,单片机、dsp、类似arm的种种芯片的编程都可以用c语言搞定),因此必须非常熟练的掌握。
推荐书籍:《the c programming language》 这本经典的教材是老外写的,也有中译版本。
(2) 操作系统原理,是必需的,如果 是计算机专业毕业那也就无所谓了,如果是非计算机专业的就必须找一本比较浅显的计算机原理书籍看一看,把啥叫“进程”“线程”“系统调度”等等基本问题搞清楚。
(3) (3)linux操作系统就是用c语言编写的,所以 也应该先学习下linux方面的编程,只有 会应用了,才能近一步去了解其内核的精髓。
推荐书籍:《unix环境高级编程》(第2版)
(4) 了解arm的架构,原理,以及其汇编指令, 在嵌入式开发中,一般很少去写汇编,但是最起码的要求是能够看懂arm汇编。
(5) 系统移植的时候,就需要 从最下层的bootloader开始,然后内核移植,文件系统移植等。而移植这部分对硬件的依赖是非常大的,其配置步骤也相对复杂,也没有太多详细资料。
(6) 驱动开发
linux驱动程序设计既是个极富有挑战性的领域,又是一个博大精深的内容。
linux驱动程序设计本质是属于linux内核编程范畴的,因而是对linux内核和内核编程是有要求的。在学习前 要想了解linux内核的组成,因为每一部分要详细研究的话足够可以扩展成一本厚书。
另外推荐去各大书店图书馆看一下华清远见出版的畅销嵌入式专业图书,相信一定对 会有帮助的。

LINUX高级程序设计 这本书还不错1

《鸟哥的linux私房菜》《UNIX环境高级编程》

好…………………………

攻破C语言笔试与机试难点

谢谢分享   感谢你

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top