-
嵌入式Linux开发从下到上分为嵌入式硬件开发、嵌入式驱动开发、嵌入式系统开发和嵌入式软件开发。
1、嵌入式硬件开发:熟悉电路等知识,非常熟悉各种常用元器件,掌握模拟电路和数字电路设计的开发能力。 精通嵌入式硬件知识,熟悉硬件开发模式和设计模式,熟悉ARM 32位处理器嵌入式硬件平台开发,有产品开发经验。
精通常用的硬件设计工具:Protel PADS (PowerPCB) Cadence Orcad。 一般需要有4 8层高速PCB设计经验。
2、嵌入式驱动开发:精通Linux操作系统、系统结构、计算机组成原理、数据结构相关知识。 熟悉嵌入式ARM开发,至少Linux字符驱动开发。
具备移植开发单片机和ARM嵌入式处理器的能力,了解硬件原理图,能独立完成相关硬件驱动调试,具备扎实的硬件知识,能够根据芯片手册编写软件驱动。
3、嵌入式系统开发:掌握Linux系统配置,精通处理器架构、编程环境、指令集、寻址方式、调试、汇编、混合编程等; 掌握Linux文件系统制作,熟悉各种文件系统格式(YAFFS2、JAFFS2、RAMdisk等); 熟悉嵌入式Linux启动过程和Linux配置文件的修改; 掌握Linux系统的内核缩减、内核移植、交叉编译、内核调试、bootloader编写、根文件系统制作及集成的全流程; 熟悉Linux软件开发环境的搭建(库文件交叉编译和环境配置等);
4、嵌入式软件开发:精通Linux操作系统的概念和安装方法,Linux下的基本命令、管理配置和工具,包括VI设备、GCC编译器、GDB调试器及使项目后悔管理工具; 熟练掌握C语言高级编程知识,包括函数和程序结构、指针、数组、常用算法、库函数的使用以及数据结构的基本内容,包括链表、队列等; 掌握面向对象编程的基本思想,以及C语言的基本内容; 精通嵌入式Linux下编程,精通嵌入式Linux开发环境,包括系统编程、文件IO、多进程多线程、网络编程、GUI图形界面编程、数据库; 熟悉常用颤动图形库的编程,如QT、GTK、MINIGUI、FLTK、NANO-X等。
所以如果你打算做嵌入式软件开发,上面的知识基本上就足够了。
-
我们先来谈谈嵌入式系统的组件
一般来说,嵌入式操作系统主要由引导加载程序、内核和rootfs三部分组成,即引导引导程序、内核和根文件系统。
因此,构建嵌入式系统不是从 Linux 内核开始的,完整的步骤应该是。
首先,获取一个引导加载程序(如源码),修改编译好的可执行启动映像文件,并将其烧录到嵌入式设备的第一个分区。 有必要从0x0开始。
然后获取内核源码(例如,修改编译生成可执行的内核镜像文件,如zimage或uimage),并将其烧录到嵌入式设备的第二个分区中。
最后,通过buybox等软件构建rootfs,编译成它,并烧录到嵌入式设备的第三个分区中。 设置所有启动参数后,将构建一个基本的嵌入式 (Linux) 系统。
-
王洪辉,江西凤城人,1996年毕业于华北航天工业学院,被分配到中航工业北京青云航空仪器公司工作,2000年从青云辞职后先后在6家公司工作; 笔者一直从事嵌入式系统的Linux内核开发,在各种流行的嵌入式处理器平台和操作系统上进行开发,并为各种设备和接口编写、移植或调试过驱动程序。 在任期间,即使笔者担任硬件部主任或技术总监等职务,只要有时间,他仍然坚持亲自参与一线技术开发工作,积累经验,精益求精,是嵌入式系统Linux内核开发领域名副其实的技术专家。 目前,笔者主要从事嵌入式系统Linux内核的研究和教学,并计划在未来组织开发自己的操作系统。
-
第 1 章 Linux 快速入门。
嵌入式 Linux 基础知识。
Linux 开发概述。
Linux 作为嵌入式操作系统的优势。
Linux 发行版。
如何学习Linux
Linux 安装。
基本概念。 硬件要求。
准备安装。 Linux 文件和文件系统。
文件类型和文件属性。
文件系统类型简介。
Linux 目录结构。
实验性内容 - 安装 Linux 操作系统。
本章摘要。 反思与实践。
第 2 章 基本 Linux 命令。
常用 Linux 命令。
与用户系统相关的命令。
与文件相关的命令。
与压缩和打包相关的命令。
文件比较合并相关命令。
与网络相关的命令。
Linux 启动过程的详细说明。
内核引导阶段概述。
初始化阶段。
Linux 系统服务。
独立运营的服务。
xinetd。
与系统服务相关的其他命令。
实验内容。 解压缩Linux下的常用软件。
定制Linux系统服务。
本章摘要。 反思与实践。
第 3 章:Linux 中的 C 编程基础。
Linux 中的 C 编程概述。
对 c 语言的简要回顾。
Linux 中的 C 编程环境概述。
常用输入 vi
EMACS初探
GCC 编译器。
Gcc编译过程分析。
GCC 编译选项分析。
gdb 调试器。
如何使用 gdb.
gdb basic 命令。
成为项目经理。
生成文件的基本结构。
makefile 变量。
makefile 规则。
使用 make 管理器。
使用 AutoTools
AutoTools 使用该过程。
尝试使用 AutoTools 生成的生成文件。
-
《嵌入式Linux应用开发全套手册》是人民邮电出版社于2008年出版的一本书,作者是魏东山淑良。 它主要讲述了从最简单的点开始,知道如何照亮一个LED,由浅到深的故事,让读者最终能够配置、移植、定制内核,编写驱动,移植GUI系统,掌握整个嵌入式Linux系统的开发方法。
做嵌入式开发,我认为软硬件都懂得,这是嵌入式大师应该追求的,也是大师们唯一的出路。 >>>More