作为一个嵌入式Linux的初学者,我知道我可能将长期处于初学者阶段,因为我至今仍然没有能够摸索出一条很好的道路让我由初学者进入到更高级阶段。但是我始终没有放弃,本篇文章就是用来记录我学习嵌入式Linux的历程。我想,通过不断编辑,不断总结修改本文,或许我还真能够探索出一条最佳的路线来,但愿最终能够帮到那些后来人吧。同时,也希望看到这篇文章的高手们能够给小弟指一条明路,小弟将不甚感激。

第一阶段 熟悉平台

  工欲善其事,必先利其器。既然是学习Linux,那么必然需要先安装一个Linux的发行版,当然你可以直接在你的PC机上面安装一个Linux系统(如Ubuntu、CentOS等),也可以在虚拟机上面安装,Windows用户和Mac OS用户可以选择这种方式,也可以装一个双系统,小弟选择的这种方式,感觉不错,可以在网上搜相关的教程。

  系统安装好以后,就需要熟悉Linux中的常用shell命令了,比如如何创建文件或目录,如何使用vim编辑代码等等。学会了这些shell命令之后,还需要学习如何安装软件,因为系统不可能将我们需要使用到的软件全部安装,所以我们还是需要使用某一种包管理器安装一些其他包或者第三方软件。在不同的Linux发行版中,安装软件的方式是不同的,比如Ubuntu中使用的是apt-get,而CentOS中使用的是yum,所以我们需要根据自己使用的系统平台来选择对应的安装方式,这个可以在网上搜到很多相关的资料。

第二阶段 学习Linux平台上的程序开发

  对系统平台有了一定的了解后,就需要开始学习开发程序了。这个时候就需要熟悉GCC(GNU Compiler Collection),最开始可以编写一些简单的单个源文件的程序,重点在熟悉GCC 的编译流程,熟悉常用命令,学会使用GDB调试的方法。对这些常用的命令有一定的了解之后,就可以开始加大难度了,开始编写由多个源文件组成的复杂程序,这个时候的编译方法就有待改进了,这个时候我们就需要使用make来编译多个源文件,这一阶段主要是学习makefile的编写(现在正在学,2013-06-25)。

  当然,不是说你对以上的工具都熟悉了就能够看懂操作系统的源码了,这还需要你有一定的编程功底的积累,其中最重要的就是C语言高级特性以及数据结构。最近看到uC/OS-II的基础知识(《嵌入式实时操作系统uC/OS-II原理及应用(第2版)》任哲 北京航空航天大学出版社)时就遇到了关于函数指针和一个代码控制块的结构问题,有点困惑了(2013-06-26)。

嵌入式Linux学习记录表
阶段标记 阶段任务 起始时间 结束时间 完成状态
第一阶段 安装Linux系统(CentOS6.4) 2013-06-23 2013-06-23 完成
  学习Linux中常用的Shell命令 2013-06-25    
  学习Linux中软件包的安装方法 2013-06-26    
第二阶段 学习单个源文件的编译调试方法      
  学习makefile的编写      
         
         

