XFESystem C# 开发预览验收 V5(2026-10-14)
分支 codex/csharp-system,解决方案 XFESystem.slnx。本记录验证 C# 裸机迁移当前阶段,完整系统重构尚未完成。验收配置:BrowserPreview5.CssEventsOfficialMonaco。
| 检查 | 结果 |
|---|---|
| 宿主单元/协议检查 | 575 项通过 |
| 独立宿主文档浏览器 | 通过;完整网站资源属于宿主验收 |
| 完整来宾启动和基线图形交互 | 13 组通过 |
| 完整来宾 HTTP、中文、JS、正文与失败恢复 | 10 组通过 |
| 完整来宾窗口、视觉与性能检查 | 28 组通过 |
| TCG 对照窗口检查 | 28 组;UI-only,不计作完整 HTTP/基线验收 |
| 独立 net10.0 DLL | 来宾 PE/IL、Console/ANSI/真实 XFEConsole 执行成功 |
| 原生分辨率与界面倍率 | 3840×2160,200% |
| 本轮 C# / Monaco 内存配置 | 1 GiB;512 MiB 完整编辑未通过,未计作达标 |
| 清理与完整性 | 验收 QEMU 退出 0,镜像各次前后 SHA256 一致 |
| NativeAOT 已知限制 | 100 项分析警告,未宣称无警告 |
内核 SHA256:4bea6cbfc43c19a5c50c8a9fa29fb409cd8b31df7c69e1ea67be4b8b85b7a159。
系统镜像 SHA256:140021a13d1088253fd4b71cb3dc29d58200b66a4b54dc091d2dfce8a1004967。
托管示例 SHA256:18c82206daf11926a6a1f9a49207c6db140cf4cfe88fcda4fd053188e8cd68da。
WHPX 完整验收与 TCG UI-only 对照使用同一个 ELF 和逐字节相同的镜像。 宿主与来宾源码逐项核对,第二轮同时检查文件清单;唯一允许改变的是不参与编译的本报告后处理器,其最终哈希单列。串口、截图、受控 HTTP nonce 和详细结果见 JSON 的 Receipts。
绘制性能与刷新边界
绘制目标为 240 Hz。EDID 声明、驱动确认值、绘制目标与实际提交速度分别记录。稳态中位数和区间来自完整活动时间段;整窗速度另含尾部空闲,不代替稳态数据。
| 加速器 / 活动 | 稳态提交 FPS 中位数(区间) | 平均复制像素/帧 | 最近绘制 ms | 含空闲整窗 FPS |
|---|---|---|---|---|
| WHPX / 鼠标移动 | 233.37 (231.80–234.93) | 2292 | 0.009 | 175.40 |
| WHPX / 文档滚动 | 234.26 (232.68–235.84) | 76800 | 0.356 | 176.04 |
| WHPX / 窗口拖动 | 226.28 (221.61–230.95) | 1987069 | 2.662 | 170.36 |
| WHPX / 窗口缩放 | 229.29 (224.91–233.68) | 687380 | 2.030 | 173.28 |
| TCG / 鼠标移动 | 234.38 (232.77–235.98) | 2289 | 0.083 | 179.44 |
| TCG / 文档滚动 | 130.16 (130.02–130.30) | 76800 | 5.819 | 98.78 |
| TCG / 窗口拖动 | 47.41 (46.84–47.98) | 2003105 | 21.820 | 36.93 |
| TCG / 窗口缩放 | 52.14 (51.94–52.33) | 706097 | 19.256 | 40.10 |
以上为来宾渲染提交速度,不能据此判断物理屏幕扫描率。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启动证明。
本轮自研 CSS 布局、外部经典脚本和 DOM 事件在同镜像裸机来宾通过 8 组验收。官方 Monaco 0.52.2 已实际绘制 JavaScript 着色文字,鼠标/键盘输入后真实 getValue() 改变;截图像素、网络资源及模型前后值见 BrowserNative。宿主生产管线兼容探针另列,未借宿主浏览器代跑。没有完整 CSS/Web 平台、Worker、TypeScript 语言服务或原生 HTTPS。
仍未完成的能力
程序集仅支持受限 XFESystem.Net10.ConsoleIL.v1,没有完整 CoreCLR、JIT 或 .NET Framework 4.8。文件为 RAM live,关机后消失;应用与内核共享地址空间。网页管线仍为有限子集,原生 HTTPS 尚未移植并明确拒绝;不会跳过证书验证。Markdown 使用网站真实 Markdig/清理管线,来宾文档预览仍呈现文本,完整数学/流程图资源属于单独宿主浏览器验收。
上游异常展开尚缺完整 finally 语义。已验证的显式恢复路径不证明通用资源回收完成;NativeAOT/trimming 警告涉及未全面覆盖的动态/反射路径,当前验收不推广到任意程序集和浏览器功能。
实体 USB 输入、多显示器、原生 GPU/VSync、其他架构、完整账号及持久化仍需移植。未更新专用 U 盘,旧发行目录和镜像保留。