WSL2 รัน Linux ในเครื่องเสมือนหรือติดกับเคอร์เนลของ Windows หรือไม่?


16

ฉันมักจะต้องการเทอร์มินัล Linux ใน Windows และได้รับการตอบสนองโดย WSL 1 แต่มันก็ช้าอย่างเจ็บปวดเหมือนเดิม (ฉันเดา) เครื่องเสมือน Hyper-V-managed ด้วย WSL 2 มันค่อนข้างเร็วกว่านี้ แต่ฉันไม่เข้าใจว่า Microsoft ทำเช่นนั้นอย่างไร

พวกเขาปรับปรุง Hyper-V หรือพวกเขาหยุดใช้เครื่องเสมือนและสร้างเวทมนต์บางอย่างเพื่อให้ใช้เคอร์เนล Linux พร้อมกันหรือไม่?


3
มันยังคงเป็นเสมือน แต่ WSL2 ใช้เคอร์เนล linux (4.9) แทนการเปลี่ยนการเรียกไปเป็น windows APIs และจัดการด้วยวิธีนั้น
guiverc

9
@Sachin WSL 1 รันไบนารี ELF บน Windows โดยแปลการเรียกระบบ Linux ไปที่การเรียกระบบ Windows ซึ่งทำให้ชื่อของมันตรงกับ "Windows Subsystem for Linux"
wjandrea

6
WSL 1 ไม่ใช่ @guiverc เสมือน
Adrian

3
@ Sachin.Verma: "hoax" หมายถึงอะไร? WSL 1 เป็นการนำ Linux kernel API และ ABI มาใช้เช่นเดียวกับ Linux kernel คือการนำ API เคอร์เนล Linux และ ABI ไปใช้ ในความเป็นจริงแล้วนั่นคือการทำงานของเลเยอร์ความเข้ากันได้ของ Linux ส่วนใหญ่เช่น FreeBSD, HP-UX, AIX, Solaris และอื่น ๆ ส่วนใหญ่ก็เป็นอิสระอีกครั้งของ Linux kernel ABI และ API แทนที่จะใช้พอร์ตของเคอร์เนล Linux นอกจากนี้ยังทำงานในลักษณะอื่น ๆ : เลเยอร์ความเข้ากันได้ทั้งหมดสำหรับ Unices เชิงพาณิชย์บน Linux เป็นการนำ API และ ABIs ไปใช้ใหม่
Jörg W Mittag

4
WinE ยังทำงานในลักษณะเดียวกัน ใช้ Windows API และ ABI แทนการพอร์ต Windows เพื่อให้ทำงานบน Linux (ซึ่งไม่สามารถทำได้ตามกฎหมาย)
Jörg W Mittag

คำตอบ:


17

จากบทความเกี่ยวกับ WSL 2ของ Microsoft Docs:

ภาพรวมโดยย่อของสถาปัตยกรรม WSL 2

WSL 2 ใช้เทคโนโลยีเวอร์ชวลไลเซชันล่าสุดและยิ่งใหญ่ที่สุดในการรันเคอร์เนลของ Linux ภายในเครื่องเสมือนยูทิลิตี้น้ำหนักเบา (VM) อย่างไรก็ตาม WSL 2 จะไม่ใช่ประสบการณ์ VM ดั้งเดิม ประสบการณ์ VM แบบดั้งเดิมอาจช้าในการบู๊ตแยกได้ใช้ทรัพยากรจำนวนมากและต้องใช้เวลาในการจัดการ WSL 2 ไม่มีแอตทริบิวต์เหล่านี้ มันจะยังคงให้ประโยชน์ที่โดดเด่นของ WSL 1: การรวมระดับสูงระหว่าง Windows และ Linux, เวลาบูตที่รวดเร็วมาก, การใช้ทรัพยากรขนาดเล็กและที่ดีที่สุดของทั้งหมดนั้นไม่จำเป็นต้องมีการกำหนดค่าหรือการจัดการ VM ในขณะที่ WSL 2 ใช้ VM แต่จะมีการจัดการและเรียกใช้เบื้องหลังที่ทำให้คุณมีประสบการณ์การใช้งานเช่นเดียวกับ WSL 1

วิธีที่เราเห็นในบทความต่อไปนี้ (และการสนทนาด้านล่าง) WLS 2 ใช้คุณสมบัติ Hyper-V:


จากสิ่งที่ฉันอ่านมา: มันจะถูกแยกออกมันจะใช้ทรัพยากรเพิ่มเติมมันจะมีดิสก์เสมือนเฉพาะ
LatinSuD
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.