?? ???? ?? 当然,也可以看<嵌入式Linux应用开发完全手册>里构建根文件系统那章。
说一下我的学习经历吧。
1. 我在学校时读的是物理电子,其实课程里没有教怎么设计电路,只是教了些电子电路方面的知识。PCB的设计
?? ??是在实验室里自学的,只设计过2层板,现在忘记得差不多了。但是保留了看原理图、看芯片手册的能力。
2. 选修了软件学位,对软件设计挺感兴趣,但是也只是学了C语言、而已。凭着兴趣做了不少竞赛题。没能力去
?? ??参加竞赛,但是把C语言练得很扎实。
3. 在实验室、在第1家公司,就是设计些简单的PCI卡,写一下windows的驱动程序
4. 在第2家公司,用51单片机做车载电话,开始走上纯软件的道路。
5. 开始感到单片机的不足,辞职半年闭门学Linux,从red hat怎么操作开始。步骤就是先看<ARM体系架构与编程>,
?? ??再自己写裸板程序操作硬件,接着到分析u-boot。同时看<linux内核完全注释>,对LINUX框架有所了解。
?? ??在写裸板时,建议各位加强对中断的理解,内核就是用中断来完成各种功能的。
6. 分析完u-boot,就开始进行简单的驱动编程了,这时候,能力还很弱。
7. 开始去中兴上班,工作2年,编写各类驱动、解决各类问题(驱动问题、帮助定位应用问题),能力得到煅炼。
?? ????
?? ?? 总结一下:
1. 硬件方面的书: 微机原理、数字电路,高校里的教材。毕业多年,忘名了。
2. Linux方面的书:
?? ?? <ARM体系架构与编程>
?? ???? ?? <嵌入式Linux应用开发完全手册>
?? ?? <Linux设备驱动>,老外写的那本
?? ?? <linux设备驱动开发详解>
?? ?? <linux内核完全注释>
?? ?? <Linux内核情景分析>
3. 视频:
韦东山Linux视频第1期(基于S3C2440录制): ARM实验,u-boot,文件系统,初级驱动
韦东山Linux视频第1期(基于S3C6410录制): 裸板程序
韦东山Linux视频第2期: 高级驱动
本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/ruanjian/article-70740-4.html
但没有谁备的战争更可怕
没钱看