作为一个嵌入式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. Mvc网站开发知识

    网站开发基本本步骤 mvc是一个设计模式 网站开发前台页面技术 页面设计:Html css+Div 页面特效:JavaScript,jQuery oop编程核心公共技能 c#基础语法与程序逻辑 面向对 ...

  2. jquery ajax跨域取数据

    jsonp.js/html 主要是利用jquery ajax和jsonp的datatype 跨站点请求数据,记录~ 同源策略:同端口,同协议,同域:所以ajax不能支持跨域取得数据,解决方案一般是js ...

  3. Linux上安装KDE, Gnome和VNC

    安装所需环境:需要至少256m的可用内存(128也可以不过有点卡)CentOS或类似OS(Debian的话改成apt-get应该也可以) 1,安装KDE 1 yum install kdepim 或安 ...

  4. Oracle学习【索引及触发器】

    索引B_Tree结构 请参照 响应图例 索引是一种允许直接访问数据表中某一数据行的树形结构,为了提高查询效率而引入,是独立于表的对象,可以存放在与表不同的表空间中.索引记录中存有索引关键字和指向表中数 ...

  5. prime,素数的判断——c语言

    输入一个数a,求他是否是素数(用函数) 程序: #include<stdio.h> int prime(int a)-----------------------------------/ ...

  6. macbook pro retina 编程字体推荐

    使用VS2010.VS2012.Qt Creator编译工具首推等宽字体,等宽字体中consolas. 首先大家都知道等宽对于编码来说的直观性不言而喻,其次retina屏幕的特殊性,整天用特别小的字体 ...

  7. redis数据类型(字符串)

    字符串 这是最简单Redis类型.如果你只用这种类型,Redis就像一个可以持久化的memcached服务器 127.0.0.1:6379> set mykey somevalue OK 127 ...

  8. 速卖通api--获取商品信息

    <? $productId    = 'xxxx';//你的产品id    $access_token = 'xxxxx';//你的授权码    $appSecret    = 'xxxx';/ ...

  9. PHP常用数组函数

      一.数组操作的基本函数 数组的键名和值 array_values($arr);  获得数组的值 array_keys($arr);  获得数组的键名 array_flip($arr);  数组中的 ...

  10. 移动端下拉刷新、加载更多插件dropload.js(基于jQuery/Zepto)

    移动端下拉刷新.加载更多插件dropload.js(基于jQuery/Zepto) 原文:http://www.grycheng.com/?p=1869 废话不多说,先让大家看一下案例效果: DEMO ...