iT邦幫忙

鐵人檔案

2026 iThome 鐵人賽
回列表
Software Development

從零打造邊緣運算閘道器:Raspberry Pi 與 Linux 底層軟硬整合實戰 系列

這是一份從無到有的軟硬整合踩坑血淚史。本系列將帶領讀者深入邊緣運算 (Edge Computing) 的深水區。從硬體架構抉擇、探究 Linux 核心的 Device Tree 與 MMIO 位址、使用 ConfigFS 手工打造複合式 USB 設備,到解決致命的 FAT32 雙腦分裂危機。最後更拋棄傳統 OS 排程,利用 Python 打造「搶佔式軟即時排程器」。這是一趟結合硬體、作業系統底層與軟體工程的硬核修煉之旅。

參賽天數 26 天 | 共 26 篇文章 | 1 人訂閱 訂閱系列文 RSS系列文
DAY 11

[Day 11] 醫療級邊緣運算的基石:通訊協議硬化與「幽靈位元」除錯實錄

在先前的文章中,我們已經成功將 Raspberry Pi 打造為 DataDock,並利用 ConfigFS 開通了複合 USB 介面。然而,能通訊不代表通訊是...

2026-08-27 ‧ 由 will2108 分享
DAY 12

Day 12 - 複合設備 (Composite) 的惡夢:Windows 驅動與 Symlink 順序的黃金法則

在上一篇中,我們成功地使用 ConfigFS 將 Raspberry Pi 打造成了一個支援 Mass Storage (大容量儲存) 以及 CDC ACM (...

2026-08-28 ‧ 由 will2108 分享
DAY 13

Day 13 - 完美點火:如何寫出一支跨硬體 (Pi 3 / Pi 4) 的自動 UDC 綁定腳本?

NOTE 本系列文章已進行全域去敏與匿名化處理,專案代號統一為 DataGateway,內網 IP 統一為 10.0.0.x。 在前面的幾天,我們已經成功地...

2026-08-29 ‧ 由 will2108 分享
DAY 14

Day 14 - 虛擬磁碟的誕生:如何用 dd 與 mkdosfs 憑空捏出一個 FAT32 空間?

[!NOTE]本系列文章已進行全域去敏與匿名化處理,專案代號統一為 DataGateway,內網 IP 統一為 10.0.0.x。 在前面的章節中,我們已經...

2026-08-30 ‧ 由 will2108 分享
DAY 15

Day 15 - losetup 的藝術:如何優雅地掛載與回收 Loop Device?

[!NOTE]本系列文章已進行全域去敏與匿名化處理,專案代號統一為 DataGateway,內網 IP 統一為 10.0.0.x。 昨天我們用 dd 創造了...

2026-08-31 ‧ 由 will2108 分享
DAY 16

Day 16 - 雙腦分裂 (Split-Brain) 危機:當 PC 與 Pi 同時寫入磁碟的毀滅性後果

[!NOTE]本系列文章已進行全域去敏與匿名化處理,專案代號統一為 DataGateway,內網 IP 統一為 10.0.0.x。 回顧前幾天的進度,我們利...

2026-09-01 ‧ 由 will2108 分享
DAY 17

Day 17 - 奪回控制權:實作 USB 狀態監聽,動態卸載本機 FAT32 (Lazy Unmount)

[!NOTE]本系列文章已進行全域去敏與匿名化處理,專案代號統一為 DataGateway,內網 IP 統一為 10.0.0.x。 昨天我們討論了邊緣儲存中...

2026-09-02 ‧ 由 will2108 分享
DAY 18

Day 18:邊緣設備的高頻同步實戰—從 Race Condition 到二補數對齊

在邊緣運算與物聯網 (IoT) 開發中,資料同步往往是最具挑戰性的一環。特別是當我們的設備(DataDock)必須同時處理低頻(20Hz 生命體徵)與高頻(50...

2026-09-03 ‧ 由 will2108 分享
DAY 19

Day 19 - 軟體重插拔 (Software Re-plug):不碰硬體,用指令強制 Windows 重新掛載

在上一篇文章中,我們探討了 Windows 積極的緩存機制如何導致剛寫入隨身碟的資料,在未經安全移除的情況下被遺失。為了解決這個問題,除了確保底層的資料同步(使...

2026-09-04 ‧ 由 will2108 分享
DAY 20

Day 20 - 多執行緒的混亂:為何 Linux 內建的 CPU 排程器不適合用來控制 LED 燈號?

經過前幾天的奮戰,我們的 EdgeNode 已經具備了強大的檔案處理與 USB 通訊能力。它能在背景默默地攔截資料、切換磁碟、並用軟體模擬重插拔。 但是,對於第...

2026-09-05 ‧ 由 will2108 分享