撰写 Diosix 文档
docs/ 和 README.md 中的每个文档页面必须与 hypervisor/、tools/ 和 scripts/ 中的实现保持 100% 同步,并且必须遵守 docs/style-guide.md 的规定,以确保文档在第一次审核时就能通过 reviewing-diosix。
核心要求
- 清晰、正确的英语散文(基本要求):所有文档必须使用美式英语编写,并确保拼写正确、语法通顺、措辞简洁,同时不牺牲技术清晰度或精确性。
- 文档与事实一致:绝不能在
docs/中留下过时的 CLI 标志、SBI 函数 ID、ioctl 编号、C 结构体布局(uint64_t与unsigned long的差异)、文件路径或配置键。每次更改行为、CLI 选项、模块化文件路径或配置模式的代码变更,都必须在同一次提交中更新docs/。 - 双重受众设计:明确针对两种不同的受众:
- 用户(初学者与专家):启动 Diosix、运行引导之旅、使用
dsx启动客户虚拟机或配置声明式系统/宪章清单的操作人员。 - 开发者和维护者:构建、测试、调试和扩展 M 模式虚拟机监视器、S 模式
dynarec和 U 模式工具集的工程师。
- 用户(初学者与专家):启动 Diosix、运行引导之旅、使用
- 严格遵循样式指南(
docs/style-guide.md):- 段落、列表项和代码块每行最多 80 个字符(Markdown 表格行和长 URL 除外)。在 Markdown 链接文本中使用文件基名(例如
[S50dropbear](../tools/.../S50dropbear)),使链接行在 80 列内整洁地换行。 - 使用 主动语态 和 现在时态(例如“虚拟机监视器验证 GPA”,永远不要使用“GPA 将被虚拟机监视器验证”)。
- 使用 句子式标题(例如
## 分层客户机模型,不要使用## 分层客户模型)。 - 在 每个页面首次出现时 拼写出缩写(例如
Supervisor Binary Interface (SBI)),之后只使用缩写(SBI)。 - 严格 为连续的多步骤流程使用编号列表,为非顺序项目使用无序列表。
- 段落、列表项和代码块每行最多 80 个字符(Markdown 表格行和长 URL 除外)。在 Markdown 链接文本中使用文件基名(例如
- 不确定时,停止并询问首席维护者:如果预期行为、术语或受众范围不明确,应当停止并询问首席维护者以获得澄清,而不是猜测或编造细节。
重点参考指南
在起草或编辑文档之前,请先阅读相关的参考文件: