5/5 - (2 bình chọn)

Windows cho Linux đã trở nên phổ biến trong một vài bản cập nhật Windows 10 gần đây nhất. Trong số hàng loạt các tính năng và bổ sung, WSL nổi bật như một sự thay đổi vượt trội. Trong khi hầu hết chúng ta phụ thuộc vào Máy ảo để hoàn thành công việc, WSL dường như là một giải pháp thay thế nhẹ hơn đáng kể để xử lý các tác vụ cần thiết. Sự bổ sung mới nhất là WSL2 được cải tiến.

Vậy WSL là gì? Hãy xem WSL là gì. Ngoài ra, hãy kiểm tra sự khác biệt giữa WSL và WSL2. Ngoài ra, chúng tôi sẽ so sánh từng loại trong số chúng với Máy ảo, để chúng tôi có thể hiểu rõ hơn về các trường hợp sử dụng.

WSL (Hệ thống con của Windows cho Linux) là gì?

WSL là bản phát hành đầu tiên được thêm vào bản cập nhật Windows 10 phiên bản 1607. WSL là một tính năng tùy chọn trong Windows 10 cung cấp cho người dùng Môi trường bảng điều khiển Linux nhẹ trong Hệ điều hành Windows. Hệ thống con của Windows dành cho Linux thêm một lớp tương thích, cho phép bạn chạy các tệp nhị phân Linux sang HĐH Windows 10 gốc — do đó loại bỏ nhu cầu cài đặt Máy ảo để chạy hầu hết các tác vụ dòng lệnh.

Kiến trúc WSL 1

WSL hoạt động như thế nào?

Chà, WSL dịch các lệnh gọi hệ thống Linux do tiến trình trả về sang các lệnh gọi hạt nhân Windows trong khi một Distro Linux nằm trên cùng. Do đó, loại bỏ sự cần thiết của nhân Linux trong quá trình này. Về cơ bản, nó là Linux bên trong Windows.

Tính năng này phù hợp với tham vọng của Microsoft là mang lại Trải nghiệm Linux lên Windows 10. Một trong những lý do tại sao hệ điều hành Linux rất phổ biến là do môi trường phát triển vượt trội của nó. Với việc triển khai hệ thống con Windows dành cho Linux, gã khổng lồ Redmond có kế hoạch mang lại những gì tốt nhất của cả hai thế giới cho các Nhà phát triển.

Tại sao sử dụng WSL?

  • Công cụ dòng lệnh Linux
  • Quyền truy cập hệ thống tệp Windows 10
  • Không cần máy ảo

Hệ thống con của Windows dành cho Linux cho phép các nhà phát triển và quản trị viên hệ thống sử dụng lõi công cụ dòng lệnh. Nhưng quan trọng nhất, bash shell.

Ngoài ra, hệ thống tập tin củaWindows 10 và các ổ đĩa có thể được truy cập và xử lý trong chính giao diện bảng điều khiển WSL. Các phân vùng ổ đĩa được gắn khi khởi chạy trong đường dẫn/mnt/. Ví dụ, ổ đĩa logic C: mount at/mnt/c.

Nói về giao diện trong WSL, chúng tôi chỉ giới hạn ở giao diện dòng lệnh. GUI (Giao diện người dùng đồ họa) không tồn tại. Mặc dù chúng tôi có thể chạy một số lượng tối thiểu các ứng dụng GUI với sự trợ giúp của các chỉnh sửa nhỏ, nhưng bảng điều khiển đầu cuối là tất cả những gì chúng tôi sẽ làm việc.

Hơn nữa, danh sách của phân phối có sẵn là đủ. Mặc dù Ubuntu là bản phân phối duy nhất có sẵn ban đầu, danh sách này vẫn tiếp tục phát triển. Ngoài ra, chúng tôi có thể cài đặt thêm các bản phân phối không có sẵn trong danh sách với việc sử dụng một số giải pháp thay thế.

Tại sao không sử dụng WSL?

Trước hết, có một vấn đề rõ ràng về khả năng mở rộng. Là có không hỗ trợ hạt nhân Linux gốc, các quy trình và nhiệm vụ toàn diện còn hạn chế.

Các dịch vụ như Docker không được hỗ trợ trong bản phát hành thế hệ đầu tiên của Hệ thống con Windows dành cho Linux do không có hỗ trợ cấp hạt nhân cho vùng chứa Linux.

Giao tiếp mạng (mặc dù có thể) yêu cầu nhiều lớp đi qua, làm cho WSL không lý tưởng cho mạng cấp thấp các quy trình.

Đối với các tác vụ yêu cầu nhiều quyền truy cập ngoại vi hơn như đồ họa, âm thanh và I/O tệp tốc độ cao, WSL có thể không phải là lựa chọn tốt nhất.

WSL2: Kiến trúc khác với WSL1 như thế nào?

Kiến trúc WSL 2

WSL2 mới và cải tiến là sự kế thừa rõ ràng của WSL, có sẵn từ phiên bản Windows 10 2004. Kiến trúc WSL2 hoàn toàn khác với WSL1. Không giống như WSL1, chạy như một lớp dịch, hệ thống con của Windows dành cho Linux 2 có máy ảo với một Nhân Linux thực tế có thể phản ứng ngay lập tức với các lệnh gọi hệ thống. Một kiến ​​trúc như vậy cho phép Cuộc gọi toàn hệ thống các khả năng.

