嵌入式linux学习是很多人最头疼的事了,掌握不了方法,学习总是很迷茫,那么今天华清远见的大神高手就告诉你:嵌入式linux学习经验,方法及步骤,对学习嵌入式linux是很有用的。
1、嵌入式linux学习,刚开始的时候,你要会用,要熟悉,linux系统,会使用这是最基本的。
2、熟悉嵌入式linux系统了,那接下来,就是linux开发的具体学习了,首先你要知道嵌入式linux离不开编程基础,所以你需要熟悉C语言,c++等
3、写完程序了发现不就是一个很普通的文件吗,怎么能像别人写的程序一样运行起来呢?这时我们需要知道如何编译一个程序,需要知道编译器及一些其他工具的使用,比如GCC,在开发的过程中我们为了提供工作效率还会用到Make,Shell等,为了能够很好的管理我们代码的不同版本,我们还需要知道什么是SVC,CVS,subversion,git等。
4、当我们再往深了学的时候,就要考虑效率问题了,这时候,你就需要接触数据结构,多线程,多进程了,这样会让你的效率更加提高。
5、学到这里,你就会在学习的时候看到Cortex-A15 、四核 、ARM等等字眼,什么是ARM,什么是Cortex-A15,我们需要进一步的了解。
6、花了很长时间系统做好了,发现板子上很多的什么不能用,怎么办呢?这时我们需要写一些驱动来驱动这些设备,这时我们需要知道,什么是字符设备驱动、块设备驱动、网络设备驱动,为了更好的写驱动我们需要了解更多的硬件相关的东西,我们需要看懂芯片手册,我们需要看懂原理图,只有我们懂我们的设备,才能更好的驱动它。等等,这里就列举更多的内容了,因为还有很多。
上面只是一些简单的嵌入式linux的学习经验,后面告诉你嵌入式linux的学习方法步骤。
嵌入式linux方法步骤:
关于命令
当然是知道的越多越好,用的越熟越好,但别只为了练命令而练命令:搜linux常用命令,得到一堆结果,对着敲!枯燥!效率低!易忘!我的建议是从使用中学习,比如你要配samba,你就要安装samba:yum ,aptget或make install,你会学到安装命令及用法,关防火墙,你要学到sudo service iptables stop 如果你有心,你肯定不只想知道这句话是关防火墙,你还想知道每个单词的意思及用法linux可以做很多东西,你从中可以学很多东西!主攻书籍:linux内核完全剖析、unix环境高级编程、深入理解linux内核、情景分析和源代。
2:系统编程
不建议直接整APUE,因为如果基础不好很可能有些地方看不懂, linux系统编程其实就是函数调用,就是io 进程线程,ipc(进程通信),网络编程,可能还会有UI。快速了解Linux编程是什么东西,快速知道如何写一个简单的程序,如文件拷贝程序(想想是不是很多时候你整了一大堆理论,却还是写不出程序来,是不是清楚知道函数的功能,却不知道怎么调用,xxx从入门到精通系列正好解决这个问题,它俨然就是带实例的中文man手册,讲解参数,讲返回,然后给个例程…)。可以找一家大书店,去计算机分类中找到这方面的书,可以在书店里看,也可以买下来。快速的了解linux编程是何物。然后再看apue 这类书会很好上手。另外,经常试写下系统命令:ls cd cp 等,经常看man。
3:驱动
驱动是个很深奥的东西,学驱动不要只限于驱动框架,一定要知道它每个功能的实现原理,比如你给驱动添加了poll功能,不要只知道这样写就可以实现poll,以后按这个写就可以了,你还要知道它的原理!!就是到内核里看它是怎样一步步调用过来的,中间经历了什么?!
学驱动要多看内核原码!了解内核子系统!不要说你看不懂,一开始谁也看不懂。必须有块开发板(arm9及以上),有条件可参加培训(进步快,能认识些朋友)。主攻书籍:《嵌入式Linux应用程序开发标准教程》等
4:vim
还是那句话,操作的越眼花缭乱越好!请自行Google它的配置放法!这里提几个常用插件:ctags, cscope, clang, wm, 还有很多!请自行Google!别用百度!! vim是个神器!功能上完全不输source insight等任何IDE!
还有一点,就是上面也说了,C语言是必须要学习的,你可以借鉴C语言学习视频来学习,还是不错的。
嵌入式linux学习要实践和理论相结合来学习,这样效果还是很好的