`
naiquan_hu
  • 浏览: 66673 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

学习嵌入式Linux 几点实用的建议

阅读更多

学习掌握嵌入 Linux 的开发与移植现在非常流行。各种学习文章与培训班,充斥书店街头。笔者也上了路,经历漫长的摸索,终于一日开窍,但的确糟蹋了很多金钱与时间。 作为穷人,现写下自己的感受,供好学寒士参考。

  第一要点: 实验重于看书 (多编码,少翻书)

  一定首先搭建x86实验环境。

  用旧计算机(周末电脑城抛售存货,有新的),搭建一套 实验环境。

  host主机: 一台PC机(能够跑redhat linux,看问档就可以了,配网卡与软驱)。

  target目标机: 一块旧PC主板,配一张网卡和一个软驱,电源。

  附件: 交叉网线 ,交叉串口线

  够了,不会超过3千元(已经很满足了)。

  软件全部到网站下载。

  先不管什么arm ppc mips, 以后看看文档吧。

  第二重点:GNU C编译

  在PC 上安装 redhat linux 包括 开发工具。

  熟悉linux 的配置命令。

  练习 linux 的 C 语言编程,多个程序的编译工程制作。

  无聊的话,将C语言教材的例程,编译十几个,熟悉GNU 编译器。 www.gnu.org

  包括gcc make ld objdump ar 等 GNU toolkit

  第三重点:realtime linux 内核编程/加载到目标板运行。

  1。下载 rt-linux ,或uclinux 或什么 非 redhat的linux 源码,一定是包括,编译工程makefile, 并且for x86 PC的。

  2。修改和配置程序,将 rtlinux的标准 console口改为串口,不是vga与键盘。

  3。在redhat linux 环境下,编译 这个 embedded linux内核。

  用mkboot的这样程序(或按代码中工具,)将编译好的内核执行文件拷贝定位软盘引导区。

  4。用这张软盘引导在目标PC主板 。

  在PC主机的串口终端上配置PC主板目标机。 效果同 redhat linux terminal console一样。

  以后越来越难,坚持。

  第四个重点 编译跑通网卡的驱动程序

  下载编译网卡驱动源码

  跑通主机与目标机的 网络通讯。

  不要太动头想, ping 通就是了。

  第五个重点 用tftp 下载执行文件从 PC主机 到 目标机运行。

  第六个重点 GNU GDB 远程在线调试(网口调试)

  第七个重点 实时内核学习/修改

  照文章/书 分析调试/破坏 内核的源码。

  主要是 调度/消息/存储/文件/进程/线程/互斥 等

  单独跑跑,了解内核功能就是了。

  第八个重点 TCP/IP的学习

  下载一个简单的web server (http server)

  学习理解,并编译加载运行。

  将PC主板目标机看作网站服务器,然后在PC主机的网络浏难器中访问这个 web server.

  有兴趣,把你的照片加载到目标机的 html网页中。

  第九个重点 网卡驱动程序分析

  了解 PCI总线原理,尝试独立写点网卡驱动程序,过滤以太报文的处理。 跟踪处理特殊的报文。

  第十个重点USB和 FLASH文件系统练习。(可以跳过)

  可以分析修改 USB与FLASH文件系统源码。

  一定要分析源码,上网查FLASH的型号。

  第十一个重点 路由器实验。

  分析zebra方面的源码,再买一张网卡。

  尝试分析NAT RIP等协议,将你的PC板目标机,变成一台简单的路由器。

  以后的实验 需要根据 行业来,

  例如,mini-GUI (图形编程),或 DVR (硬盘录象机),或IP Vedio WebTV 服务器。

  可以玩好几年,当然最好找工作前,有针对地做实验。

  一句话,动手修改编码,不要只看看。

分享到:
评论

相关推荐

    系统学习嵌入式Linux几点非常实用的建议

    学习掌握嵌入Linux的开发与移植现在非常流行。各种学习文章与培训班,充斥书店街头。本文给出了几点学习嵌入式Linux几点非常实用的建议。

    学习嵌入式Linux_几点非常实用的建议

    ### 学习嵌入式Linux_几点非常实用的建议 #### 概述 本文旨在为初学者提供一系列关于学习嵌入式Linux的有效建议。通过实际的案例分享与实践经验总结,帮助那些希望进入这一领域的读者更好地规划学习路径。文章强调...

    系统学习嵌入式Linux 几点非常实用的建议

    学习把握嵌入Linux 的开发与移植现在非常流行。各种学习文章与培训班,充斥书店街头。笔者也上了路, 经历漫长的摸索,终于一日开窍,但的确糟践了很多金钱与时间。作为穷人,现写下自己的感受,供好学寒士 参考。

    北京讯为 嵌入式linux开发指南

    在使用北京讯为嵌入式Linux开发板之前,需要注意以下几点: 1. 请注意和遵循标注在产品上的所有警示和指引信息。 2. 请勿带电插拔核心板及外围模块。 3. 使用产品之前,请仔细阅读本手册,并妥善保管,以备将来参考...

    ARM与嵌入式linux入门的建议

    在学习ARM与嵌入式linux的过程中,需要注意以下几点:首先,需要了解硬件的基本使用方法和控制方式;其次,需要掌握汇编语言和寄存器的控制原理;第三,需要了解linux系统的基本使用方法和编程技术;第四,需要了解...

    学习嵌入式Linux系统的笔记和体会

    ### 嵌入式Linux系统的关键知识点 #### 1. 嵌入式Linux系统的基本构成 嵌入式Linux系统通常由三个主要的软件层组成:Linux内核、C库(如glibc)以及应用程序代码。 - **Linux内核**:这是系统的核心,负责管理和...

    学习嵌入式Linux需要掌握的基础课程.pdf

    根据提供的文件信息,学习嵌入式Linux涉及多个基础知识点,涵盖了软件和硬件两个方面。下面详细列出和解释这些知识点。 首先,Linux在嵌入式系统中的应用是非常广泛的。它已经渗透到了消费电子、工业控制、军工电子...

    猪哥的嵌入式linux公房菜

    - **技巧分享**:学习实用小技巧。 - **案例分析**:通过实际例子加深理解。 #### 四、基础知识 **1. Linux下C语言编程基础知识** - **语法结构**:变量类型、流程控制语句等。 - **标准库**:常用函数及其功能...

    嵌入式系统学习几点建议

    9. **网络编程**:掌握TCP/IP网络基础知识,熟悉嵌入式Linux中的网络结构,学习socket编程,包括TCP和UDP协议,理解PPP协议和GPRS。编写网络应用程序,如代理服务器、路由器、许可证服务器,以及基于UDP或TCP的Web...

    嵌入式学习的几点建议

    对于想要加入或正在学习嵌入式系统的初学者,这里有一些关键的建议和指导。 首先,对于许多人认为 ARM+Linux 难度较高的问题,这是因为 Linux 系统本身涉及的层次深且广,包括内核、驱动程序、文件系统等,而 ARM ...

    嵌入式linux应用程序开发标准教程(光盘资料)

    本教程“嵌入式Linux应用程序开发标准教程”旨在为学习者提供一个全面了解和掌握这一领域的平台,通过配套的光盘PPT资料,可以让学习过程更加直观和高效。 在嵌入式系统中,Linux因其开源、稳定、高效的特点,被...

    基于嵌入式LInux的人脸识别系统

    【基于嵌入式LInux的人脸识别系统】是一个利用现代计算机视觉技术实现的项目,主要涉及了几个关键的技术领域,包括QT、OpenCV、嵌入式Linux以及V4L2。下面将对这些关键知识点进行详细介绍。 1. **QT框架**:QT是Qt ...

    说说嵌入式Linux系统入门学习的几点建议

    "嵌入式Linux系统入门学习的几点建议" 嵌入式Linux系统入门学习的几点建议可以总结为四个方面:学习基本的裸机编程、使用Linux系统进行一些基本的实验、研究完整的Linux系统的运行过程、开始做系统移植。 学习基本...

    嵌入式Linux自学指导书

    根据给定的文件信息,我们可以总结出以下关于“嵌入式Linux自学指导书”的相关知识点: ### 一、自学背景 - **国嵌嵌入式培训中心简介**:该中心是一家专业从事嵌入式技术研究与培训的专业机构。自2009年以来,...

    嵌入式Linux之我行_嵌入式Linux之我行_

    通过学习“嵌入式Linux之我行”这本教程,你将能够了解嵌入式Linux的基础知识,逐步掌握从硬件选型、系统配置到应用程序开发的全过程,为成为一名合格的嵌入式Linux开发者打下坚实基础。阅读PDF文档时,建议配合实际...

    ARM 嵌入式LINUX 系统构建与驱动开发

    ### ARM 嵌入式LINUX 系统构建与驱动开发 #### ARM 的发展与市场现状 当前,ARM 在嵌入式系统领域的应用非常广泛,众多企业都在招聘嵌入式工程师,尤其是熟悉 ARM 架构及其相关的软件开发人员。嵌入式系统大致可以...

    Linux学习的几点建议

    随着基础知识的积累,接下来的目标是成为一名真正的嵌入式Linux高手。 ##### 9. **电子技术与模拟电路** - **学习目标**:掌握模拟电路的基本概念,如电压、电流、电阻等,以及放大器、滤波器等组件的使用。 - **...

Global site tag (gtag.js) - Google Analytics