Aracılığıyla paylaş


WSL Sürümlerini Karşılaştırma

WSL 2'nin neden varsayılan olduğu ve yüklü Linux dağıtımınızı önceki WSL 1 mimarisine geçirmeyi garanti eden belirli senaryolar veya özel durumlar dahil olmak üzere farklı WSL sürümleri hakkında daha fazla bilgi edinin.

WSL 1 ve WSL 2 karşılaştırması

Bu kılavuz, WSL 2 yerine WSL 1'i kullanmaya yöneliközel durumlar da dahil olmak üzere WSL 1 ve WSL 2'yi karşılaştırır. WSL 1 ile WSL 2 arasındaki temel farklar, yönetilen bir VM içinde gerçek bir Linux çekirdeğinin kullanılması, tam sistem çağrısı uyumluluğu desteği ve Linux ve Windows işletim sistemlerinde performanstır. WSL 2, Linux dağıtımı yüklenirken geçerli varsayılan sürümdür ve basit bir yardımcı program sanal makinesinin (VM) içinde bir Linux çekirdeği çalıştırmak için en son ve en iyi sanallaştırma teknolojisini kullanır. WSL2, Linux dağıtımlarını yönetilen VM içinde yalıtılmış kapsayıcılar olarak çalıştırır. Dağıtımınız şu anda WSL 1 çalıştırıyorsa ve WSL 2'ye güncelleştirmek istiyorsanız bkz. WSL 1'den WSL 2'ye güncelleştirme.

Özellikleri karşılaştırma

Özellik WSL 1 WSL 2
Windows ve Linux arasında tümleştirme
Hızlı önyükleme süreleri
Geleneksel Sanal Makineler ile karşılaştırıldığında küçük kaynak ayak izi
VMware ve VirtualBox'ın geçerli sürümleriyle çalışır
Yönetilen VM
Tam Linux Çekirdeği
Tam sistem çağrısı uyumluluğu
İşletim sistemi dosya sistemlerinde performans
systemd desteği
IPv6 desteği

Yukarıdaki karşılaştırma tablosundan da görebileceğiniz gibi, WSL 2 mimarisi, proje dosyalarınızı proje üzerinde çalışmak için çalıştırdığınız araçlarla aynı işletim sisteminde depolayarak giderilebilen işletim sistemi dosya sistemleri genelinde performans dışında WSL 1'den birkaç şekilde daha iyi performans gösterir.