Ngoài ra, Nhân Linux được sử dụng trong kiến ​​trúc WSL 2, do Microsoft phát triển mã nguồn mở Linux Kernal. Cùng với một cuộc đại tu đáng kể từ người tiền nhiệm của nó, WSL2 đã có những thay đổi đáng kể giúp giảm bớt một số nhược điểm của phiên bản gốc. Hãy xem lại những cải tiến này một chút nữa –

WSL2 so với WSL1: WSL2 tốt hơn như thế nào?

  • Một nhân Linux thực tế
  • Khả năng cuộc gọi toàn hệ thống
  • Hiệu suất Socket/Mạng
  • Hiệu suất hệ thống tệp

Như chúng tôi đã nói trước đây, toàn bộ kiến ​​trúc đã thay đổi đáng kể với bản phát hành Windows Subsystem for Linux 2 mới. WSL2 thực sự là một máy ảo nhẹ dựa trên dịch vụ ảo hóa phần cứng Hyper-V của Microsoft. Có một người bản xứ hyngười giám sát giúp việc triển khai WSL2 loại bỏ được bất kỳ nhược điểm nào mà WSL1 mắc phải khi mới ra mắt.

WSL 2 Docker C ++ Node JS

Ví dụ, sự sẵn có của một Linux Kernal cho phép người dùng thực thi các tác vụ với khả năng tương thích cuộc gọi toàn hệ thống. Vì vậy, nền tảng này trở nên mạnh mẽ hơn nhiều để xử lý các ứng dụng dựa trên Linux. Ngoài ra, các dịch vụ như Docker và fuse sẽ tương thích.

Hiệu suất tệp I/O được cải thiện nhiều. Do đó, các thao tác như apt-installs, npm installs sẽ nhanh hơn. Hơn nữa, đây là trường hợp cho tất cả các dịch vụ đọc và ghi.

(Ghi chú: Microsoft đã đề cập đến tốc độ tệp chéo hệ điều hành chậm hơn trong các bản dựng ban đầu.)

Tốc độ hiệu suất tệp WSL 2

Cuối cùng, phiên bản Chuyển mạch là một quá trình đơn giản. Cùng với đó, hiệu suất mạng và socket đã có những cải tiến đáng kể.

WSL/WSL2 so với VirtualBox/Máy ảo?

Vậy nó nổi bật như thế nào so với các Máy ảo truyền thống? Rốt cuộc, VM, chẳng hạn như Virtual BOX, vẫn là lựa chọn phổ biến nhất mà người dùng có để có trải nghiệm đa nền tảng tương tự.

Máy ảo và WSL 2

Máy ảo tạo ra một môi trường bên trong hệ thống của bạn hoạt động như một hệ thống ảo riêng biệt với tất cả các thành phần phần cứng như CPU, RAM, Bộ nhớ với sự trợ giúp của Hyper Visors. Một kiến ​​trúc như vậy cho phép người dùng có một hệ thống thích hợp và hoàn chỉnh trong hệ điều hành mà bạn đang chạy. Không giống như WSL/WSL2, Máy ảo có thể chạy giao diện đồ họa đầy đủ vì bản thân môi trường là một không gian làm việc Linux chính thức. Nhưng như thường lệ, có những cảnh báo.

Máy ảo là Bị cô lập. Điều này có nghĩa là bạn sẽ không thể truy cập các tệp bên ngoài Hệ thống ảo (hay còn gọi là tệp hệ thống thực của bạn).

Khởi động và hiệu suất chậm hơn: Máy ảo thường chạy bên trong hệ điều hành. Vì vậy, họ chỉ có thể truy cập vào phần cứng thực tế thông qua Hệ điều hành, do đó, dẫn đến các vấn đề về hiệu suất. Nói một cách đơn giản, Máy ảo chỉ mạnh khi phần cứng của bạn cho phép. Điều đó nói rằng, hầu hết phần cứng hiện đại đều đủ mạnh cho các tác vụ nặng như vậy.

Sử dụng bộ nhớ: Bất cứ khi nào chúng ta yêu cầu máy ảo, một lượng lớn bộ nhớ luôn phải được dành riêng cho nó.

Sự quản lý: Máy ảo có hệ điều hành yêu cầu quản lý.

Bạn nên sử dụng cái nào?

Bây giờ chúng ta đã tìm hiểu cách hoạt động của từng dịch vụ này, hãy xem xét các tình huống use case:

Tại sao nên chọn Máy ảo?

  • Bạn yêu cầu tất cả sức mạnh và tính năng của Linux.
  • Đối với Quy mô lớn hơn, Mức sản xuất hoạt động.
  • GUI (Giao diện người dùng đồ họa)
  • Khối lượng công việc chuyên sâu về đồ họa hoặc mạng.

Khi nào thì chọn WSL/WSL2?

  • Để sử dụng các lệnh Linux cơ bản.
  • Bạn có phần cứng kém mạnh mẽ hơn.
  • Bạn cần bộ nhớ/hiệu quả lưu trữ.
  • Khi bạn cần I/O nhanh hơn.
  • Không muốn đối phó với những rắc rối của cài đặt/quản lý/chi phí của một máy ảo.