嵌入式开发七步曲

2019-07-13 04:33发布

来自http://blog.csdn.net/sailor_8318/archive/2007/09/03/1769662.aspx【序】学习Linux开发近一年,由于我是实验室第一个从事这方面开发的,学习过程中遇到了很多问题,可是总是求师无门,只能一个人自己摸索,同时也充分利用了网络,参考了广大CSDN博友及相关论坛的帖子,在此表示感谢!  嵌入式Linux的学习涵盖的范围比较广,下从bootloader,到内核移植、文件系统,中间的驱动开发,到上层的应用程序调试、开发环境等,变化莫测,经常是别人的能用自己的就有问题。 由于缺乏他人适当指点,自己在学习过程中也走了很多弯路,整个开发环境的搭建整了N久,更搞笑的是经常听说模块加载insmod,可连这个命令在主机还是ARM上用都没搞明白,那叫一个汗啊!大家勿笑,嵌入式Linux的初学者确实对交叉环境比较不懂,我是其一啊。 现在适逢好友小布丁要学习嵌入式Linux,就将近一年来的学习体会总结下,整理了一个总体的学习计划,希望给那些曾经像我一样彷徨的人一些帮助。后续将完善此文档,上传到个人空间上,先贴出目录。本人水平有限,不当之处,还请大家指正! 小布丁同学曾在我处于困境时一如既往的理解我支持我,给我信心给我鼓励,谢谢你,美丽开怀的小布丁,希望你能happy and fascinating forever 谨以此文献给我们永远可爱迷人的小布丁! Sailor_foreverSeptember 3, 2007 *****************************************************************************  第一篇 Linux主机开发环境(15天) 1.1 VmvareLinux的安装(优先)1.2 Windows下从硬盘安装Linux(可选)1.3 Linux的基本命令及使用1.4 Linux的文件系统及与windows的文件共享1.5 GCC开发工具1.6 GDB调试1.7 Makefile编写1.8 主机端的模块编程1.9 简单应用程序 第二篇 ARMLinux开发环境(7天) 2.1 交叉开发环境介绍2.2 交叉编译器cross-tool2.3 配置主机开发环境2.3.1 配置超级终端minicomhyperterminalDNW2.3.2 配置TFTP网络服务2.3.3 配置NFS主机端网络服务 2.4 建立交叉开发环境       2.4.1配置NFS ARM端网络服务       2.4.2 编译ARM-gdb 2.5 交叉调试应用程序2.6 ARM上的简单模块编程 第三篇 Linux系统bootlaoder移植(7天)3.1 Bootloader介绍3.2 u-boot命令及环境变量3.3 u-boot的编译配置3.4 u-boot源码分析3.5 u-boot移植过程  第四篇 Linux的内核移植(15天)4.1 配置编译Linux内核4.1.1 Linux内核源代码结构4.1.2 Linux内核编译选项解析4.1.3  Linux内核编译链接4.2  Linux启动过程源代码分析4.3  Linux内核移植平台相关代码分析 第五篇 Linux的驱动编程(15天)5.1 Linux的设备管理5.2 Linux的驱动程序结构5.3 简单的字符设备驱动程序5.4 Linux内核模块的加载卸载5.5 Linux的打印调试方法5.6 字符设备的高级属性-中断5.6 常见的串口网口驱动分析 第六篇 文件系统制作(5天)6.1 Linux文件系统制作6.2 文件系统和存储设备的选择6.3 部署Ramdisk文件系统的过程 第七篇 Linux的高级应用编程(5天) 总用时 1577151555 大概两个半月