9 puan yazan GN⁺ 2025-12-02 | Henüz yorum yok. | WhatsApp'ta paylaş
  • Windows NT'nin alt sistem yapısı, farklı işletim sistemleri için uygulama çalıştırmak amacıyla bir API çağrı dönüştürme katmanı olarak gelmiştir
  • WSL1 bu geleneği sürdüren biçimde, Linux çağrılarını Windows çekirdek çağrılarına dönüştüren hafif bir çeviri katmanı olarak çalışır
  • WSL2, performans sorunlarını çözmek için Hyper-V tabanlı tam bir Linux VM'e geçerek gerçek bir Linux çekirdeği çalıştırır
  • WSL2, dinamik bellek yönetimi, Windows sürücü montajı, WSLg ile GUI entegrasyonu gibi özellikleriyle klasik VM'den daha yüksek entegrasyon sağlar
  • Dosya yönetiminin zorlukları ve disk imajına bağımlılık gibi sınırlamalar olsa da, WSL1 ve WSL2'nin artılarını ve eksilerini duruma göre seçebilmeyi sağlayan esneklik önemlidir

Windows NT'deki alt sistem kavramı

  • Windows NT'deki alt sistem (subsystem), farklı işletim sistemlerine ait programları çalıştırmak için bir API kümesi ve çağrı dönüştürme katmanı anlamına gelir
    • Geçmişte NT'de OS/2 alt sistemi (OS2SS.EXE), POSIX alt sistemi (PSXSS.EXE) bulunuyordu
    • CSRSS.EXE, Win32 API çeviri katmanıydı; bazı işlevler çekirdek moduna (WIN32K.SYS) taşındı
  • POSIX alt sistemi, devlet onayı için minimum düzeyde bir uygulamaydı ve daha sonra Interix tabanlı Windows Services for Unix ile değiştirildi

WSL1: Çeviri tabanlı Linux katmanı

  • WSL1 (Windows Subsystem for Linux), Linux sistem çağrılarını Windows çağrılarına çeviren ince bir çeviri katmanıdır
    • Çalıştırıldığında yalnızca birkaç MB bellek kullanan bir bash süreci bulunur ve Task Manager'da normal bir süreç olarak görünür
    • Kök dosya sistemi NTFS üzerindeki tekil dosya yapısında bulunur ve bu nedenle depolama alanı overhead'i neredeyse yoktur
  • Kısıtlamalar
    • I/O performans düşüşü: Linux ile Win32 dosya sistemi API farkından doğan dönüştürme maliyeti
    • GUI çalıştırırken harici bir X sunucusu gerekir (ör. X410)
    • Raw socket desteklenmez; traceroute, nmap, tcpdump gibi araçlar çalıştırılamaz

WSL2: Hyper-V tabanlı Linux VM

  • Kullanıcı taleplerine göre Microsoft, Hyper-V üzerinde çalışan tam bir Linux VM modelini benimsedi
    • Kök dosya sistemi tek bir VHDX dosyası ile yönetilir
    • wsl --set-version "Ubuntu" 2 komutuyla WSL1 ile WSL2 arasında geçiş yapılabilir
  • Performans özellikleri
    • İlk açılış yavaştır ama yerel Linux çekirdeği çalıştırılır
    • Bellek kullanımı dinamik olup, fiziksel belleğin en fazla yarısına kadar genişleyebilir
    • stress testi sonuçlarına göre, bellek kullanımı yük arttıkça yükselir ve sonra otomatik olarak düşer
    • İstenirse wsl --shutdown komutuyla VM kapatılabilir

WSL2'nin entegrasyon özellikleri ve sınırlamaları

  • WSL2, geleneksel VM'lerin aksine Windows ile entegrasyonu güçlendirir
    • Windows sürücülerinin otomatik montajı, Linux sürücülerine \\wsl$ yolu ile erişim, WSLg ile GUI uygulamaları çalıştırma
    • GUI uygulamaları Remote Desktop Protokolü ile akışla iletilir ve DPI veya metin ölçekleme için ayrı ayar gerektirir
  • Dosya yönetimi sorunu
    • Linux iş verisi, ext4.vhdx imajının içinde saklandığı için taşınabilirlik ve kurtarma (recovery) riski vardır
    • wsl --unregister Distro komutu çalıştırıldığında tüm veriler anında silinir
    • Windows sürücüsünü (/mnt/c) kullanırken NTFS + VM ek yükü nedeniyle performans düşer
  • Dosya sistemi protokolü
    • WSL1 drvfs, WSL2 ise Plan9'un 9p protokolünü kullanır
    • Dönüşümde drvfs yüzünden kalan bazı hata örnekleri belirtilir
  • Alternatif
    • Ayrı bir VHDX imajı oluşturarak wsl --mount --vhd ile mount etmek ve iş verisini ayırmak önerilir
    • .wslconfig içinde otomatik ayar yapılamaz, script ile işlenmesi gerekir

Sonuç

  • Windows NT'nin modüler tasarımı ve kararlı çekirdek ABI'si, eski sürücü uyumluluğunu korur
  • WSL1 hafif bellek kullanımının avantajına sahiptir; WSL2 ise gerçek Linux çekirdeği ile daha yüksek uyumluluk ve performans sağlar
  • WSL2, VM'in dezavantajlarını en aza indirip ana işletim sistemiyle entegrasyonu güçlendiren bir yapıdır
  • Geleneksel bir tanıma göre VM'e yakın olsa da, hafif entegre bir ortam olarak “alt sistem” denmeye değer

Henüz yorum yok.

Henüz yorum yok.