Header ads

Header ads
» » Review WSL trên windows sau 6 tháng sử dụng - The best of both world

Có một thực tế rằng lập trình viên không thích powershell, mình cũng vậy.
Lý do không phải powershell tệ, mà là các công cụ chạy trên powershell không nhiều. Đặc biệt gây khó khăn trong việc phát triển phần mềm trong một team dùng nhiều hệ điều hành linux/mac/windows.

Gần đây Microsoft trình làng một chức năng mới có tên Windows Subsystem for Linux - viết tắt là WSL.
Về cơ bản, tính năng này cho phép bạn dùng song song cả windows và linux.
Điều này có ý nghĩa rất lớn với mình (và mình cũng nghĩ có ý nghĩa rất lớn đối với giới lập trình nói chung).
Mình bắt đầu thử chuyển công việc của mình qua WSL từ 6 tháng trước và ai thấy cũng hỏi một câu:
Sao ông không dùng linux đi cho rồi, cài vậy chi cho nặng máy?

Quảng cáo


Nguyên nhân hàng đầu là về UI/UX, mình không thích UI/UX trên linux, nhìn kiểu amateur ý.
Nguyên nhân thứ 2 là về hệ sinh thái, mình cần windows để làm các thứ chỉ bên windows mới có.

WSL có chậm không?

Trước hết WSL là máy ảo, đúng, nó là máy ảo. Nhưng bạn có biết hệ điều hành windows của bạn cũng là máy ảo?

Để hiểu được vấn đề, trước hết ta phải nhớ rằng:
"Công nghệ ảo hóa được cung cấp bởi CPU, không phải hệ điều hành, ở một thời điểm chỉ một phần mềm duy nhất được sử dụng tính năng này"
ok, giờ hãy nhìn lại về các loại máy ảo:


Như hình trên, ta có 2 loại máy ảo:
Type 2: Đây là dạng máy ảo kiểu VM ware, virtual box …
Các loại máy ảo này chạy trên hệ điều hành (host system), trong trường hợp này là Windows, (không phải Linux như trong hình đâu nhé). VM Ware sẽ là phần mềm sử dụng công nghệ ảo hóa của CPU để tạo ra các máy ảo khác như ubuntu, mac os …
Type 1: Đây là dạng máy ảo mà tất cả các VM chạy trực tiếp trên một nền tảng ảo hóa, không thông qua một hệ điều hành nào cả. Nếu các bạn bật tính năng Hyper-V trong windows lên thì chính windows cũng đang chạy trên một tầng ảo hóa (là Hyper-V), có nghĩa windows các bạn đang dùng cũng là một con máycon, Hyper-V là tầng ảo hóa, Hyper-V là phần mềm sử dụng công nghệ ảo hóa của CPU.

Điều đó có nghĩa các máy ảo Type 1 sẽ nhanh hơn rất rất nhiều so với các máy ảo Type 2, do không phải thông qua một OS trung gian.

Quảng cáo


Bên cạnh đó, do một ở một thời điểm chỉ có một phần mềm được sử dụng công nghệ ảo hóa, nên nếu bật Hyper-V thì VM-Ware không chạy được và ngược lại.

Đến đây chắc các bạn cũng đoán được WSL là dạng máy nào rồi phải không?
WSL là máy ảo dạng 1, hiệu suất của nó tương đương với hiệu suất của Windows chạy trên Hyper-V.

Vậy hiệu suất so với chạy trên máy vật lý thì như thế nào, bật Hyper-V lên có khiến máy chậm đi không?
Với cảm nhận của mình thì không, mình không cảm thấy bất kì điều gì khác biệt cả.
Không tin các bạn có thể xem kết quả benchmark ở đây:
Does Enabling WSL2 Affect Performance of Windows 10 Applications (pugetsystems.com)

WSL khiến docker chạy nhanh hơn

