2、 操作系统原理,是必需的,如果你是计算机专业毕业那也就无所谓了,如果计算机专业的就必须找一本比较浅显的计算机原理书籍看一看,把啥叫“进程”“线程”“系统调度”等等基本问题搞清楚。
3、Linux操作系统就是用C语言编写的,所以你也应该先学习下Linux方面的编程,只有你会应用了,才能近一步去了解其内核的精髓。推荐平台:《创客学院LinuxC语言基础》4、 了解ARM的架构,原理,以及其汇编指令,我们在嵌入式开发中,一般很少去写汇编,但是最起码的要求是能够看懂arm汇编。
5、 系统移植的时候,就需要你从最下层的bootloader开始,然后内核移植,文件系统移植等。而移植这部分对硬件的依赖常大的,其配置步骤也相对复杂,也没有太多详细资料。
6、 驱动开发linux驱动程序设计既是个极富有挑战性的领域,又是一个精深的内容。linux驱动程序设计本质是属于linux内核编程范畴的,因而是对linux内核和内核编程是有要求的。在学习前你要想了解linux内核的组成,因为每一部分要详细研究的话足够可以扩展成一本厚书。
当然,以上的六点只不过是嵌入式开发大概的框架,在嵌入式开发过程中依然会遇到更多的问题,比如:交叉编译、makefile、shell脚本等等,学习嵌入式的周期较长,门槛较高,自学的话更是需要较强的学习能力和专业功底。在学习过程中可以参考创客学院的嵌入式视频教程辅助学习。只要能下来一定会取得成功!
推荐: