首页 › programming › 从零写操作系统七大频道精读

从零写操作系统七大频道精读

第 2 轮精选 · 分类:programming(编程与开发) 本轮焦点:操作系统与内核开发(OS & Kernel Development from Scratch)

本期概述

写一个自己的操作系统,曾被视作"计算机科学的圣杯"——它要求你从一加电的瞬间开始思考:CPU 怎么从 0xFFFFFFF0 跳到你的第一条指令?中断向量表怎么搭?分页内存怎么把虚拟地址翻译成物理地址?调度器怎么在一个核上"假装"同时运行上百个进程?

2026 年,这件事比以往任何时候都更"可达"。原因有三:第一,工具链现代化(Rust + bootimage + QEMU 让你十分钟跑起一个能打印 "Hello" 的内核);第二,社区沉淀成熟(OSDev Wiki、Philipp Oppermann 的博客、Handmade Network 形成了完整的学习地图);第三,YouTube 上出现了一批把"啃手册"过程完整录下来的创作者。本期精读七个最具代表性的频道/系列,覆盖 C、汇编、Rust 三大技术栈,从"跟着敲"的教程派到"全程直播手搓"的硬核派一应俱全。

核心发现:这一领域没有捷径,但有最佳路径顺序——先用 Nanobyte/Daedalus 建立"能跑起来"的成就感,再用 Creel 补汇编底子,然后跟 Philipp Oppermann 学现代 Rust 内核工程,最后用 Handmade Hero 与 Tsoding 锻造"不依赖任何库"的系统编程心智。

七大频道对比一览

频道 / 系列 语言/技术栈 风格定位 最适合人群 起步难度
Daedalus Community C / C++、x86 系统化课程、循序渐进 想要"一条龙"教程的零基础 OS 开发者 ★★☆☆☆
Nanobyte C、x86 可视化讲解、节奏明快 喜欢画面感与结构图的初学者 ★★☆☆☆
CodePulse(Daniel McCarthy) C、汇编 课程+直播、配套付费体系 想深入内核又愿意系统付费学习的人 ★★★☆☆
Creel x86 汇编 汇编优先、性能视角 想打通"汇编→内核"底层脉络的人 ★★★☆☆
Molly Rocket / Handmade Hero C、手写一切 哲学级、零库依赖 追求"理解每一行底层代码"的硬核开发者 ★★★★☆
Tsoding(rexim) C、Rust 等 娱乐化直播、DankOS 喜欢"边看大佬造轮子边学"的人 ★★★★☆
Writing an OS in Rust(Philipp Oppermann) Rust 文章为主、视频为辅 想用现代工具链做内核的工程师 ★★★☆☆

一、Daedalus Community — 把"从零搭内核"拆成可执行课表

频道主页:https://www.youtube.com/@DaedalusCommunity

Daedalus Community 是 OS 开发教程圈里最"教科书化"的存在之一。它的播放列表几乎覆盖了写一个 x86 内核所需的每一个里程碑:从 BIOS 引导、写 bootloader、设置 GDT、切换到 32 位保护模式,到迁移到 C/C++、配置交叉编译器与链接器脚本,再到中断(IDT/ISR)、物理内存管理(页帧分配)、虚拟内存分页与堆分配。

关键洞察: - 它强调交叉编译工具链是第一道坎。很多人卡在"明明代码对、就是链接报错",根因是用了宿主机的 GCC 而非 x86_64-elf 目标工具链。频道用专门的篇幅讲清 host/target triplet 的意义。 - 保护模式切换的"三件套"(关中断→加载 GDT→置 CR0 的 PE 位)被讲得极具操作性,跟着敲就能让 CPU 真正进入 32 位世界。 - 频道内容与社区项目 DaedalusOS(一个受 NT 启发、Rust 编写的模块化内核)联动,让"学完之后能往哪走"有了清晰答案。

实用价值:如果你想要"我不看十本书,就想有人带我一行行把内核敲出来",这是首选起点。配套 GitHub 仓库可以对照每一集的 commit,便于卡壳时 diff 排错。

适合人群:有 C 语言基础、想第一次真正写出"属于自己的操作系统"的开发者。


二、Nanobyte — 用动画把抽象的内核概念变"可见"

频道主页:https://www.youtube.com/@nanobyte-dev 配套代码:https://github.com/nanobyte-dev/nanobyte_os

