Khi Microsoft phát hành Windows Subsystem for Linux (WSL) vào năm 2016, ai cũng đều thất vọng cả. Vì mơ ước của mọi người là chạy được song song các ứng dụng Linux và Windows mà không cần phải khởi động lại (boot qua lại giữa 2 hệ điều hành). Nhưng tiếc thay, WSL chỉ có thể chạy các ứng dụng dòng lệnh bằng Terminal.
Nếu bạn muốn cài đặt WSL trên Windows 10 thì có thể đọc bài viết này.
Năm ngoái, Microsoft lại bắt đầu cố gắng cách mạng hóa hệ sinh thái ứng dụng Windows. Lần này, họ thay thế nhân giả lập cũ bằng nhân Linux thực. Thay đổi này cho phép bạn chạy các ứng dụng Linux trong Windows, biến ước mơ 4 năm của người dùng cuối cùng cũng trở thành sự thật.
Bản Demo ban đầu của các ứng dụng GUI cho WSL
Về mặt kỹ thuật, cơ bản bạn đã được hỗ trợ cho các ứng dụng GUI Linux trên WSL, nhưng chỉ khi sử dụng máy chủ X của bên thứ ba. Chúng thường bị lỗi, chậm, khó thiết lập và ảnh hưởng đến quyền riêng tư.
Kết quả là một nhóm nhỏ những người đam mê Linux có kỹ năng và kiến thức để thiết lập một máy chủ X. Những người này sau đó đã vô cùng thất vọng vì thực tế nó không có khả năng tăng tốc phần cứng. Vì vậy lựa chọn tốt nhất vẫn là dùng các công cụ dòng lệnh trên WSL.
Nhưng tất cả điều này giờ đây đã thay đổi. Microsoft đang chính thức hỗ trợ các ứng dụng GUI Linux, các bạn sẽ nhận được khả năng tăng tốc phần cứng, cùng với một loạt các cải tiến khác trong WSL.
WSLg – Hỗ trợ các ứng dụng GUI Linux
Với sự hỗ trợ chính thức từ Microsoft trong WSL, có rất nhiều cải tiến đã được cập nhật như:
- Tăng tốc phần cứng GPU
- Hỗ trợ âm thanh và micro ngoài WSL
- Tự động khởi động máy chủ X và PulseAudio
Và, họ đã đặt biệt danh cho tính năng này là “WSLg”.
Các tính năng này sẽ giúp việc chạy các ứng dụng Linux trên WSL dễ dàng như chạy các ứng dụng gốc, và gây ít ảnh hưởng đến hiệu suất nhất.
Vì vậy, bạn có thể thử chạy IDE yêu thích của mình và nhiều ứng dụng khác như phần mềm CAD.
Tăng tốc phần cứng GPU trên ứng dụng Linux
Một trong những vấn đề lớn nhất khi chạy các ứng dụng GUI Linux trên Windows là chúng không thể sử dụng tính năng tăng tốc phần cứng. Điều này cho mọi hoạt động liên quan đến GPU đều trở nên chậm chạp và khó khăn.
Theo thông báo từ Microsoft:
Là một phần của tính năng này, chúng tôi cũng đã hỗ trợ tăng tốc đồ họa 3D trên GPU! Nhờ công việc đã được hoàn thành trong Mesa 21.0, bất kỳ ứng dụng nào đang thực hiện kết xuất 3D phức tạp đều có thể tận dụng OpenGL để tăng tốc bằng cách sử dụng GPU trên máy Windows 10 của bạn.
Đây là một bổ sung rất hữu ích và sẽ giúp ích cho bất kỳ ai muốn chạy các ứng dụng chuyên sâu về GPU thông qua WSL.
Hỗ trợ âm thanh và micro ngoài WSL
Một trong những yếu tố quan trọng để có trải nghiệm tốt hơn với các ứng dụng Linux là âm thanh. Với bản cập nhật WSL mới, âm thanh được hỗ trợ ngay từ đầu nhờ máy chủ PulseAudio được khởi động cùng lúc với máy chủ X. Cái này anh em nào dùng loa ngoài trên Linux sẽ hiểu. Kiểu lúc bật máy lại thì Linux sẽ sử dụng âm thanh của hệ thống chính ví dụ như Laptop, anh em phải chuyển output âm thanh qua loa ngoài.
Microsoft giải thích:
Các ứng dụng GUI của Linux trên WSL cũng sẽ bao gồm hỗ trợ âm thanh và micrô ngay lập tức. Điều này sẽ cho phép ứng dụng của bạn phát âm thanh và sử dụng micrô, tuyệt vời để xây dựng, thử nghiệm hoặc sử dụng trình phát phim, ứng dụng viễn thông,…
Nếu chúng ta muốn các ứng dụng Linux trở nên phổ biến hơn, thì đây là một tính năng bắt buộc phải có. Điều này cũng sẽ cho phép các nhà phát triển ứng dụng Windows hỗ trợ tốt hơn việc chuyển ứng dụng của họ sang Linux.
Tự động khởi động tất cả các máy chủ được yêu cầu
Trước đây, bạn phải khởi động máy chủ PulseAudio và X theo cách thủ công trước khi có thể thực sự chạy bất cứ thứ gì. Giờ đây, Microsoft đã triển khai một dịch vụ kiểm tra xem ứng dụng Linux có đang chạy hay không, sau đó tự động khởi động các máy chủ được yêu cầu.
Điều này cho phép khởi chạy và sử dụng các ứng dụng Linux trên Windows dễ dàng hơn nhiều.
Microsoft tuyên bố điều này sẽ cải thiện trải nghiệm người dùng đáng kể:
Với tính năng này, chúng tôi sẽ tự động khởi động bản phân phối hệ thống đồng hành, chứa máy chủ Wayland, X, máy chủ âm thanh và mọi thứ khác cần thiết để làm cho các ứng dụng GUI của Linux giao tiếp với Windows. Sau khi bạn sử dụng xong các ứng dụng GUI và kết thúc phiên WSL của mình, bản phân phối hệ thống cũng sẽ tự động kết thúc phiên của nó.
Các thành phần này kết hợp với nhau để giúp chạy các ứng dụng GUI của Linux cùng với các ứng dụng Windows thông thường.
Kết luận
Với tất cả các tính năng mới này, có vẻ như Microsoft đang cố gắng hết sức để các ứng dụng Linux hoạt động trên Windows. Và việc cho phép các ứng dụng Linux chạy trên Windows, chúng ta có thể thấy nhiều người dùng Linux đang bắt đầu chuyển sang Windows. Đặc biệt là vì các ứng dụng mà họ quen sử dụng vẫn sẽ hoạt động tốt.