正在读取官方 README…
GitHub 与已配置的镜像端点目前均无法访问。你可以直接在当前页面重试。
一台 Windows 10/11 x64,多个彼此独立的桌面。
把一台普通的 Windows 10/11 x64 主机,变成多个可以同时运行、独立连接和远程串流的 Windows 实例。
每个实例拥有自己的显示、输入、声音、应用和远程连接。
一台主机,多个实例。
Avalon 是什么?
Avalon 是一个面向 Windows 10/11 x64 的多会话桌面串流平台。
传统情况下,一台 Windows PC 通常只有一个主要交互桌面。
Avalon 希望改变这一点。
通过 Avalon,同一台 Windows 10/11 x64 主机可以同时运行多个彼此独立的 Windows 实例。
每个实例都可以拥有自己的:
- Windows 桌面会话
- 虚拟显示器
- 分辨率与刷新率
- 输入
- 音频
- 应用与游戏
- Moonlight 远程串流连接
最终效果很简单:
一台 PC,可以同时被当作多台彼此独立的远程电脑使用。
而这一切并不要求为每个用户运行一整套完整虚拟机。
它实际是什么样的?
假设一台 Windows 10/11 x64 主机上运行三个 Avalon 实例:
Windows 10/11 x64 主机
│
┌──────┴──────┐
│ Avalon │
└──────┬──────┘
│
┌─────────────┼─────────────┐
│ │ │
▼ ▼ ▼
实例 01 实例 02 实例 03
│ │ │
▼ ▼ ▼
Moonlight Moonlight Moonlight
电视 平板 笔记本
每一台客户端连接的都是自己的 Windows 桌面。
不同实例之间不会共享同一个桌面、鼠标光标、应用会话或音频输出。
为什么需要 Avalon?
传统远程桌面工具通常围绕:
一个人连接一块桌面
来设计。
完整虚拟机虽然能够提供很强的隔离,但同时也意味着:
- 多套操作系统
- 更高的内存占用
- 更多磁盘空间
- 更复杂的 GPU 使用方式
- 更高的部署与维护成本
Avalon 选择另一条路线。
它利用 Windows 会话、虚拟显示、独立串流进程以及统一的生命周期管理,让多个可交互桌面同时存在于同一台 Windows 10/11 x64 主机中。
复杂的部分由 Avalon 处理。
用户实际需要理解的流程只有:
创建实例
↓
设置显示与配对
↓
打开 Moonlight
↓
连接
核心能力
多实例
一台 Windows 10/11 x64 主机可以同时运行多个独立 Windows 会话。
每个实例都是一个可以独立使用的桌面环境。
每个实例独立串流
每个实例拥有自己的串流上下文,并可以通过 Moonlight 单独连接。
例如:
客厅电视可以连接实例 A。
平板可以同时连接实例 B。
另一台电脑可以连接实例 C。
彼此互不干扰。
独立显示
每个实例可以使用自己的虚拟显示配置,包括:
- 分辨率
- 刷新率
- 显示状态
不需要为每个实例都准备一台真实物理显示器。
独立输入
键盘和鼠标输入会被送往对应的 Windows 会话,而不是所有实例共享同一套输入。
Avalon 的输入系统也在继续向更加完整的实例级设备隔离方向发展。
独立音频
每个实例使用自己的 Windows 会话音频路径。
不同用户可以同时运行不同应用、播放不同游戏声音,而不会简单混在一起。
会话自持
Avalon 自己负责创建并保持实例生命周期。
不需要长期挂着一个额外的 RDP 客户端,仅仅为了让会话继续存在。
Web 管理
Avalon 提供统一的 Web 管理界面。
日常操作可以集中完成,例如:
- 创建实例
- 删除实例
- 启动和停止实例
- 设置分辨率和刷新率
- Moonlight PIN 配对
- 查看连接状态
- 查看诊断信息
- 管理主机设置
普通使用不需要依赖命令行。
为 Moonlight 而设计
Avalon 不要求用户重新学习一套陌生的串流客户端。
客户端仍然可以使用熟悉的 Moonlight。
包括:
- Windows
- Linux
- macOS
- Android
- iPhone / iPad
- Android TV
- Moonlight 支持的电视和串流设备
Avalon 改变的是主机端的组织方式。
而不是要求用户重新适应整个串流生态。
使用场景
家庭游戏
一台高性能游戏主机,可以同时服务多个家庭成员。
例如一个人在客厅电视玩游戏,另一个人在掌机或笔记本上连接另一个实例。
多开与多账号
在同一台机器上运行多个彼此分开的 Windows 环境。
适合不同账号、不同应用或者多个游戏会话。
远程工作站
把一台高性能桌面电脑变成多个可以分别远程访问的工作环境。
测试与开发
同时维护多个 Windows 会话,用于:
- 软件测试
- 自动化
- 多用户兼容测试
- 不同运行环境
Homelab / 自托管
把一台高性能 Windows 主机作为集中管理的多用户远程计算节点。
Avalon 是怎样工作的?
从用户角度看,Avalon 的结构非常简单:
Web 管理
│
▼
Avalon 控制服务
│
▼
Windows 会话
虚拟显示
串流进程
输入 / 音频
│
▼
Moonlight 客户端
底层实现可以很复杂。
但这些复杂度不应该由普通用户承担。
你只需要:
创建一个实例,然后连接它。
剩下的交给 Avalon。
关于隔离
Avalon 提供的是:
Windows 会话级隔离
每个实例拥有自己的:
- Windows 会话
- 桌面
- 应用
- 显示
- 输入路径
- 音频路径
但 Avalon 实例不是完整虚拟机。
不同实例仍然共享:
- 同一套 Windows 主机系统
- 同一个 Windows 内核
- 同一颗物理 CPU
- 同一块物理 GPU
- 同一台主机的硬件资源
因此不应该把 Avalon 当作 VM 级别的安全隔离边界。
Avalon 的目标是:
高效的多用户、多桌面、远程串流。
而不是完整硬件虚拟化。
当前状态
Avalon 目前处于 Alpha 阶段。
项目中的很多部分仍在持续迭代,包括:
- 会话管理
- 虚拟显示
- 输入系统
- 硬件兼容性
- Web 管理界面
- 串流生命周期
- 诊断系统
Alpha 阶段可能出现:
- 破坏性更新
- UI 调整
- 硬件兼容问题
- 驱动问题
- 会话边缘情况
- 功能行为变化
因此目前不建议把 Avalon 当作关键生产环境基础设施。
现阶段最有价值的是:
测试、日志、可复现 Bug 和真实使用反馈。
平台
当前目标平台:
Windows 10 x64 / Windows 11 x64
Avalon 是围绕 Windows 桌面、会话和图形体系设计的。
目前没有将其他主机操作系统作为主要开发目标。
性能
Avalon 实际能够达到的串流效果取决于:
- GPU
- 硬件编码能力
- 显卡驱动
- 分辨率
- 刷新率
- 编码格式
- 网络环境
- 客户端解码能力
- 同时运行的实例数量
因此 Avalon 不会对所有硬件统一承诺固定的:
4K
120 FPS
HDR
N 个实例
随着测试范围扩大,我们会逐步完善兼容性与性能说明。
Avalon 的理念
Avalon 的核心想法其实很简单:
一台足够强大的 PC,不应该永远只能服务一块屏幕、一个桌面和一个用户。
主机可以只有一台。
但运行在上面的世界,不必只有一个。
开发
Avalon 正在持续开发中。
这份 README 作为 Avalon 的稳定产品介绍。
实时开发动态以及留言说明请查看 devlog.md。
Bug、使用问题和功能建议可以通过 GitHub Issues 提交。
Avalon
一台主机,多个实例。