Nanobyte 的招牌是 "Building an OS" 系列。它的差异化优势不在"讲得更全",而在讲得更直观:内存分页的二级页表、段描述符的位布局、中断发生时栈帧的结构,这些在文字教材里是一团位运算,在 Nanobyte 这里是被一帧帧动画拆解的可视对象。

关键洞察: - "先看懂图,再写代码" 是它贯穿始终的方法论。许多观众反馈:看过页表动画之后,再读 OSDev Wiki 的代码就不会再"望码生畏"。 - 节奏比 Daedalus 更轻快,单集聚焦一个概念,适合碎片化学习,也适合作为"看不懂教材时的旁白解说"。 - 开源仓库 nanobyte_os 提供按章节组织的完整代码,是一个干净、可读、便于二次改造的"教学内核"骨架。

实用价值:把"内核开发"从 daunting(令人生畏)变为 approachable(可上手)。对自学者而言,降低的心理门槛比多讲两个特性更值钱。

适合人群:视觉型学习者、被传统 OS 教材劝退过的人、需要给学生/读者做直观演示的技术布道者。


三、CodePulse / Daniel McCarthy — 教程之外的"系统化付费路径"

频道主页:https://www.youtube.com/@CodePulse 付费课程站:Dragon Zap(dragonzap.com)

