uboot中为什么不需要应用程序 我想学习嵌入式系统,都需要些什么基础?
我想学习嵌入式系统,都需要些什么基础?
现在互联网IT发展的很快,嵌入式系统可谓是当前最热门最有发展前途的IT应用领域之一。因为很多人都想学习嵌入式开发,为大家讲解自学嵌入式开发需清楚的一些基础知识。
1.知道一点C语言基础知识。C语言是一门基础语言,无论对嵌入式软件那就硬件开发编程,都有吧很重要的是的作用。
2.打听一下操作系统。对操作系统所所了解也很重要的是,再者进程、线程,系统是咋分配资源的,咋系统管理硬件的等等,这些都能帮你对硬件和软件有个很好的理解。
3.了解Linux或是wince下的编程。
4.具备单机片或是ARM或则MIPS等去相关基础。
5.其他知识的扩充。我们还可以不是从泛读一些杰出的代码,打听一下UBOOT的源代码,或则是学下linux的源代码等等。不过嵌入式也可以零基础学习的,因此如果你认真用心学是可以不掌握嵌入式开发这门技术的。
Linux内核开发与Linux驱动开发有什么关系?
还没能学驱动,大概的说帮一下忙吧,驱动是确立在内核之上来旗下的,比如说你写了一个驱动的代码,那就要把驱动读取到内核中去,然后再内核去先执行,为什么不必须内核,我个人的理解那是,内核是来系统管理硬件资源的,你写的驱动代码是来驱动硬件的,内核不可能去驱动硬件的,不过以及管理进程,这部分的事情由驱动做个,驱动可以不理解为一个进程,内核你们负责来管理呀,结构就是:应用程序-rlm内核(比如说io操作write,read等等)-rlm驱动程序(比如说write来驱动磁盘来写)。
是说那就是这对驱动安装开发完毕,可不知道楼主是否学过单片机,可以明白驱动那就是一个驱动硬件的过程,那像单片机差不多,当然了再发过程中应该有比较大的区别的。
内核开发,这个工作还真又不是就像的人能旗下的,要不linux内核的维护就肯定不会给linux之父了,内核的开发那是用一种方法来合不合理的管理并怎么分配硬件资源,诸如内存的管理就都用到分页的方法,还有一个一些磁盘的管理,进程的管理,cpu的调度算法(比如最简单FIFO,时间片)等等,在自学内核前做到把操作系统原理看一下,这本书还也可以:
我怎么学习的时候结合了国外的操作系统原理第七版,因为这两本书详细介绍的侧重点所不同,上图的书理论联系实践性(两者相比后一本),后一本注重实际算法方面。
额。。说偏了哈,再说终有一天楼主肯定是想开发内核的,因此个人建议先把原理学会,有最基本的计算机科学基础知识最很好学的打扎实点,否则去学习内核就并非而且疲惫,当然是相比什么都不懂的情况下。
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。