Microsoft chính thức mã nguồn mở Windows Subsystem for Linux (WSL)

Microsoft vừa công bố mã nguồn mở Windows Subsystem for Linux (WSL), đánh dấu một cột mốc quan trọng sau nhiều năm phát triển và hoàn thiện. Đây cũng là câu trả lời chính thức cho câu hỏi đầu tiên từng được đặt ra trên kho mã nguồn GitHub của dự án: “WSL có được mã nguồn mở không?

04f48996-7087-4317-89b8-9da439bd27d4

Mã nguồn của WSL hiện đã được đăng tải công khai trên nền tảng GitHub tại địa chỉ microsoft/WSL. Việc công khai mã nguồn cho phép cộng đồng phát triển phần mềm truy cập, nghiên cứu, đóng góp mã nguồn và xây dựng các tính năng mới cho WSL, qua đó đẩy nhanh tiến trình cải tiến và mở rộng hệ thống này.

Kiến trúc của WSL

0f581462-ee75-4e3d-8f4d-c5f8af5d8ec6

WSL được cấu thành từ nhiều thành phần, một số chạy trên Windows, số khác hoạt động bên trong máy ảo WSL 2. Cụ thể, mã nguồn WSL được chia thành các phần chính như sau:

  • Công cụ dòng lệnh: gồm các tập tin thực thi như wsl.exe, wslconfig.exewslg.exe.
  • Dịch vụ WSL: wslservice.exe có nhiệm vụ khởi động máy ảo WSL, khởi động các bản phân phối, chia sẻ tệp và nhiều tính năng khác.
  • Các tiến trình nền trong Linux: bao gồm init, gns, localhost phục vụ cho việc khởi động, kết nối mạng và chuyển tiếp cổng.
  • Chia sẻ tệp giữa Windows và Linux: thông qua máy chủ plan9 trong WSL.

Người dùng có thể tìm hiểu thêm về từng thành phần tại trang web chính thức wsl.dev.

Ngoài ra, một số thành phần của WSL đã được mở mã nguồn từ trước, như:

Tuy nhiên, một số thành phần vẫn chưa được mở mã nguồn do vẫn nằm trong hình ảnh hệ điều hành Windows, bao gồm:

  • Lxcore.sys: driver lõi kernel dành cho WSL 1.
  • P9rdr.sysp9np.dll: dùng cho việc chuyển hướng hệ thống tệp “\wsl.localhost”.

Hành trình đến mã nguồn mở

WSL lần đầu được giới thiệu tại hội nghị BUILD năm 2016 và xuất hiện chính thức trong bản cập nhật Anniversary của Windows 10. Khi đó, WSL dựa trên cơ chế “pico process” với driver lxcore.sys, cho phép chạy các tệp thực thi ELF và các lời gọi hệ thống Linux trực tiếp trong nhân Windows – đây chính là tiền thân của WSL 1.

Nhằm nâng cao khả năng tương thích với Linux gốc, Microsoft sau đó ra mắt WSL 2 vào năm 2019, sử dụng nhân Linux thực thụ và hoạt động trong một máy ảo nhẹ.

Từ năm 2021, WSL được tách riêng khỏi mã nguồn Windows, trở thành một gói độc lập. Phiên bản đầu tiên (0.47.1) được phát hành trên Microsoft Store, giới hạn cho Windows 11 và đánh dấu là bản thử nghiệm. Đến tháng 11/2022, WSL đạt phiên bản ổn định đầu tiên (1.0.0), mở rộng hỗ trợ cho cả Windows 10.

Bước ngoặt lớn tiếp theo đến với WSL 2.0.0, với hàng loạt cải tiến như: mạng được phản chiếu (mirrored networking), chuyển tiếp DNS, hỗ trợ session 0, proxy và firewall…

Hiện tại, phiên bản mới nhất của WSL là 2.5.7, được phát hành sau gần 4 năm kể từ phiên bản 0.47.1 – minh chứng cho sự phát triển mạnh mẽ và liên tục của dự án này.

Cộng đồng là nhân tố quyết định

Theo Microsoft, cộng đồng người dùng và lập trình viên đã góp phần quan trọng trong việc định hình WSL. Dù trước đây chưa có mã nguồn, nhiều đóng góp thiết thực đã giúp cải thiện hiệu suất và tính năng của WSL.

“Chúng tôi vô cùng hào hứng khi chính thức mở mã nguồn WSL. Cộng đồng đã làm được rất nhiều điều dù không có mã nguồn, và giờ đây, họ có thể tham gia trực tiếp vào quá trình phát triển WSL,” đại diện nhóm phát triển chia sẻ.

Người dùng quan tâm có thể tham khảo cách đóng góp hoặc khám phá cơ chế hoạt động của WSL tại kho lưu trữ chính thức: github.com/microsoft/WSL.

Chia sẻ bài viết:
Theo dõi
Thông báo của
0 Góp ý
Được bỏ phiếu nhiều nhất
Mới nhất Cũ nhất
Phản hồi nội tuyến
Xem tất cả bình luận