WSL 2 yalnızca Windows 11 veya Windows 10, Sürüm 1903, Derleme 18362 veya sonraki sürümlerde kullanılabilir. Windows sürümünüzü denetlemek için Windows logo tuşu + Rtuşlarına basın, winveryazın, ardından Tamamseçeneğini seçin. (Veya Windows Komut İstemi'nde ver komutunu girin). En son Windows sürümüne güncelleme yapmanızgerekebilir. 14393 sürümünden daha düşük derlemeler için WSL hiç desteklenmez.

En son WSL 2 güncelleştirmeleri hakkında daha fazla bilgi için IPv6 desteği hakkında daha fazla bilgi için Systemd desteğinin WSL'da kullanıma sunulduğu ve WSL Eylül 2023 güncelleştirme de dahil olmak üzere Windows Komut Satırı blogubakın.

Not

WSL 2, VMware 15.5.5+ ile çalışır ve VirtualBox 6+ WSL desteği sunduğunu söylese de, hâlâ WSL'nin desteklenmemesine neden olan önemli zorluklar bulunmaktadır. SSS bölümünden daha fazla bilgi edinin.

WSL 2'deki yenilikler

WSL 2, temel mimarinin önemli bir bakımıdır ve yeni özellikleri etkinleştirmek için sanallaştırma teknolojisini ve Linux çekirdeğini kullanır. Bu güncelleştirmenin birincil hedefleri dosya sistemi performansını artırmak ve tam sistem çağrısı uyumluluğu eklemek.

WSL 2 mimarisi

Geleneksel bir VM deneyimi yavaş başlatılabilir, yalıtılabilir, çok fazla kaynak tüketir ve yönetmek için zamanınızı gerektirir. WSL 2'nin bu öznitelikleri yoktur.

WSL 2, Windows ve Linux arasında sorunsuz tümleştirme, hızlı önyükleme süreleri, küçük bir kaynak ayak izi gibi WSL 1'in avantajlarını sağlar ve VM yapılandırması veya yönetimi gerektirmez. WSL 2 bir VM kullansa da, sanal makine yönetilir ve arka planda çalıştırılır ve WSL 1 ile aynı kullanıcı deneyimine sahip olursunuz.

Tam Linux çekirdeği

WSL 2'deki Linux çekirdeği, Microsoft tarafından kernel.orgkonumunda bulunan kaynağa göre en son kararlı dalından oluşturulur. Bu çekirdek WSL 2 için özel olarak uyarlanmıştır ve Windows'da harika bir Linux deneyimi sağlamak için boyut ve performans açısından optimize edilmiştir. Çekirdeğe Windows güncelleştirmeleri tarafından hizmet verilecektir. Bu, kendiniz yönetmenize gerek kalmadan en son güvenlik düzeltmelerini ve çekirdek iyileştirmelerini edinebileceğiniz anlamına gelir.

WSL 2 Linux çekirdeği açık kaynak. Daha fazla bilgi edinmek isterseniz, bunu oluşturan ekip tarafından yazılmış Windows ile Linux Çekirdeği Gönderme blog gönderisine göz atın.

Linux çekirdek için Windows Alt Sistemi içinSürüm Notları'nda daha fazla bilgi edinin.

Artırılmış dosya G/Ç performansı

git clone, npm install, apt update, apt upgradeve daha fazlası gibi yoğun dosya kullanımlı işlemlerin tümü WSL 2 ile dikkat çekici ölçüde daha hızlıdır.

Gerçek hız artışı, hangi uygulamayı çalıştırdığınıza ve dosya sistemiyle nasıl etkileşimde bulunduğuna bağlıdır. WSL 2'nin ilk sürümlerinde, sıkıştırılmış bir tarballı açarken WSL 1'e kıyasla 20 kata kadar daha hızlı çalışır ve çeşitli projelerde git clone, npm install ve cmake kullanıldığında yaklaşık 2-5 kat daha hızlı performans gösterir.

Tam sistem çağrısı uyumluluğu

Linux ikili dosyaları, dosyalara erişme, bellek isteme, işlem oluşturma ve daha fazlası gibi işlevleri gerçekleştirmek için sistem çağrılarını kullanır. WSL 1, WSL ekibi tarafından oluşturulan bir çeviri katmanını kullansa da, WSL 2 tam sistem çağrısı uyumluluğuna sahip kendi Linux çekirdeğini içerir. Avantajlar şunlardır:

  • Docker ve daha fazlası gibi WSL içinde çalıştırabileceğiniz yepyeni bir uygulama kümesi.

  • Linux çekirdeğindeki tüm güncelleştirmeler hemen kullanıma hazırdır (WSL ekibinin güncelleştirmeleri uygulaması ve değişiklikleri eklemesi için beklemeniz gerekmez).

WSL 2 yerine WSL 1 kullanma istisnaları

Daha hızlı performans ve 100% sistem çağrısı uyumluluğu sunduğu için WSL 2 kullanmanızı öneririz. Ancak, WSL 1 kullanmayı tercih edebileceğiniz birkaç özel senaryo vardır. Aşağıdakiler için WSL 1 kullanmayı göz önünde bulundurun:

  • Proje dosyalarınızın Windows dosya sisteminde depolanması gerekir. WSL 1, Windows'tan bağlanan dosyalara daha hızlı erişim sağlar.
    • Windows dosya sistemindeki proje dosyalarına erişmek için WSL Linux dağıtımınızı kullanacaksanız ve bu dosyalar Linux dosya sisteminde depolanamıyorsa, WSL 1 kullanarak işletim sistemi dosyaları sistemlerinde daha hızlı performans elde edeceksiniz.
  • Aynı dosyalarda hem Windows hem de Linux araçlarını kullanarak çapraz derleme gerektiren bir proje.
    • Windows ve Linux işletim sistemlerinde dosya performansı WSL 1'de WSL 2'den daha hızlıdır, bu nedenle Linux dosyalarına erişmek için Windows uygulamaları kullanıyorsanız şu anda WSL 1 ile daha hızlı performans elde edeceksiniz.
  • Projenizin bir seri bağlantı noktasına veya USB cihazına erişmesi gerekiyor. Ancak USB cihaz desteği artık USBIPD-WIN projesi aracılığıyla WSL 2 için kullanılabilir. Kurulum adımları için bkz. USB cihazlarını bağlama.
  • WSL 2, seri bağlantı noktalarına erişim desteği içermez. SSS veya seri destek konusundaki GitHub deposu'ndakiWSL sorununda daha fazla bilgi edinin.
  • Katı bellek gereksinimleriniz var
    • WSL 2'nin bellek kullanımı siz kullandıkça büyür ve küçülür. Bir işlem belleği boşalttığında, bu otomatik olarak Windows'a döndürülür. Ancak şu andan itibaren WSL 2, WSL örneği kapatılana kadar bellekteki önbelleğe alınmış sayfaları windows'a geri göndermez. Uzun süre çalışan WSL oturumlarınız varsa veya çok büyük miktarda dosyaya erişiyorsanız, bu önbellek Windows'ta bellek alabilir. WSL GitHub deposu sorunu 4166 bu deneyimi geliştirmeye yönelik çalışmayı izliyoruz.
  • VirtualBox kullananlar için hem VirtualBox hem de WSL 2'nin en son sürümünü kullandığınızdan emin olun. Bakınız ile ilgili SSS.
  • Konak makinenizle aynı ağda bir IP adresi olması için Linux dağıtımına güveniyorsanız WSL 2'yi çalıştırmak için bir geçici çözüm ayarlamanız gerekebilir. WSL 2, Hyper-V bir sanal makine olarak çalışıyor. Bu, WSL 1'de kullanılan köprülenmiş ağ bağdaştırıcısından yapılan bir değişikliktir. Bu, WSL 2'nin sanal ağı için bir Ağ Adresi Çevirisi (NAT) hizmeti kullandığı anlamına gelir ve bunu konak Ağ Arabirimi Kartı'na (NIC) köprü haline getirmek yerine yeniden başlatmada değişecek benzersiz bir IP adresiyle sonuçlanır. WSL 2 hizmetlerinin TCP bağlantı noktalarını konak işletim sistemine iletan sorun ve geçici çözüm hakkında daha fazla bilgi edinmek için bkz. WSL GitHub deposu sorunu 4150, NIC Köprü modu (TCP Geçici Çözümü).

Not

Vs Code Uzak WSL Uzantısı'ni deneyerek proje dosyalarınızı Linux dosya sisteminde depolamanızı, Linux komut satırı araçlarını kullanmanızı, aynı zamanda Linux ve Windows dosya sistemlerinde çalışmayla ilişkili performans yavaşlamalarından herhangi biri olmadan projenizi yazmak, düzenlemek, hata ayıklamak veya bir internet tarayıcısında çalıştırmak için Windows'ta VS Code'u kullanmayı deneyin. daha fazla bilgi edinin.

Microsoft Store'da WSL

WSL, güncelleştirme işlevini Windows işletim sistemi görüntüsünden Microsoft Store aracılığıyla kullanılabilen bir pakete kaldırdı. Bu, Windows işletim sisteminizin güncelleştirilmesini beklemek yerine kullanılabilir oldukları anda daha hızlı güncelleştirmeler ve bakım anlamına gelir.

WSL başlangıçta Windows işletim sistemine linux dağıtımı yüklemek için etkinleştirilmesi gereken isteğe bağlı bir bileşen olarak dahil edildi. Mağaza'daki WSL aynı kullanıcı deneyimine sahiptir ve aynı üründür, ancak güncelleştirmeleri ve hizmetleri tüm işletim sistemi güncelleştirmesi yerine bir mağaza paketi olarak alır. Windows sürüm 19044 veya sonraki bir sürümden başlayarak, wsl.exe --install komutu çalıştırıldığında Microsoft Store'dan WSL bakım güncelleştirmesi yüklenir. (Bu güncelleştirmeninduyuruldu blog gönderisine bakın). Zaten WSL kullanıyorsanız, wsl.exe --updateçalıştırarak en son WSL özelliklerini ve bakımlarını mağazadan aldığından emin olmak için güncelleştirebilirsiniz.

Not

Kuruluşunuzda Microsoft Store'a erişilemiyorsa, --web-download komutuna --update ekleyerek (wsl --update --web-downloadgibi) bu WSL sürümünü kullanmaya devam edebilirsiniz. Bu yöntemi kullanarak her yeni sürüm kullanıma sunulduğunda WSL'yi el ile güncelleştirmeniz gerekir.