外观
os/verification.md
配套源码,运行方法见同目录 README。返回实验总览。
md
# OS 配套验证记录
日期:2026-10-04(Asia/Shanghai)。
## 实际执行结果
| 项目 | 结果 | 范围 |
| --- | --- | --- |
| Python Sv39/COW 模型 | 19 个 unittest 通过 | 地址、权限、大页、COW、回收、OOM、copyout |
| 模型演示 | 通过 | fork 后 1 页,子写后 2 页,退出后 0 页 |
| 官方九分支 SHA | 已实读并克隆核验 | 见 upstream-pins.json |
| 官方 util 内核编译 | 成功 | 未修改 starter,make -j2 kernel/kernel |
| 官方 util QEMU 启动 | 成功 | make qemu,进入 shell,echo OS_BASELINE_OK |
| 九个实验完整实现与评分 | 未执行 | 本仓库交付导读与模型,没有整套解答补丁 |
| 真实 RISC-V 设备与网卡 | 未验证 | 启动验证使用 QEMU |
## 环境
- Python 3.14.8。
- QEMU emulator 11.1.2。
- riscv64-unknown-elf-gcc 12.2.0,工具版本字符串为 `g2ee5e430018-dirty`。
- 官方 util 提交:`db9a9d8b7d82f44a61ce4e3ff165ac755a2aa862`。
- QEMU 启动:RISC-V virt、128MiB、3 个 hart、virtio 磁盘。
编译时链接器报告 kernel 包含 RWX LOAD segment 的警告;构建退出成功,随后 QEMU 正常启动。这是本次未修改官方骨架的观察记录,并未对链接脚本进行修补。
## 复核命令
```sh
python3 labs/os/models.py
python3 -m unittest discover -s labs/os -p 'test_*.py' -v
```
上游复核在独立临时 clone 中进行,未将完整 xv6 或构建产物复制进本仓库。进入自己的官方 util checkout 后,可执行 `make -j2 kernel/kernel` 和 `make qemu`,在 xv6 shell 输入 `echo OS_BASELINE_OK`;使用 `Ctrl-a` 后按 `x` 退出。
模型测试验证的是本仓库原创教学代码。上游启动验证只证明该固定 starter 在上述环境可构建运行,不证明任何未实现的 lab 已通过。