1.熟悉 Linux 系统,基本命令

  • 安装 Linux 系统,学会基本操作,熟悉文件系统,shell 脚本以及常用命令。

2.了解程序开发过程

  • 搭建开发环境,了解 Linux 上程序开发过程。
  • 学会使用文本编辑工具 Vim,编译工具 gcc, as, 连接工具 ld, 调试工具 gdb, make 工具,会写 makefile。
  • 用 C 语言实现并编译自己的测试程序。

3.尝试系统编程

  • 试着在 Linux 上用 C 语言进行系统编程,
  • 其中需要调用 Linux 系统库函数 (API)。
  • 例如,实现一个需要进行网络通信、操作文件的多线程/进程程序。
  • 以此深入了解 Linux 系统运行机制。

4.学习内核

  • 这一部分内容比较深,能把它学透的基本就是大牛了,写个 OS 就不在话下了。

5.驱动开发

  • 但是学习驱动开发无疑要把前面的都要学好。

6.嵌入式系统开发

  • 学好 Linux 是嵌入式系统开发的基础。
  • 嵌入式开发包括很多方向,有硬件、软件,以及系统级别。
  • 硬件要学单片机,ARM、MIPS,DSP 等各种 MCU,Verilog, RTL, 具体就不多说了,跟 Linux 关系不太大。
  • 软件的话,需要了解交叉编译,以及嵌入式环境下 C 语言的特殊用法,例如 volatile、 位操作、寄存器操作、大小端、程序跳转等。
  • 系统级,要了解 Linux 内核裁剪、移植、编译、调试,还有 Bootloader 、设备驱动等。


原文地址:http://www.cnblogs.com/starcos/p/16816234.html

1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长! 2. 分享目的仅供大家学习和交流,请务用于商业用途! 3. 如果你也有好源码或者教程,可以到用户中心发布,分享有积分奖励和额外收入! 4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解! 5. 如有链接无法下载、失效或广告,请联系管理员处理! 6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需! 7. 如遇到加密压缩包,默认解压密码为"gltf",如遇到无法解压的请联系管理员! 8. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载 声明:如果标题没有注明"已测试"或者"测试可用"等字样的资源源码均未经过站长测试.特别注意没有标注的源码不保证任何可用性