CodePulse 由资深软件工程师 Daniel McCarthy 运营,他的自我介绍是"涵盖编程语言开发、操作系统开发等广泛主题"。在 OS 方向,他有一套知名的 "Kernel Development From Scratch" 播放列表,并时常在直播里直接写内核(#kernel #osdev #assembly #x86),让观众看到真实排错过程而非剪辑后的"丝滑版本"。

关键洞察: - 从内核到编译器的完整闭环。Dragon Zap 还提供 "Creating A C Compiler From Scratch" 等课程,意味着学习者可以同时理解"被编译的程序"与"运行程序的内核",形成对系统软件的全景认知。 - 直播切片保留了"踩坑—调试—顿悟"的真实链条,这种未经美化的工程过程恰恰是新手最缺的参考——它告诉你"卡住是常态"。 - 配套付费体系提供练习、答疑与项目评审,适合需要外部约束和反馈闭环的学习者。

实用价值:适合把 YouTube 当"试听"、再决定是否投入系统化付费学习的路径;也适合喜欢"看真人实时 debug"的观众。

适合人群:愿意为结构化学习付费、希望有练习与答疑支撑、对"内核+编译器"双修感兴趣的开发者。


四、Creel(@WhatsACreel)— 让汇编成为内核开发的第一语言

频道主页:https://www.youtube.com/@WhatsACreel

Creel 的频道简介一句话点题:"我想证明手写汇编并不难,在很多方面甚至比高级语言更合理。"在 OS 开发语境下,这个立场尤为珍贵——因为内核的最初几百行、启动扇区、上下文切换、内联汇编与硬件交互,本质上都是汇编问题。

关键洞察: - 汇编是绕不开的"地基"。Creel 不把汇编当孤立技能教,而是和操作系统、性能优化、逆向理解绑定,让你明白"为什么内核代码里夹着 asm volatile"。 - 强调用汇编理解硬件契约:寄存器约定、调用规约(calling convention)、栈帧布局,这些在 x86 内核开发里是日常。 - 性能视角(与高级语言对比)让学习者体会到"低层不是负担,而是权力"——你能精确控制每一个时钟周期与每一字节内存。

实用价值:补齐"看得懂 C 但看不懂内联汇编"的短板,是从"会写内核功能"到"真正理解内核机制"的关键一跃。

适合人群:已有一定 C/内核基础、想彻底打通汇编与硬件脉络的开发者;做性能优化、嵌入式、逆向方向的工程师。


五、Molly Rocket / Handmade Hero — "不依赖任何库"的系统编程修行

频道主页:https://www.youtube.com/@MollyRocket 项目站点:https://hero.handmade.network/

Handmade Hero 是传奇游戏引擎开发者 Casey Muratori 的封神之作:从零开始,不使用任何第三方库,手写一个达到商业品质的游戏与引擎,全程录像、逐日(Day 001 起)推进,至今已是数百集的浩瀚工程。严格说它不是"写操作系统",但它对 OS 开发者的价值无可替代——它训练的是同一种心智:自己掌控从内存分配、窗口系统、输入处理到渲染的每一行底层代码。

关键洞察: - "亲手造一遍,才算真正理解。" Casey 反复示范"标准库/运行时帮你藏起来的东西",而这恰恰是 OS 内核每天在做的事——内核没有标准库可用,每一寸都得自己写。 - Reddit 上有高赞评论称 Handmade Hero 是"有史以来最伟大的编程资源之一",并坦言"是他让我爱上了底层编程"。其影响力可见一斑。 - 它强调性能与可预测性:手写内存池、避免隐藏的堆分配、精确的帧时控制,这些纪律直接迁移到内核的实时性、调度延迟、确定性需求。 - 衍生的 Handmade Network 社区聚集了大量"从零造软件"的项目,是 OS/底层开发者的精神家园。

实用价值:与其说是学某个 API,不如说是重塑编程世界观——理解"软件依赖的每一层是如何被建造的",这正是写内核的核心素养。

适合人群:追求深度理解、不满足于"调库"的硬核开发者;做游戏引擎、实时系统、高性能系统软件的工程师。


六、Tsoding(rexim)— 边直播边造内核的"娱乐化硬核"

频道主页:https://www.youtube.com/@AlexanderOleynikov(Tsoding) Twitch:https://www.twitch.tv/tsoding 个人站:https://rexim.github.io/

Tsoding(真名 Alex Oleynikov,网名 rexim/Zozin)自称"Recreational Programmer(娱乐化程序员)"。他的标志性内容是在 Twitch 直播里从零搓各种系统级项目,包括自制操作系统 DankOS、自研编程语言、自研编辑器等,再把录像搬到 YouTube。GitHub 上 tsoding 拥有 300+ 仓库。

关键洞察: - 真实工程过程 > 精心剪辑。Tsoding 会在镜头前坦承"我不知道这个怎么写",然后现场查手册、读 Intel SDM、试错、重构。这种"可见的思考过程"是教科书给不了的。 - 跨语言系统编程:C、Rust、各种自制语言混用,让观众看到"语言只是工具,系统思想才是核心"。 - DankOS 等项目虽偏实验性,却完整展示了"一个能引导、能打印、能处理输入的最小内核"如何从无到有。 - 强调"为乐趣而编程"——这与 OS 开发的内在动机高度契合:没有 KPI 驱使你写内核,纯靠好奇心。

实用价值:当你在自己写内核时卡住、怀疑人生,看一段 Tsoding 的直播会让你意识到"高手也在挣扎、也在查文档",从而重拾信心与方法。

适合人群:已经入门、想看"高水平开发者如何从零推进一个真实系统项目"的学习者;孤独的自学者(直播社区提供陪伴感)。


七、Writing an OS in Rust(Philipp Oppermann)— 现代 OS 开发的"事实标准"

博客:https://os.phil-opp.com/ 代码:https://github.com/phil-opp/blog_os 视频讲解:YouTube 上有多位创作者基于该系列制作 walkthrough(如 "Rust OS" 播放列表)

严格意义上这是一篇"博客系列"而非单一频道,但它是 2026 年 Rust 内核开发领域被引用最多、被视频化最多的源头资源——blog_os 仓库在 GitHub 收获约 17.5k stars,几乎所有 Rust OS 教程视频都建立在它之上。鉴于"OS 精选"绕不开它,且它已通过大量 YouTube 讲解视频成为视频学习生态的一部分,本期将其纳入。

关键洞察: - 用 Rust 的类型系统把"未定义行为"挡在编译期。unsafe 的显式标注、所有权模型避免悬垂指针,让内核这种"裸机 + 手动内存管理"的场景首次获得强保障。 - 工具链现代化:bootloader crate、bootimage 工具、QEMU 一键运行,把"配环境"从数天压缩到数分钟。 - 章节结构堪称范本:从 "A Freestanding Rust Binary" → "Minimal Rust Kernel" → VGA 文本 → 中断 → 堆分配 → 分页 → 协作调度,每篇都是独立、可运行、带测试的里程碑。 - 中文社区对其已有大量翻译与解读,是中文学习者进入 Rust OS 的最优起点。

实用价值:如果你只读一个资源就开始写内核,选它。它是"现代内核工程实践"的浓缩,远不止"能跑",而是"能测、能维护、能演进"。

适合人群:有 Rust 基础、想用现代工具链构建内核的工程师;想做 Rust 嵌入式 / no_std / 固件开发的开发者。


知识结构图:七大频道如何串成一条学习路径

flowchart TD
    A[起点: 想自己写一个操作系统] --> B{选择起步方式}

    B -->|要成就感/可视化| C[Nanobyte<br/>动画化内核概念]
    B -->|要系统化教程| D[Daedalus Community<br/>x86 C 内核一条龙]
    B -->|要付费+答疑| E[CodePulse / Daniel McCarthy<br/>内核+编译器双修]

    C --> F[补底层: 汇编]
    D --> F
    E --> F
    F --> G[Creel<br/>x86 汇编与硬件契约]

    G --> H{选择语言栈}
    H -->|现代 Rust| I[Writing an OS in Rust<br/>Philipp Oppermann]
    H -->|C / 零库依赖哲学| J[Handmade Hero<br/>Casey Muratori]
    H -->|直播看真实过程| K[Tsoding<br/>DankOS 娱乐化硬核]

    I --> L[进阶方向]
    J --> L
    K --> L

    L --> M[分布式系统 / 嵌入式 / 固件]
    L --> N[编译器与语言运行时]
    L --> O[游戏引擎与高性能系统软件]

    style C fill:#e3f2fd
    style D fill:#e3f2fd
    style I fill:#fff3e0
    style J fill:#fce4ec

学习方法论小结

把七个频道的共性提炼为四条原则:

  1. 先让它跑起来,再让它变漂亮。 Nanobyte 与 Daedalus 的价值正在于快速给出"我的内核在 QEMU 里打印了我的名字"的多巴胺。
  2. 底层不可跳过。 Creel 提醒你:不理解汇编,就永远在"调库",而非"写系统"。
  3. 拥抱工具链现代化。 Philipp Oppermann 证明,Rust + 现代构建工具能让内核开发从"玄学"变"工程"。
  4. 看真实过程,而非剪辑后的完美。 Tsoding 与 Handmade Hero 的核心馈赠,是让你看见高手也在查手册、也在挣扎。
mindmap
  root((操作系统与内核开发))
    系统化教程
      Daedalus Community
      Nanobyte
    汇编与硬件
      Creel
    现代工具链
      Writing an OS in Rust
    零库依赖哲学
      Handmade Hero
    直播真实过程
      Tsoding
    核心能力
      引导与保护模式
      中断与调度
      内存与分页
      工具链与交叉编译

延伸推荐(5 个相关资源)

参考来源

  1. Daedalus Community — YouTube — C/C++ x86 内核从零教程,覆盖 GDT、保护模式、分页等。
  2. Nanobyte — YouTube / nanobyte_os GitHub — "Building an OS" 系列及配套教学内核代码。
  3. CodePulse — YouTube / Dragon Zap — Daniel McCarthy 的内核与编译器从零课程及直播。
  4. Creel (@WhatsACreel) — YouTube — x86 手写汇编与系统编程教学。
  5. Molly Rocket / Handmade Hero — Casey Muratori 零库依赖、逐日录像的底层系统开发工程。
  6. Tsoding — Twitch / GitHub — rexim 的娱乐化系统级直播项目(含 DankOS)。
  7. Writing an OS in Rust — Philipp Oppermann — Rust 内核开发的事实标准博客系列(blog_os)。
  8. Reddit: Handmade Hero is the Greatest Programming Resource — 社区对其价值的高赞讨论。

本文由「51学通信」技术团队出品。51学通信由通信行业18年老兵爱卫生(微信ID: gprshome201101)维护,聚焦5G/6G核心网、3GPP标准解读、通信前沿技术深度分析。 出版作品有《5G核心网原理与实践》《IMS原理与实践》等4本通信专业书籍。知识星球「51学通信」提供深度技术答疑和行业洞察。

[!tip] 51学通信知识星球 星主:爱卫生(微信:gprshome201101)——公众号「51学通信」创办者,19 年通信行业运维与讲师经验,著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书(各大电商平台有售)。 星球定位:深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域,主打运维岗位与信令分析。 当前规模:5200 篇主题 / 990 个回答,198 元/年。 加入福利:加入星球后请加爱卫生微信,拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题,另有群内分享。 AI 加持:51学通信知识星球已作为 skill 接入 WorkBuddy,使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例,做总结、找文档和 PPT 等场景全覆盖。

51学通信知识星球海报-扫码加入