推荐课程与资源(含免费)
🚩 第 1 阶段:Linux 基础 + GCC 工具链
📗 Bilibili: 马哥Linux基础入门教程

📘 《鸟哥的Linux私房菜》(重点看第1~10章)

🛠 工具掌握:vim, gcc, gdb, make, ldd, strace

✅ 练习目标:

写一个 Hello World 程序 + Makefile 编译

使用 strace 跟踪 ls 的系统调用

🚩 第 2 阶段:交叉编译 + 根文件系统构建
📗 Bilibili: 韦东山 Buildroot 教程(官方课外公开部分)

Buildroot 官网

《深入理解Linux内核》、《Linux设备驱动开发详解》

✅ 练习目标:

使用 Buildroot 构建 rootfs,并启动 QEMU 虚拟开发板

写 Makefile 编译程序到 ARM 架构

🚩 第 3 阶段:Linux 驱动开发入门
📘 《Linux 设备驱动开发详解》(宋宝华)

📗 B站: 韦东山 字符设备驱动教程(部分公开)

关键词:cdev、platform device、设备树、模块加载 insmod/rmmod

✅ 练习目标:

编写一个字符设备驱动,如 LED 灯驱动

使用 dmesg 打印内核日志,验证驱动工作

🚩 第 4 阶段:用户空间开发 + 系统编程
📘 《Linux高级程序设计》(王爽)

📗 B站:Linux C开发实战视频

涵盖 epoll、pthread、多进程、共享内存、信号机制

✅ 练习目标:

写一个多线程日志服务

epoll 实现简单 socket 服务端通信