Загрузка официального README…
GitHub и настроенные зеркала недоступны. Попробуйте снова.
Один ПК с Windows 10/11 x64. Несколько независимых рабочих столов.
Превратите один компьютер с Windows 10/11 x64 в несколько независимо доступных экземпляров рабочего стола, каждый со своим дисплеем, вводом, звуком, приложениями и отдельным подключением удалённого стриминга.
Один хост. Несколько экземпляров.
Что такое Avalon?
Avalon — это платформа многосессионного стриминга рабочего стола для Windows 10/11 x64.
Вместо того чтобы ограничивать один ПК единственным интерактивным рабочим столом, Avalon позволяет одной машине одновременно размещать несколько независимых экземпляров Windows.
Каждый экземпляр может иметь собственные:
- сеанс рабочего стола Windows
- виртуальный дисплей
- разрешение и частоту обновления
- поток ввода
- аудиопоток
- приложения и игры
- удалённое подключение через Moonlight
Благодаря этому один мощный ПК может работать почти как несколько удалённо доступных компьютеров без необходимости запускать полноценную виртуальную машину для каждого пользователя.
Как это выглядит на практике?
Представим ПК с Windows 10/11 x64, на котором запущены три экземпляра Avalon:
Windows 10/11 x64 Host
│
┌──────┴──────┐
│ Avalon │
└──────┬──────┘
│
┌─────────────┼─────────────┐
│ │ │
▼ ▼ ▼
Instance 01 Instance 02 Instance 03
│ │ │
▼ ▼ ▼
Moonlight Moonlight Moonlight
TV Tablet Laptop
Каждый клиент подключается к своему собственному рабочему столу Windows.
Экземпляры работают параллельно и не делят один и тот же рабочий стол, курсор мыши, аудиовыход или сеанс приложений.
Зачем нужен Avalon?
Традиционные средства удалённого рабочего стола обычно рассчитаны на одного пользователя, управляющего одним рабочим столом.
Виртуальные машины хорошо решают задачу изоляции, но требуют дополнительных операционных систем, памяти, дискового пространства, усложняют использование GPU и повышают стоимость администрирования.
Avalon выбирает другой подход.
Он объединяет сеансы Windows, виртуальные дисплеи, независимые процессы стриминга и централизованное управление жизненным циклом, позволяя нескольким интерактивным рабочим столам сосуществовать на одном хосте Windows 10/11 x64.
Сложность остаётся внутри Avalon. Для пользователя схема проста:
Создать экземпляр
↓
Настроить дисплей и сопряжение
↓
Открыть Moonlight
↓
Подключиться
Основные возможности
Несколько независимых экземпляров
Запускайте несколько сеансов рабочего стола Windows одновременно на одном хосте.
Каждый экземпляр ведёт себя как самостоятельная интерактивная рабочая среда.
Независимый стриминг
У каждого экземпляра есть собственный контекст стриминга, к которому можно подключаться независимо через клиент Moonlight.
Телевизор может быть подключён к одному экземпляру, а планшет или другой компьютер одновременно — к другому.
Независимый дисплей
Каждый экземпляр может использовать собственную конфигурацию виртуального дисплея, включая разрешение и частоту обновления.
Avalon управляет экранным окружением, поэтому физический монитор для каждого экземпляра не требуется.
Независимый ввод
Клавиатура и мышь направляются в нужный сеанс Windows, а не разделяются между всеми экземплярами.
По мере развития стека ввода Avalon проектируется с расчётом на всё более полную изоляцию устройств на уровне отдельного экземпляра.
Независимый звук
Каждый экземпляр использует собственный аудиопуть сеанса Windows, поэтому разные пользователи могут слушать разные приложения и игры без простого смешивания аудио между экземплярами.
Управление жизненным циклом сеансов
Avalon самостоятельно создаёт и поддерживает сеансы.
Нет необходимости держать внешний RDP-клиент постоянно подключённым только ради сохранения активного экземпляра.
Веб-управление
Все экземпляры управляются из единого веб-интерфейса.
Типичные действия:
- создание и удаление экземпляров
- запуск и остановка экземпляров
- настройка разрешения и частоты обновления
- сопряжение клиентов Moonlight
- просмотр состояния подключений
- просмотр диагностической информации
- управление настройками уровня хоста
Для повседневной работы командная строка не требуется.
Создано для Moonlight
Avalon сохраняет знакомый опыт использования Moonlight.
Moonlight по-прежнему можно использовать на таких устройствах, как:
- Windows
- Linux
- macOS
- Android
- iOS / iPadOS
- Android TV
- Smart TV и стриминговые устройства, поддерживаемые Moonlight
Avalon меняет организацию хоста, но не заставляет пользователя осваивать совершенно новый клиент стриминга.
Сценарии использования
Домашние игры
Один игровой ПК может предоставлять несколько независимых игровых сред разным людям в одном доме.
Один человек может играть на телевизоре в гостиной, пока другой подключается к другой инстанции с портативного устройства или ноутбука.
Несколько аккаунтов и экземпляров
Запускайте разные приложения, аккаунты или игровые сеансы в разделённых средах Windows на одной машине.
Удалённая рабочая станция
Используйте один мощный настольный компьютер как несколько независимо доступных удалённых рабочих пространств.
Тестирование и разработка
Поддерживайте несколько сеансов Windows для тестирования ПО, автоматизации, проверки совместимости или изолированных пользовательских сред.
Homelab и self-hosting
Используйте высокопроизводительный Windows-компьютер как централизованно управляемый многопользовательский удалённый вычислительный хост.
Как работает Avalon
Внутри Avalon координирует несколько уровней системы:
Web Management
│
▼
Avalon Control Service
│
▼
Windows Sessions
Virtual Displays
Streaming Processes
Input / Audio Routing
│
▼
Moonlight Clients
Обычному пользователю не нужно разбираться в этих деталях реализации.
Вы создаёте экземпляр; Avalon подготавливает сеанс, дисплей, среду стриминга и жизненный цикл; после этого вы подключаетесь.
Модель изоляции
Avalon предоставляет изоляцию на уровне сеансов Windows.
Каждый экземпляр имеет собственный сеанс Windows, рабочий стол, приложения, дисплей, путь ввода и аудиопуть.
При этом экземпляры Avalon не являются полноценными виртуальными машинами.
Они продолжают совместно использовать:
- одну и ту же установку Windows на хосте
- одно и то же ядро
- один и тот же физический CPU
- один и тот же физический GPU
- аппаратные ресурсы одного хоста
Поэтому Avalon не следует рассматривать как границу безопасности уровня VM.
Цель проекта — эффективный многопользовательский и многорабочестольный стриминг, а не полная аппаратная виртуализация.
Текущее состояние
Avalon сейчас находится на стадии Alpha.
Архитектура, интерфейс управления, слой совместимости и стек устройств продолжают развиваться.
На этом этапе возможны:
- несовместимые изменения
- неполная аппаратная совместимость
- изменения интерфейса
- пограничные случаи, связанные с драйверами и сеансами
- функции, поведение которых может измениться до стабильного релиза
Avalon пока не предназначен для использования как критически важная производственная инфраструктура.
Тесты, логи, воспроизводимые отчёты об ошибках и отзывы о реальном использовании особенно ценны на этом этапе.
Платформа
Текущая целевая платформа:
Windows 10 x64 / Windows 11 x64
Avalon разработан вокруг модели рабочего стола, сеансов и графики Windows.
Поддержка других хостовых операционных систем сейчас не является основной целью проекта.
Производительность
Фактическая производительность стриминга зависит от множества факторов, включая:
- GPU
- поддержку энкодера
- графический драйвер
- разрешение
- частоту обновления
- кодек
- качество сети
- возможности декодирования клиента
- количество одновременно работающих экземпляров
Avalon не гарантирует фиксированное разрешение, частоту обновления, режим HDR или конкретное число одновременно работающих экземпляров на каждой системе.
Документация по совместимости будет расширяться по мере увеличения объёма тестирования.
Философия проекта
Avalon строится вокруг простой идеи:
Мощный ПК не должен быть постоянно ограничен одним экраном, одним рабочим столом и одним пользователем.
Хост может быть одной машиной. Опыт работы, который на нём запускается, не обязан быть только один.
Разработка
Этот README поддерживается как стабильное описание продукта Avalon.
Актуальные сведения о ходе разработки и сообщения проекта находятся в devlog.md.
Для сообщений об ошибках, вопросов и предложений функций используйте GitHub Issues.
Avalon
Один хост. Несколько экземпляров.
