RING ZERO

死亡零成本的 kernel 探險
核心
深淵
⚡ HVF/KVM 開機 ~120ms · 死亡零成本

在深淵裡
習得 Linux Kernel

以真實的 C 寫真實的 kernel module,於拋棄式 QEMU VM 中 insmod 探險。

kernel panic 是死亡、oops 是戰報、ftrace/KGDB 是探測裝備。通關那天,你寫的 module 可以直接 insmod 進真機,你產的 patch 可以直接寄給真正的 LKML。

Demo 為瀏覽器內示範(真實 oops 戰報重播)。完整遊戲需本機安裝——編譯與 VM 跑在你自己的機器上。

你會學到

「會 C 但沒碰過 kernel」到能寫 driver、讀 oops、投 patch。

🔥

Kernel Module

module_init/exit、kbuild、printk、參數、taint——從第一支火把開始。

📟

Char Device Driver

miscdevice、file_operations、copy_to/from_user 與 user pointer 邊界。

💀

讀懂 Oops

真實 oops/panic 戰報,pc/Call trace 直接 faddr2line 到你的原始碼行號。

🔒

並行與鎖

race、spinlock/mutex、lockdep——錯誤的鎖法當場被真 kernel 抓出。

🔍

除錯裝備

ftrace、KGDB、git bisect——把看不見的 kernel 狀態變看得見。

📮

Upstream 貢獻

checkpatch、format-patch、mailing list 禮儀——完整 patch 提交循環。

怎麼運作

遊戲只包流程,不包工具——技能零折損遷移到真實 kernel 開發。

選任務

地下城地圖,房間=kernel 子系統,連線=概念依賴。

寫真 code

瀏覽器內建編輯器或你自己的 $EDITOR,寫真實的 .c。

鍛造

容器內真實 gcc 編譯,診斷原汁原味。

進淵

拋棄式 QEMU 秒開機,insmod 你的 module,怪物 HP 條逐項判定。

死了讀戰報

panic 免費。原始 oops+逐行教學註解,改 code 再戰。

本機安裝

需要:macOS Apple Silicon(HVF)或 Linux x86_64(KVM)+ 容器執行環境。

# 1. 取得(uv 工具)
uv tool install git+https://github.com/Suzu1Dev/Suzu-Kernel-Playground

# 2. 環境自檢(六項全綠)
ring0 doctor

# 3. 下載 kernel artifacts + 建 toolbox 容器
ring0 setup

# 4. 開始第一個任務
ring0 web        # 瀏覽器版(編輯器+戰鬥+戰報)
ring0 start ch1.first-torch   # 或純 CLI