Thật vậy, khi chạy linux container với docker, Windows phải làm một số thứ để giả lập môi trường linux. Điều này khiến việc start một container hoặc khởi động docker cũng rất ì ạch.
Nhưng khi đã có WSL thì mọi chuyện trở nên dễ dàng hơn. Docker sử dụng WSL để chạy phần engine và UI thì vẫn chạy trên windows. Điều này khiến cho Docker trên windows nhanh hơn rất rất nhiều và tốn ít ram hơn. Thật toẹt vời các bác ạ.

Quảng cáo



WSL có chiếm nhiều RAM không?

Câu trả lời ngắn gọn là không. WSL chiếm rất rất ít ram, khoảng hơn 200MB thôi. Các bạn đừng nhìn vào Task Manager nhé, số ram Task manager báo là Ram hệ thống cấp cho máy ảo WSL để đỡ phải cấp đi cấp lại nhiều lần, còn số ram máy ảo thực tế sử dụng các bạn dùng lệnh htop để xem nhé.
Số ram này còn chưa bằng số ram mình mất khi phải chạy docker trực tiếp trên windows nữa nên coi như chả mất gì.

Restart máy mà lại không restart

Nghe hơi hư trúc nhưng thật ra lại rất mộ dung phục.
Khi bạn muốn restart môi trường làm việc thì chỉ cần restart lại service LxssManager là được, cỡ 30 giây là xong, chia tay với màn hình boot luôn.
Nhiều khi cảm thấy mình cài cắm nhiều thứ rác quá, muốn xóa hết cài lại từ đầu thì chỉ cần clear dữ liệu của con WSL là xong, chả liên quan gì đến dữ liệu trong windows, max nhanh gọn.

VS code hỗ trợ WSL tận răng

Phải gọi là được hỗ trợ từ răng cửa tới tận răng khôn luôn, bác nào code trên VS code thì sướng thôi rồi.

Bất lợi khi dùng WSL

  • Không hỗ trợ lưu dữ liệu máy ảo trên ổ đĩa khác ổ C. Điều này có nghĩa nếu máy bạn lỗi, cần cài lại win thì bạn liệu mà dùng đĩa cứu hộ vào ổ C mà copy file máy ảo ra trước.
  • Không nên copy file qua lại giữa WSL và windows, tại định dạng file khác nhau, copy file text qua lại bọn nó không hiểu. Nhưng copy các file định dạng khác như pdf, png, jpg các thứ thì thoải mái.

Chốt

Trải nghiệm của mình với WSL trên windows rất tuyệt vời. Có thể nói với WSL, ta đã có những điều tốt nhất từ Windows lẫn Linux.

Mình nghĩ các bạn nên thử và chuyển dần qua WSL nếu có thể.
Từ giờ sẽ không có khái niệm lập trình trên windows chán nữa, tại nói vậy chả khác nào nói lập trình trên linux chán cả. =))

Các bạn có trải nghiệm gì thì cũng comment luôn nhé.

CHUYÊN MỤC NGHỆ THUẬT LÀM GIÀU BỀN VỮNG
Khóa học Machine Learning cơ bản- Khoa học dữ liệu - AI
==***==

Khoá học Quản trị Chiến lược Dành cho Lãnh đạo Doanh nghiệp

Nhấn vào đây để bắt đầu khóa học

==***==
Nơi hội tụ Tinh Hoa Tri Thức - Khơi nguồn Sáng tạo
Để tham gia khóa học công nghệ truy cập link: http://thuvien.hocviendaotao.com
Mọi hỗ trợ về công nghệ email: dinhanhtuan68@gmail.com
--- 

Khóa học Hacker và Marketing từ A-Z trên ZALO!

Khóa học Hacker và Marketing từ A-Z trên Facebook!

Khóa đào tạo Power BI phân tích báo cáo để bán hàng thành công

Bảo mật và tấn công Website - Hacker mũ trắng
Hacker mũ trắng
KHÓA HỌC LẬP TRÌNH PYTHON TỪ CƠ BẢN ĐẾN CHUYÊN NGHIỆP