学习嵌入式Linux有没有一个最佳的顺序(持续更新)的更多相关文章

  1. 【Linux系列汇总】小白博主的嵌入式Linux实战快速进阶之路(持续更新)

    我把之前在学习嵌入式Linux和工作中遇到问题和相关经验等,一起整理到这里,方便自己查阅和学习,温故而知新,如果能帮助到您,请帮忙点个赞: 本文的宗旨 嵌入式Linux 的项目通常需要一个团队来开发, ...

  2. 作为一个新人,怎样学习嵌入式Linux,(韦东山)

    很早以前在网上看到的韦东山老师写的文章,复制到自己的博客,方便自己以后看. 在学习嵌入式Linux之前,肯定要有C语言基础.汇编基础有没有无所谓(就那么几条汇编指令,用到了一看就会). C语言要学到什 ...

  3. 作为一个新人,如何学习嵌入式Linux?

    作为一个新人.如何学习嵌入式Linux?我一直在问太多次,特写文章来回答这个问题. 在学习嵌入式Linux之前.肯定要有C语言基础.汇编基础有没有无所谓(就那么几条汇编指令,用到了一看就会).C语言要 ...

  4. 作为一个新人,怎样学习嵌入式Linux

    作为一个新人,怎样学习嵌入式Linux?被问过太多次,特写这篇文章来回答一下. 在学习嵌入式Linux之前,肯定要有C语言基础.汇编基础有没有无所谓(就那么几条汇编指令,用到了一看就会). C语言要学 ...

  5. (转)作为一个新人,怎样学习嵌入式Linux?(韦东山)

    被问过太多次,特写这篇文章来回答一下.   在学习嵌入式Linux之前,肯定要有C语言基础.汇编基础有没有无所谓(就那么几条汇编指令,用到了一看就会).C语言要学到什么程度呢?越熟当然越好,不熟的话也 ...

  6. 作为一个新人,怎样学习嵌入式Linux?

        作为一个新人,怎样学习嵌入式Linux?   在学习嵌入式Linux之前,肯定要有C语言基础.汇编基础有没有无所谓(就那么几条汇编指令,用到了一看就会).尝试着写一些C语言竞赛的题目.它们是纯 ...

  7. 作为一个新人,怎样学习嵌入式Linux?(韦东山)

    这篇文章是引用韦老师的部分关于新人怎么学习嵌入式Linux的经验,引用如下: 1.电脑一开机,那些界面是谁显示的?是BIOS,它做什么?一些自检,然后从硬盘上读入windows,并启动它. 类似的, ...

  8. 零基础小白要如何跟好的学习嵌入式Linux

    作为一个新人,怎样学习嵌入式Linux?被问过太多次,特写这篇文章来回答一下. 在学习嵌入式Linux之前,肯定要有C语言基础.汇编基础有没有无所谓(就那么几条汇编指令,用到了一看就会). C语言要学 ...

  9. 零基础小白要如何跟好的学习嵌入式Linux(转)

    作为一个新人,怎样学习嵌入式Linux?被问过太多次,特写这篇文章来回答一下. 在学习嵌入式Linux之前,肯定要有C语言基础.汇编基础有没有无所谓(就那么几条汇编指令,用到了一看就会). C语言要学 ...

随机推荐

  1. (转)php连接mysql如何判断数据为空?

    <?php$result_a=mysql_query("select * from product_tag where product_id=$row[id]");$num ...

  2. [视频转换] C#VideoConvert视频转换帮助类 (转载)

    点击下载 VideoConvert.zip 主要功能如下 .获取文件的名字 .获取文件扩展名 .获取文件类型 .视频格式转为Flv .生成Flv视频的缩略图 .转换文件并保存在指定文件夹下 .转换文件 ...

  3. 详解android:scaleType属性

    详解android:scaleType属性 转自:http://blog.csdn.net/encienqi/article/details/7913262    http://juliaailse. ...

  4. hadoop_并行写操作思路

    这篇文章是关于,如何修改hadoop的src以实现在client端上传大文件到HDFS的时候, 为了提高上传的效率实现将文件划分成多个块,将块并行的写入到datanode的各个block中 的初步的想 ...

  5. Mybatis的学习总结:mybatis的入门介绍

    一.myBatis简述 MyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架.MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装.MyBatis可以 ...

  6. oc 获取当前时间

    //获取当前日期 NSDate* date = [NSDate date]; NSDateFormatter* dateFormat = [[NSDateFormatter alloc] init]; ...

  7. ecmall数据库基本操作

    ecmall数据库基本操作,为了认真研究ecmall二次开发,我们必须熟悉ecamll的数据库结构,ecmall数据库结构研究熟悉之后,才能去认真分析ecamll的程序结构.从而实现ecmall二次开 ...

  8. JS中的 this

    JS中的 this 变化多端,似乎难以捉摸,但实际上对 this 的解读,还是有一定规律的. 分析this,该如何下手呢?下面有一个函数 function show(){ alert(this); } ...

  9. 开启/关闭ubuntu防火墙

    LInux原始的防火墙工具iptables由于过于繁琐,所以ubuntu系统默认提供了一个基于iptable之上的防火墙工具ufw.而UFW支持图形界面操作,只需在命令行运行ufw命令即能看到一系列的 ...

  10. cx_Oracle使用方法二

    下载地址: https://pypi.python.org/pypi/cx_Oracle/5.2.1, 下载的时候注意数据库版本和操作系统环境. 技术手册: http://cx-oracle.read ...