xyou a26866e339 feat: B7 APIC/IOAPIC接管 + NVMe写路径 + virtio_net virtqueue + PE兼容层修复 + QEMU测试套件全自动化
中断路由 (B7):
- apic.drv: LAPIC enable + IOAPIC重定向表编程(MADT ISO感知) + apic_route/apic_route_legacy/apic_diag开关
- UTSM: LAPIC EOI钩子(register_apic_eoi, ABI尾部追加) + IDT 0-255全覆盖 + spurious 0xFF特判
- FUCK: apic_route=0默认PIC(零回归) / =1 IOAPIC->LAPIC接管(失败完整降级) / legacy放开IRQ1/12/11

存储:
- nvme.drv: 写路径 + PRP list + 读回校验 + MSI/MSI-X中断驱动(nvme_msi开关, 回退纯轮询)
- build.ps1: apic.drv纳入构建(原为预置二进制)

网络:
- virtio_net: virtqueue RX/TX + netdev注册 + DHCP自测(slirp真实OFFER)

PE兼容层:
- pe_shim: guest->host指针转换(g_emu_mem_base + gp()) + shim fn32列补齐
- gen_pe.py: PE32+ RVA偏置修复(BUG-004) + cmd.exe生成
- desktop_app.h: da_mouse_poll先判AUX位 + da_mouse_init冲刷残留(BUG-003/008)
- shell: Ctrl修饰键跟踪(BUG-001) + g_run_image扩至1MB(BUG-002)

QEMU测试套件:
- 9用例全自动化(Run-All.ps1): boot-regression/driver-matrix/linux-compat/pe-compat/deaicup-e2e/userapps-matrix/network-e2e/performance-baseline/x86emu32-coverage
- QemuTest.ps1公共库: 串口断言/monitor sendkey/screendump/HTTP服务器/并发隔离

文档:
- CLAUDE.md: APIC/IOAPIC能力 + kernel_api暴露 + IRQ后端升级状态
- LESSONS_LEARNED.md: B7 LAPIC/IOAPIC经验教训(2条)
- Bug记录.txt: BUG-20260801-001~008 + BUG-20260803-009(9条)
- test-cases/*.md: 全部补充自动化脚本小节
- 桌面设计.md: .lnk快捷方式 + LINUXAPP.CNF Linux应用图标
- 系统开发策划.md: NVMe/virtio_net标完成 + B2/B7标已解决 + M2进度列
2026-08-04 18:08:08 +08:00
2026-07-31 13:53:49 +08:00
2026-07-31 13:53:49 +08:00

Deshab-OS

Deshab-OS 是一个从零编写的独立 64 位操作系统,基于 x86_64 long mode,采用单地址空间 Ring0(SAS-R0)内核架构,配套封缄内存(UTSM)、专用恢复根(DRR)与可加载驱动模块系统(DKM)。

项目状态

当前已完成可启动的实验内核闭环:Limine 引导 → UTSM 首阶段内核 → 14 个 DKM 驱动加载 → DSK 主内核 → 首次启动用户设置向导。

子系统 状态
早期启动 / IDT / PIC ✅
UTSM 封缄内存(selftest) 🔶
DKM 驱动系统(14/14 驱动) ✅
DMA 物理页分配器 ✅
AHCI / NVMe 块设备 🔶
FAT32 只读文件系统 🔶
e1000 RX/TX 网络 🔶
字体系统(DBF,GB2312 全覆盖) ✅
FirstInit 用户设置向导 🔶
SAS-R0-PCQ 调度器 ⬜
DRR 恢复系统 ⬜

核心架构

SAS-R0-PCQ  单地址空间 Ring0 + Per-CPU O(1) 位图调度器
UTSM        UUID 调谐封缄内存(所有内存存密文,明文须经 UTRW 读写器)
UTRW        带标记读写器(Fast Path / Slow Path)
DRR         专用恢复根(看门狗 / checkpoint / A-B 回滚 / 独立 Emergency Pool)
DKM         驱动模块系统(ELF64 .drv ABI,4 stage 分阶段加载)

文档

文档 内容
架构设计文档 系统整体架构、五大核心子系统、内存模型、驱动系统
启动路线设计 B0-B4 五阶段启动序列、启动契约、回退链、视觉体验
开发路线图 分阶段开发路线、里程碑、验收标准
贡献与协作规范 开发环境、代码规范、Git 工作流、PR 流程
CLAUDE.md 项目当前状态与下一阶段路线
UTSM 模块设计 封缄内存模块完整设计
DKM 驱动系统 驱动模块系统说明
DSK 主内核 主内核说明与 boot context
开发经验记录 开发过程中的经验与教训

构建

# 需求:LLVM Clang + ld.lld + Python/Pillow + QEMU
.\build.bat          # 构建 utsm.elf + deshab.elf + 14 个 .drv + ISO/deshab.img
.\ISO\run_qemu.bat   # QEMU UEFI 启动验证
S
Description
Deshab-OS 项目仓库
Readme Apache-2.0
710 MiB
Languages
C 99.2%
Shell 0.4%
PowerShell 0.1%
Python 0.1%