Khóa học Lập trình Visual Foxpro 9 - Dành cho nhà quản lý và kế toán

Khóa học hướng dẫn về Moodle chuyên nghiệp và hay
Xây dựng hệ thống đào tạo trực tuyến chuyên nghiệp tốt nhất hiện nay.



Khóa học AutoIt dành cho dân IT và Marketing chuyên nghiệp

Khoá học Word từ cơ bản tới nâng cao, học nhanh, hiểu sâu


Khóa học hướng dẫn sử dụng Powerpoint từ đơn giản đến phức tạp HIỆU QUẢ
Khóa học Thiết kế, quản lý dữ liệu dự án chuyên nghiệp cho doanh nghiệp bằng Bizagi
Khoa hoc hay
Khóa học Phân tích dữ liệu sử dụng Power Query trong Excel

Khóa học Lập trình WEB bằng PHP từ cơ bản đến nâng cao

Khóa học Phân tích dữ liệu sử dụng TableAU - Chìa khóa thành công!
Nhấn vào đây để bắt đầu khóa học


Khóa học Phân tích dữ liệu sử dụng SPSS - Chìa khóa thành công!


Khóa học "Thiết kế bài giảng điện tử", Video, hoạt hình 
kiếm tiền Youtube bằng phần mềm Camtasia Studio
Khóa học HƯỚNG DẪN THIẾT KẾ VIDEO CLIP CHO DÂN MARKETING CHUYÊN NGHIỆP
Xây dựng website​​​​
HƯỚNG DẪN THIẾT KẾ QUẢNG CÁO VÀ ĐỒ HỌA CHUYÊN NGHIỆP VỚI CANVA
Hãy tham gia khóa học để trở thành người chuyên nghiệp. Tuyệt HAY!😲👍
Khoa hoc hay
MICROSOFT ACCESS



GOOGLE SPREADSHEETS phê không tưởng
Khoa hoc hay
Khóa hoc lập trình bằng Python tại đây

Hãy tham gia khóa học để biết mọi thứ

Để tham gia tất cả các bài học, Bạn nhấn vào đây 

Khóa học lập trình cho bé MSWLogo
Nhấn vào đây để bắt đầu học
Nhấn vào đây để bắt đầu học


Khóa học Ba, Mẹ và Bé - Cùng bé lập trình  TUYỆT VỜI

Khoa hoc hay

Khóa học sử dụng Adobe Presenter-Tạo bài giảng điện tử
Khoa hoc hay
Design Website

Để thành thạo Wordpress bạn hãy tham gia khóa học 
Khóa học sử dụng Edmodo để dạy và học hiện đại để thành công
==***==
Bảo hiểm nhân thọ - Bảo vệ người trụ cột
Cập nhật công nghệ từ Youtube tại link: congnghe.hocviendaotao.com
Tham gia nhóm Facebook
Để tham gia khóa học công nghệ truy cập link: http://thuvien.hocviendaotao.com
Mọi hỗ trợ về công nghệ email: dinhanhtuan68@gmail.com

Nguồn: Tinh Tế

About Học viện đào tạo trực tuyến

Xinh chào bạn. Tôi là Đinh Anh Tuấn - Thạc sĩ CNTT. Email: dinhanhtuan68@gmail.com .
- Nhận đào tạo trực tuyến lập trình dành cho nhà quản lý, kế toán bằng Foxpro, Access 2010, Excel, Macro Excel, Macro Word, chứng chỉ MOS cao cấp, IC3, tiếng anh, phần mềm, phần cứng .
- Nhận thiết kế phần mềm quản lý, Web, Web ứng dụng, quản lý, bán hàng,... Nhận Thiết kế bài giảng điện tử, số hóa tài liệu...
HỌC VIỆN ĐÀO TẠO TRỰC TUYẾN:TẬN TÂM-CHẤT LƯỢNG.
«
Next
Bài đăng Mới hơn
»
Previous
Bài đăng Cũ hơn