浏览代码

docs: 新增嵌入式Linux高级学习资源整理

kekeZack 2 周之前
父节点
当前提交
38c4ef71c4
共有 1 个文件被更改,包括 190 次插入0 次删除
  1. 190 0
      docs/嵌入式Linux学习/嵌入式Linux学习资源.md

+ 190 - 0
docs/嵌入式Linux学习/嵌入式Linux学习资源.md

@@ -0,0 +1,190 @@
+# 嵌入式Linux高级学习资源
+
+> 整理于 2026-08-27
+> 标注:🆓 免费 / 💰 付费
+
+---
+
+## 一、免费视频教程
+
+### 1. 韦东山系列(🆓 B站免费)
+
+| 系列 | 内容 | 适合阶段 |
+|------|------|---------|
+| 嵌入式Linux驱动大全 | 基于IMX6ULL,字符/块/网络设备驱动 | 驱动开发 |
+| Linux设备树详解 | 设备树语法、解析流程、驱动集成 | 驱动开发 |
+| 第5篇:驱动开发基础知识 | 驱动框架、内核模块、字符设备 | 入门驱动 |
+| LVGL GUI教程 | 嵌入式图形界面开发 | UI开发 |
+| FreeRTOS快速入门 | RTOS基础(已有基础可跳过) | 入门RTOS |
+
+**搜索方式**:B站搜索"韦东山 + 主题名"
+
+### 2. 野火电子系列(🆓 B站免费)
+
+| 系列 | 内容 | 适合阶段 |
+|------|------|---------|
+| 第四期:Linux驱动开发 | 基于IMX6ULL,手把手教学 | 驱动开发 |
+| 驱动章节实验环境搭建 | 完整实验环境配置 | 环境搭建 |
+
+**资料**:doc.embedfire.com(野火官方文档)
+
+### 3. 正点原子系列(💰 板子免费,教程部分付费)
+
+| 系列 | 内容 | 说明 |
+|------|------|------|
+| IMX6ULL教程 | 系统移植/驱动开发 | 板子资料免费 |
+| STM32MP1教程 | Linux+MCU混合开发 | 板子资料免费 |
+
+---
+
+## 二、免费培训材料(PDF)
+
+### 1. Bootlin(🆓 国际顶级,完全免费)
+
+| 资源 | 说明 | 链接 |
+|------|------|------|
+| Embedded Linux Training | 500页完整培训材料 | bootlin.com/docs |
+| YouTube频道 | 嵌入式Linux会议视频 | youtube.com/Bootlin |
+| 内核/驱动/系统移植 | 从入门到高级 | bootlin.com/pub/training |
+
+**特点**:业内公认最权威的免费嵌入式Linux培训材料
+
+### 2. Linux Foundation(🆓 部分免费)
+
+| 课程 | 内容 | 费用 |
+|------|------|------|
+| LFD450: Embedded Linux Development | 系统移植/设备树/根文件系统 | 💰 $299(有免费预览) |
+| LFD435: Device Drivers | 设备驱动开发(含实验) | 💰 $299(有免费预览) |
+
+**免费部分**:课程大纲、部分实验文档可免费下载
+
+### 3. 华清远见(💰 付费为主)
+
+| 资源 | 说明 |
+|------|------|
+| 《嵌入式Linux驱动开发教程》 | 阿里云开发者社区有部分章节 |
+| 嵌入式Linux应用程序开发标准教程 | PDF有部分免费内容 |
+
+---
+
+## 三、高级主题资源
+
+### 1. 设备树(Device Tree)
+
+| 资源 | 费用 | 说明 |
+|------|:----:|------|
+| 51CTO:Linux内核编程-设备树 | 💰 | 35课时,含QEMU虚拟开发板 |
+| Embedded Prep | 🆓 | 设备树从入门到精通(2026更新) |
+| 韦东山:设备树详解 | 🆓 | B站免费,基于实际开发板 |
+| Linux设备树详解(B站) | 🆓 | 手把手教你玩转Linux设备树 |
+
+**关键知识点**:
+- DTS/DTSI/DTB/DTC 概念
+- 设备树语法与属性
+- 设备树在驱动中的使用
+- Pinctrl/GPIO配置
+
+### 2. 内核驱动开发
+
+| 资源 | 费用 | 说明 |
+|------|:----:|------|
+| Linux设备驱动开发详解(华清远见) | 💰 | 阿里云有部分章节 |
+| Kernel Masters | 💰 | 实战驱动课程PDF |
+| Embedded Pathashala | 🆓 | 免费Linux内核驱动课程 |
+| LDD3(Linux Device Drivers) | 🆓 | 经典书籍,网上可找到 |
+
+**关键知识点**:
+- 字符设备驱动框架
+- 内核模块编程
+- 并发控制(自旋锁/信号量/互斥体)
+- 中断处理(上半部/下半部)
+- 内存管理(kmalloc/vmalloc)
+
+### 3. 系统移植(U-Boot/内核/根文件系统)
+
+| 资源 | 费用 | 说明 |
+|------|:----:|------|
+| 正点原子 | 🆓 | 开发板资料全部免费 |
+| 野火电子 | 🆓 | IMX6ULL系统移植教程 |
+| 《嵌入式Linux基础教程》第2版 | 💰 | 经典教材 |
+
+**关键知识点**:
+- U-Boot移植与配置
+- Linux内核裁剪与编译
+- 根文件系统构建(BusyBox/Buildroot/Yocto)
+- 交叉编译工具链
+
+### 4. 应用层编程
+
+| 资源 | 费用 | 说明 |
+|------|:----:|------|
+| APUE(UNIX环境高级编程) | 🆓 | 经典书籍,网上可找到 |
+| UNP(UNIX网络编程) | 🆓 | 经典书籍,网上可找到 |
+| 韦东山第1-3篇 | 🆓 | B站免费 |
+
+**关键知识点**:
+- 文件IO/标准IO
+- 进程/线程编程
+- 进程间通信(管道/共享内存/消息队列)
+- Socket编程
+- 多路复用(select/poll/epoll)
+
+---
+
+## 四、学习路径与Sprint对应
+
+| Sprint | 主题 | 推荐资源 | 费用 |
+|:------:|------|----------|:----:|
+| L1 | Linux C编译链+文件IO | 韦东山第1-2篇 | 🆓 |
+| L2 | 进程/IPC/Socket编程 | 韦东山第3篇 + APUE | 🆓 |
+| L3 | C++ ONNX Runtime推理 | 官方文档 + 示例代码 | 🆓 |
+| L4 | V4L2摄像头+多线程 | 韦东山驱动大全 | 🆓 |
+| L5 | CAN总线SocketCAN | 正点原子/野火资料 | 🆓 |
+| L6 | 交叉编译+ARM板部署 | Bootlin免费培训材料 | 🆓 |
+
+---
+
+## 五、硬件推荐
+
+### 你现有设备(够用)
+
+| 设备 | 用途 |
+|------|------|
+| Steam Deck + VMware + Ubuntu | 主力开发环境 |
+| 台式机(RTX 4070 Ti) | 深度学习/AI部署 |
+
+### 如果需要开发板(按优先级)
+
+| 开发板 | 价格 | 适合方向 | 推荐度 |
+|--------|:----:|----------|:------:|
+| 正点原子IMX6ULL | 200-300元 | Linux驱动/系统移植 | ⭐⭐⭐⭐⭐ |
+| 野火IMX6ULL | 200-300元 | Linux驱动/系统移植 | ⭐⭐⭐⭐ |
+| 树莓派4B | 300-400元 | 通用Linux/AI | ⭐⭐⭐ |
+
+**建议**:先用QEMU虚拟机学习(韦东山/野火教程都支持),后期需要再买开发板
+
+---
+
+## 六、免费虚拟机环境
+
+| 工具 | 说明 | 链接 |
+|------|------|------|
+| QEMU + ARM虚拟板 | 韦东山/野火教程都支持 | 随教程提供镜像 |
+| VMware + Ubuntu | 你的Steam Deck已有 | - |
+| VirtualBox + Ubuntu | 备选方案 | virtualbox.org |
+
+---
+
+## 七、社区与论坛
+
+| 平台 | 说明 |
+|------|------|
+| B站 | 韦东山/野火/正点原子官方账号 |
+| CSDN | 嵌入式Linux驱动开发专栏 |
+| 知乎 | 嵌入式学习路线讨论 |
+| GitHub | 开源项目/驱动示例 |
+| 阿里云开发者社区 | 华清远见部分教程 |
+
+---
+
+_本文件持续更新,遇到好的资源随时补充_