tianole/README.md
Microindole e3782144b8
refactor(build): split makefiles and normalize internal API names
- align makefile layout with Linux-style directories
2026-05-08 21:00:24 +08:00

1.8 KiB

Tianole

Tianole 是一个面向 UEFI x86_64 机器的自制操作系统项目。

当前目标不是一次性做“大而全”的系统,而是按 Linux 风格的分层思路,逐步把启动链、内核基础设施、用户态和文件系统建立起来,最终能在真机上安全启动,并逐步具备运行本地 git 的能力。

当前状态

  • 已跑通 QEMU + OVMF 下的最小 UEFI 启动链
  • 已拆分为 bootloader + kernel
  • bootloader 已能加载独立 kernel.elf
  • kernel_main() 已能实际执行

当前目录

tianole/
  AGENTS.md
  Makefile
  arch/
  docs/
  include/
  kernel/
  scripts/

当前还没有直接复制 Linux 的完整目录树,但已经开始按接近 Linux 的方式分层:

  • arch/:架构相关代码
  • kernel/:通用内核主体逐步放这里
  • include/tianole/:项目自有共享接口
  • docs/:正式设计和路线图

开发顺序

当前建议的实现顺序是:

  1. 启动链
  2. 早期调试输出
  3. 内存与异常基础
  4. 执行流与调度
  5. 用户态入口
  6. 文件系统与存储
  7. shell / 工具
  8. 面向 git 的补齐
  9. 真机落地

更细的阶段说明见:

构建与运行

在 WSL2 / Ubuntu 中:

make
make run

无界面调试:

make run-headless
cat build/debug.log

本地完整检查:

scripts/check.sh

GitHub Actions 会在 push 和 pull request 时运行同一个检查脚本。

文档