📘 《AI 時代系列(6):進階通訊工程——邁向2035年太空星鏈網路時代》
📘 第 8周: 📱 從小晶片到手機:嵌入式、Android 與 IoT × AI
IoT × MCU × Android × TinyML 完整實戰
74/150單元: Embedded Linux 🐧 打造嵌入式平台
________________________________________
🎯 單元導讀
當 MCU 不夠強、RTOS 不夠用、記憶體太小、要跑 AI / 網路堆疊 / 多任務時,你會面臨一種現實:
❗「MCU 撐不住了,我需要 Linux。」
這就是 Embedded Linux 登場的地方。
它不是一般的桌面 Linux,而是為小型裝置優化、裁切、重新組合後的工程平台。
Embedded Linux 整合了:
• Linux Kernel(裁切版)
• Bootloader(U-Boot)
• Root filesystem(BusyBox, Musl, glibc)
• Device Tree(硬體抽象)
• Package / Build System(Yocto、Buildroot)
• Driver / HAL
• Network Stack(TCP/IP、5G、Wi-Fi、LoRa)
• AI Runtime(TFLM、ONNX Runtime、NPU 驅動)
一句話:
⭐ Embedded Linux 是所有「有點智慧」、「需要網路」、「要跑 AI」的嵌入式裝置的靈魂。
________________________________________
🧠 一、Embedded Linux vs RTOS(核心差異)
• 任務模型
• RTOS:即時性高、架構輕量,適合確定性任務排程
• Embedded Linux:支援多行程、多使用者與大量驅動
• 記憶體需求
• RTOS:KB~MB 等級即可運作
• Embedded Linux:通常需要約 16MB~512MB
• 網路能力
• RTOS:提供基本 TCP/UDP 功能
• Embedded Linux:具完整網路堆疊,支援 VPN、5G、OpenSSL 等
• 檔案系統
• RTOS:通常無檔案系統或僅支援 FAT
• Embedded Linux:支援 EXT4、SquashFS、OverlayFS 等完整檔案系統
• AI 能力
• RTOS:以 TinyML 為主,適合極輕量模型
• Embedded Linux:可實際執行 Edge AI,如 PyTorch Lite
• 常見裝置類型
• RTOS:MCU、微型感測器、即時控制裝置
• Embedded Linux:Gateway、Router、AI Box
一句話總結:
⭐ RTOS 解決「即時」
⭐ Embedded Linux 解決「複雜度」
________________________________________
🧠 二、Embedded Linux 架構(工程師必背)
Embedded Linux 的五大構成:
[ Bootloader ] → [ Kernel ] → [ Device Tree ] → [ RootFS ] → [ App Layer ]
________________________________________
① Bootloader(U-Boot)
作用:
✔ 初始化 RAM、時鐘、電源管理
✔ 載入 Kernel
✔ 提供 recovery / OTA 介面
U-Boot 幾乎統治 90% 嵌入式設備。
________________________________________
② Kernel(裁切版 Linux)
主要負責:
✔ 記憶體管理(MMU)
✔ 排程
✔ IPC / Process
✔ Driver(GPIO / I2C / SPI / USB / PCIe)
✔ Netdevice:網路堆疊全在 kernel
✔ Security(SELinux / AppArmor)
你在 IoT 上用的 Wi-Fi、Ethernet、5G、BLE 都跟 kernel 驅動綁死。
________________________________________
③ Device Tree(DTS / DTB)
嵌入式界的「硬體地圖」。
內容包含:
• CPU、核心數
• 中斷控制器
• I2C / SPI / UART
• GPIO pinmux
• Flash、NAND、eMMC
• 顯示器、感測器驅動
Linux 看到 DTS → 才知道怎麼操作硬體。
________________________________________
④ Root Filesystem(RootFS)
嵌入式常用:
• BusyBox — 超迷你 Linux 指令集
• Musl — 輕量 C 函式庫
• SquashFS — 只讀壓縮檔案系統
• OverlayFS — 增量寫入層
你看到的 /bin /etc /dev /usr 都在這裡。
________________________________________
⑤ Application Layer
你真正寫的:
• Python / C / C++
• MQTT / CoAP / LwM2M
• AI Runtime
• HAL + Driver
• Cloud Agent(AWS IoT, Azure IoT)
所有 IoT Gateway 都是跑這層。
________________________________________
🧠 三、Embedded Linux 的主流建構系統
嵌入式 Linux 不是 apt install 就行,必須自己「打造」:
________________________________________
① Buildroot(入門、快速)
✔ 輕量
✔ 20 分鐘就能 build 出 Linux
✔ 非常適合入門與小型產品
________________________________________
② Yocto Project(產業標準)
✔ Router → OpenWrt
✔ 車用 → Yocto
✔ 工業 Gateway → Yocto
✔ 5G 小站 / MEC → Yocto
Yocto 的精神:
⭐「你不是在 build Linux,而是在 build 一個發行版。」
________________________________________
🧠 四、Embedded Linux × AI × 通訊工程(你未來工作最重要的部分)
Embedded Linux 是:
✔ 5G CPE
✔ LEO 星鏈地面站
✔ Wi-Fi 7 Router
✔ O-RAN RU / DU 小型基站
✔ IoT Gateway
✔ Edge AI 裝置
的主要 OS。
因為:
⭐ 可跑完整 Net stack
⭐ 可跑 AI 模型
⭐ 支援大量 Driver
⭐ 支援 Container(Docker / Podman)
⭐ 可最好地對接 Cloud / MEC / Edge
你學 Embedded Linux,就等於直接對接:
「6G × AI-native Network × LEO Gateway × IoT Edge」
________________________________________
🧠 五、ASCII 圖:Embedded Linux 分層概念
+---------------------------------------------------------------------+
| Application Layer |
| AI Runtime | MQTT | UI | LoRaWAN | 5G Agent |
+---------------------------------------------------------------------+
| Root File System |
| BusyBox | libc | configs | scripts | daemons |
+---------------------------------------------------------------------+
| Kernel (Driver + Scheduler + Network) |
+---------------------------------------------------------------------+
| Device Tree (Hardware Map) |
+---------------------------------------------------------------------+
| Bootloader |
+---------------------------------------------------------------------+
| Hardware |
+---------------------------------------------------------------------+
這張示意圖說明 Embedded Linux 採用由下而上、層層抽象的系統架構:最底層的硬體先由 Bootloader 啟動,再透過 Device Tree 描述硬體配置,交由 Kernel 管理驅動、排程與網路;其上是提供基本指令與服務的 Root File System,而最上層的 Application Layer 則負責實際功能,如 AI 推論、通訊協定與使用者介面,讓複雜硬體能以軟體方式被穩定且彈性地控制與擴充。
________________________________________
🧪 六、模擬題
**1️⃣ 專業題
為什麼嵌入式裝置需要 Device Tree(DTS)?**
📦 答案:
因為嵌入式硬體多樣性極高,DTS 為 Kernel 提供硬體拓撲資訊,讓 Linux 正確啟動 I/O、驅動與中斷。
________________________________________
**2️⃣ 應用題
哪一個工具最常用來構建嵌入式 Linux?**
A. apt-get
B. Buildroot(✔)
C. Conda
D. Visual Studio
Buildroot 能快速產生交叉編譯工具鏈、Kernel 與 RootFS,是建構嵌入式 Linux 系統的標準工具。
________________________________________
**3️⃣ 情境題
某 IoT Gateway 需要跑 LoRaWAN、Python、AI 模型,你會選:**
A. STM32(RTOS)
B. Arduino
C. Embedded Linux(✔)
D. 純裸機 MCU
解析: IoT Gateway 需同時支援 LoRaWAN、Python 與 AI 模型,必須具備完整作業系統與套件生態,Embedded Linux 最符合需求。
________________________________________
🛠 七、實務演練題(工程級)
1️⃣ 用 Buildroot 建立一個最小 Linux Image
2️⃣ 編寫 Device Tree 加入一顆新感測器
3️⃣ 新增 SPI 驅動到 kernel menuconfig
4️⃣ 在 Linux 上跑 ONNX Runtime 推論
5️⃣ 在 Yocto 中加入自訂 Layer(meta-aihans)
________________________________________
⭐ 八、小結:Embedded Linux 是 IoT × AI × 通訊工程的核心平台
✔ 它不是桌機 Linux,而是為小型硬體打造的專用 OS
✔ kernel、driver、network、AI、bootloader 全部包含
✔ 適用在 5G CPE、LEO Gateway、Router、工控、Edge AI
✔ Device Tree 決定了 Linux 如何驅動硬體
✔ Buildroot(快速)與 Yocto(產業級)最常用
一句話:
⭐ 想打造真正的 IoT × Edge AI × 6G 裝置,Embedded Linux 是必修主科。















