กำลังโหลด README อย่างเป็นทางการ…
ไม่สามารถเข้าถึง GitHub และ mirror ที่ตั้งค่าไว้ได้ กรุณาลองใหม่
พีซี 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 เลือกแนวทางที่แตกต่าง
Avalon ผสานเซสชัน Windows จอเสมือน กระบวนการสตรีมที่แยกกัน และการจัดการวงจรชีวิตแบบรวมศูนย์ เพื่อให้เดสก์ท็อปแบบโต้ตอบหลายชุดอยู่ร่วมกันได้บนโฮสต์ Windows 10/11 x64 เครื่องเดียว
ความซับซ้อนอยู่ภายใน Avalon สำหรับผู้ใช้ ขั้นตอนยังคงเรียบง่าย:
สร้างอินสแตนซ์
↓
ตั้งค่าจอและการจับคู่
↓
เปิด Moonlight
↓
เชื่อมต่อ
ความสามารถหลัก
หลายอินสแตนซ์อิสระ
รันเซสชันเดสก์ท็อป Windows หลายชุดพร้อมกันบนโฮสต์เดียว
แต่ละอินสแตนซ์ทำงานเสมือนสภาพแวดล้อมเดสก์ท็อปแบบโต้ตอบของตนเอง
การสตรีมแยกอิสระ
แต่ละอินสแตนซ์มีบริบทการสตรีมของตนเองและสามารถเชื่อมต่อแยกกันผ่านไคลเอนต์ Moonlight
ทีวีสามารถเชื่อมต่อกับอินสแตนซ์หนึ่ง ขณะที่แท็บเล็ตหรือคอมพิวเตอร์อีกเครื่องเชื่อมต่อกับอีกอินสแตนซ์พร้อมกันได้
จอแสดงผลแยกอิสระ
แต่ละอินสแตนซ์สามารถใช้การตั้งค่าจอเสมือนของตนเอง รวมถึงความละเอียดและอัตรารีเฟรช
Avalon จัดการสภาพแวดล้อมการแสดงผลโดยไม่จำเป็นต้องมีจอจริงสำหรับทุกอินสแตนซ์
อินพุตแยกอิสระ
คีย์บอร์ดและเมาส์จะถูกส่งไปยังเซสชัน Windows เป้าหมาย แทนที่จะถูกแชร์ระหว่างทุกอินสแตนซ์
เมื่อระบบอินพุตพัฒนาต่อ Avalon ถูกออกแบบให้มุ่งไปสู่การแยกอุปกรณ์ระดับอินสแตนซ์ที่สมบูรณ์ยิ่งขึ้น
เสียงแยกอิสระ
แต่ละอินสแตนซ์ใช้เส้นทางเสียงของเซสชัน Windows ของตนเอง ผู้ใช้หลายคนจึงสามารถฟังแอปหรือเกมต่างกันได้โดยไม่ให้เสียงถูกผสมข้ามอินสแตนซ์แบบง่าย ๆ
การจัดการวงจรชีวิตของเซสชัน
Avalon สร้างและรักษาเซสชันด้วยตนเอง
ไม่จำเป็นต้องเปิดการเชื่อมต่อ RDP จากไคลเอนต์ภายนอกค้างไว้เพียงเพื่อรักษาอินสแตนซ์ให้ทำงานต่อ
การจัดการผ่าน Web
อินสแตนซ์ทั้งหมดจัดการผ่านอินเทอร์เฟซ Web เดียว
งานทั่วไปได้แก่:
- สร้างและลบอินสแตนซ์
- เริ่มและหยุดอินสแตนซ์
- ตั้งค่าความละเอียดและอัตรารีเฟรช
- จับคู่ไคลเอนต์ Moonlight
- ตรวจสอบสถานะการเชื่อมต่อ
- ดูข้อมูลวินิจฉัย
- จัดการค่าระดับโฮสต์
การใช้งานปกติไม่จำเป็นต้องใช้ command line
ออกแบบมาเพื่อ 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 ของโฮสต์เดียวกัน
- kernel เดียวกัน
- CPU จริงตัวเดียวกัน
- GPU จริงตัวเดียวกัน
- ทรัพยากรฮาร์ดแวร์ของโฮสต์เดียวกัน
ดังนั้นไม่ควรมอง Avalon เป็นขอบเขตความปลอดภัยระดับ VM
เป้าหมายคือการสตรีมแบบหลายผู้ใช้และหลายเดสก์ท็อปอย่างมีประสิทธิภาพ ไม่ใช่การจำลองฮาร์ดแวร์เต็มรูปแบบ
สถานะปัจจุบัน
Avalon อยู่ในช่วง Alpha
สถาปัตยกรรม อินเทอร์เฟซการจัดการ ชั้นความเข้ากันได้ และระบบอุปกรณ์ยังคงพัฒนาต่อเนื่อง
ในช่วงนี้อาจพบ:
- การเปลี่ยนแปลงที่ทำให้เข้ากันไม่ได้
- ความเข้ากันได้ของฮาร์ดแวร์ที่ยังไม่สมบูรณ์
- การเปลี่ยนแปลง UI
- กรณีขอบที่เกี่ยวข้องกับไดรเวอร์และเซสชัน
- พฤติกรรมฟีเจอร์ที่อาจเปลี่ยนก่อนรุ่นเสถียร
Avalon ยังไม่ควรถูกใช้เป็นโครงสร้างพื้นฐาน production ที่มีความสำคัญสูง
ผลทดสอบ log รายงานบั๊กที่ทำซ้ำได้ และ feedback จากการใช้งานจริงมีคุณค่ามากในช่วงนี้
แพลตฟอร์ม
เป้าหมายปัจจุบัน:
Windows 10 x64 / Windows 11 x64
Avalon ถูกออกแบบโดยยึดโมเดลเดสก์ท็อป เซสชัน และกราฟิกของ Windows โดยเฉพาะ
การรองรับระบบปฏิบัติการโฮสต์อื่นยังไม่ใช่เป้าหมายหลักของโครงการในตอนนี้
ประสิทธิภาพ
ประสิทธิภาพสตรีมจริงขึ้นอยู่กับหลายปัจจัย เช่น:
- GPU
- การรองรับ encoder
- ไดรเวอร์กราฟิก
- ความละเอียด
- อัตรารีเฟรช
- codec
- คุณภาพเครือข่าย
- ความสามารถถอดรหัสของ client
- จำนวนอินสแตนซ์ที่ทำงานพร้อมกัน
Avalon ไม่รับประกันความละเอียด อัตรารีเฟรช โหมด HDR หรือจำนวนอินสแตนซ์พร้อมกันที่แน่นอนบนทุกระบบ
เอกสารความเข้ากันได้จะละเอียดขึ้นเมื่อขอบเขตการทดสอบขยายตัว
แนวคิดของโครงการ
Avalon สร้างขึ้นจากแนวคิดที่เรียบง่าย:
พีซีประสิทธิภาพสูงไม่ควรถูกจำกัดอยู่กับหน้าจอเดียว เดสก์ท็อปเดียว และผู้ใช้คนเดียวตลอดเวลา
โฮสต์อาจมีเพียงเครื่องเดียว แต่ประสบการณ์ที่ทำงานอยู่บนเครื่องนั้นไม่จำเป็นต้องมีเพียงหนึ่งเดียว
การพัฒนา
README นี้ใช้เป็นคำแนะนำผลิตภัณฑ์ Avalon แบบคงที่และเชื่อถือได้
สำหรับความคืบหน้าการพัฒนาแบบเรียลไทม์และข้อความจากโครงการ โปรดดู devlog.md
สำหรับรายงานบั๊ก คำถาม และคำขอฟีเจอร์ ให้ใช้ GitHub Issues
Avalon
หนึ่งโฮสต์ หลายอินสแตนซ์
