XFESystem C# 开发预览验收 V4(2026-10-14)
分支 codex/csharp-system,解决方案 XFESystem.slnx。本记录验证 C# 裸机迁移当前阶段,完整系统重构尚未完成。验收配置:DesktopPreview4.MotionAndCaptionFrames。
| 检查 | 结果 |
|---|---|
| 宿主单元/协议检查 | 419 项通过 |
| 独立宿主文档浏览器 | 通过;完整网站资源属于宿主验收 |
| 完整来宾启动和基线图形交互 | 13 组通过 |
| 完整来宾 HTTP、中文、JS、正文与失败恢复 | 10 组通过 |
| 完整来宾窗口、视觉与性能检查 | 28 组通过 |
| TCG 对照窗口检查 | 28 组;UI-only,不计作完整 HTTP/基线验收 |
| 独立 net10.0 DLL | 来宾 PE/IL、Console/ANSI/真实 XFEConsole 执行成功 |
| 原生分辨率与界面倍率 | 3840×2160,200% |
| 清理与完整性 | 两次 QEMU 退出 0,镜像各自前后 SHA256 一致 |
| NativeAOT 已知限制 | 100 项分析警告,未宣称无警告 |
内核 SHA256:2234b9457a662e386f46bd790a9062324aaeec18edc3ba9fbbd87e80bc1fcf5e。
系统镜像 SHA256:417dbc5b3cdc1ccfcfb68428c1fa7326d0c8fbbc41622c705c48a5e0fc50d145。
托管示例 SHA256:18c82206daf11926a6a1f9a49207c6db140cf4cfe88fcda4fd053188e8cd68da。
WHPX 完整验收与 TCG UI-only 对照使用同一个 ELF 和逐字节相同的镜像。 宿主与来宾源码逐项核对,第二轮同时检查文件清单;唯一允许改变的是不参与编译的本报告后处理器,其最终哈希单列。串口、截图、受控 HTTP nonce 和详细结果见 JSON 的 Receipts。
绘制性能与刷新边界
绘制目标为 240 Hz。EDID 声明、驱动确认值、绘制目标与实际提交速度分别记录。稳态中位数和区间来自完整活动时间段;整窗速度另含尾部空闲,不代替稳态数据。
| 加速器 / 活动 | 稳态提交 FPS 中位数(区间) | 平均复制像素/帧 | 最近绘制 ms | 含空闲整窗 FPS |
|---|---|---|---|---|
| WHPX / 鼠标移动 | 228.39 (219.78–237.00) | 2293 | 0.009 | 173.15 |
| WHPX / 文档滚动 | 229.23 (224.77–233.69) | 76800 | 0.316 | 172.09 |
| WHPX / 窗口拖动 | 224.78 (214.65–234.91) | 1995767 | 1.932 | 169.55 |
| WHPX / 窗口缩放 | 229.80 (222.71–236.89) | 687594 | 2.077 | 173.55 |
| TCG / 鼠标移动 | 231.41 (229.88–232.93) | 2289 | 0.084 | 178.62 |
| TCG / 文档滚动 | 150.83 (148.71–152.96) | 76800 | 4.875 | 115.10 |
| TCG / 窗口拖动 | 59.18 (58.61–59.75) | 2003572 | 15.848 | 46.36 |
| TCG / 窗口缩放 | 69.42 (69.40–69.45) | 702382 | 12.354 | 52.98 |
以上为来宾渲染提交速度,不能据此判断物理屏幕扫描率。VSync 为 0,未保证最高刷新率同步输出;WHPX/TCG、QEMU 显示设备、GTK 与计时校准均可能影响可见结果。最近一次绘制耗时不是整段平均帧时间,复制像素也不是实际总线带宽。
实现与资产来源
内核及桌面使用 C# NativeAOT,复用固定 Cosmos 3.0.94 运行时、GC 与 HAL,没有使用 Linux/Windows 来宾内核。复用本项目 boot/uefi 的小型 Rust EFI 显示初始化助手后进入 Limine,助手 SHA256:347867c9676b4c9c6f5daddaeca7a1d532efa4d702b3df28155fee5326d946e6。 JSON 记录其实际源码、构建记录与产物哈希。
内置 Imagegen 生成9个透明原图,提示词、原图/Atlas哈希已核对;Atlas SHA256:9dc6aca9fb6adad070cf805c79553ec2846193dc000d31d1aa00066c374f1387。 每个原图的精确提示词和哈希保留在 GeneratedIcons 与资产目录。编译仅作确定性采样和 RGBA 打包,原始 PNG 未修改。
窗口支持拖动、双击最大化/还原、右下角调整大小、任务栏及开始菜单;Win 与 Alt+Tab 通过实际 make/break 输入验证。宿主系统仍可能截获未被虚拟机捕获的组合键。
本轮系统设置提供 Light/Dark、5个主题色及自定义 #RRGGBB。深色沿用 #09121B 背景、#102538 面板和 #285171 蓝色标题,终端默认 #75C9F5 / #0C1321。右上角只保留最小化与关闭;按钮、任务栏、文件列表、设置选项有悬停和按下反馈。窗口/线条在原生像素上抗锯齿,光标使用真实背景上的 alpha 光晕。配置写入 X:\System\Settings\Appearance.json,当前只保留于本次 RAM 会话。QEMU 默认最大化普通窗口并适配完整桌面;这会重采样宿主视口,来宾 framebuffer 仍为4K。-NativePixels 显式恢复1:1,窗口放不下时可裁切。PlanOnly证据不替代最终可见窗口确认。
本轮移除系统顶部栏,Settings 位于桌面及任务栏;最大化使用顶部空间。最小化/关闭悬停在180ms内平滑旋转,中途离开连续反向;原始PPM捕获了真实中间和反向帧。窗口拖动和缩放分别进行密集输入性能采样,settle后与Win+D完整重绘同状态帧比较,差异像素为0;Drag实际MotionReuses与MotionPixels大于0。交互auto核对同镜像TCG记录后使用TCG,因为本机历史WHPX+GTK在固件阶段超时而headless验收正常。显式whpx可选,其headless证明不算GTK启动证明。
仍未完成的能力
程序集仅支持受限 XFESystem.Net10.ConsoleIL.v1,没有完整 CoreCLR、JIT 或 .NET Framework 4.8。文件为 RAM live,关机后消失;应用与内核共享地址空间。网页仅有 HTML 文本、有限 DOM/JavaScript,原生 HTTPS 尚未移植并明确拒绝;不会跳过证书验证。Markdown 使用网站真实 Markdig/清理管线,来宾呈现文本,完整 CSS、高亮、数学/流程图资源属于单独宿主浏览器验收。
上游异常展开尚缺完整 finally 语义。已验证的显式恢复路径不证明通用资源回收完成;NativeAOT/trimming 警告涉及未全面覆盖的动态/反射路径,当前验收不推广到任意程序集和浏览器功能。
实体 USB 输入、多显示器、原生 GPU/VSync、其他架构、完整账号及持久化仍需移植。未更新专用 U 盘,旧发行目录和镜像保留。