以前只满足于课堂所学,孤陋寡闻,没有听说过Linux,只是知道Windows。2006年暑假,导师让我学习嵌入式系统:ARM+Linux,这时才知道除了Windows,还有Linux这种操作系统。经过了半年多的学习,掌握了很多,也有过浮躁,我想应该静心思考一下了。
首先,为什么要学习Linux?
我的研究方向是嵌入式Linux,所以学习Linux是为了“嵌入”,为应用开发服务。这是静心思考得出的结论。曾经头脑发热过,以为能够向身边的人讲解Linux是一种荣耀,以为能够在Linux下听听mp3,看看电影就是高水平。这是浮躁、浅薄!每个人通过看教程,都可以很容易完成这些任务。而我使用Linux不是为了打开个X窗口,听歌看电影,如果这样就完全忘记了自己学习Linux的目的,这种头脑发热的行为直接导致学习效率下降,进度减缓。虽然在一定程度上对Linux有了更多的了解,但是以后应该避免这种浮躁的行为。
其次,如何学习Linux?
有了学习目的,就很容易设计学习内容了。会基本的操作,掌握Bash Shell,掌握与嵌入式系统相关的知识点,比如NFS、FTP、HTTPD等,这些就够了。针对具体的应用,去了解具体的方面就可以。比如说,如果要去做音频方面的开发,需要mp3播放器,那么只需要看一下splayer、mplayer等那个合适,它们的基本移植步骤都是./configure && make && 移植可执行文件。
把握与嵌入式相关的基本知识,针对应用进行深入学习,这才是我学习Linux的正确方法。
最后,理论才是核心。对嵌入式系统来说,两大应用核心是MCU/SoC、EOS,而支撑这两个应用核心的是基础理论。学习基础理论虽然在短时间内看不出很大的效果,但是基础理论绝对会是以后工作水平提升的瓶颈。我觉得工科研究生在读研期间,能够静下心来把这些基础理论尽可能深入地研究掌握,这就是研究生学习的最大成就。当然,工科学习理论必定与实践相结合,如果二者按照比例划分,应该是1:1,理论指导实践,实践提高理论。如此而已。
不要把避免浮躁挂在口头上,要take action!