Microsoft, Windows 10 Linux alt sisteminin nasıl çalıştığını ortaya koyuyor

 Windows'ta Ubuntu'ya Bash yerel Linux ELF64 ikili dosyalarının, Linux için Windows Alt Sistemi (WSL) aracılığıyla Windows üzerinde çalışmasını sağlar. Ubuntu duyurusu üzerine yapılan Bash'in birçok kişiyi şoke etmesine rağmen, farklı işletim sistemleri arasındaki uyumluluk için yeni kapılar açtığını belirtmekte fayda var. Microsoft bir adım daha atıyor ve iki sistemin birbiriyle nasıl iletişim kurduğunu daha iyi anlayabilmemiz için WSL'sinin nasıl çalıştığını ortaya koyuyor.

WSL, Microsoft Windows Çekirdeği ekibi tarafından oluşturulmuştur ve hem kullanıcı modu hem de çekirdek modu bileşenlerini içerir. Daha spesifik olarak, sistem şunlardan oluşur:

  • Linux örneği yaşam döngüsünü yöneten bir kullanıcı modu oturum yöneticisi hizmeti
  • Rolü Linux sistem çağrılarını çevirerek bir Linux çekirdeğini taklit etmek olan Pico sağlayıcı sürücüleri (lxss.sys, lxcore.sys)
  • Pico, değiştirilmemiş kullanıcı modu Linux'u (ör. /bin/bash) barındıran işlemler.

Üç bileşen arasındaki bağlantı şu şekilde açıklanmaktadır:

Sihrin gerçekleştiği, kullanıcı modu Linux ikili dosyaları ile Windows çekirdek bileşenleri arasındaki boşluktur. Değiştirilmemiş Linux ikili dosyalarını Pico süreçlerine yerleştirerek, Linux sistem çağrılarının Windows çekirdeğine yönlendirilmesini sağlıyoruz. lxss.sys ve lxcore.sys sürücüleri, Linux sistem çağrılarını NT API'lerine çevirir ve Linux çekirdeğini taklit eder.

Süreçteki ana zorluk, iki sistemin birlikte çalışmasını sağlamaktır:

WSL, Windows NT çekirdeğinin üzerinde bir Linux çekirdek arabirimini sanallaştırarak değiştirilmemiş Linux ELF64 ikili dosyalarını yürütür. Ortaya çıkardığı çekirdek arabirimlerinden biri sistem çağrılarıdır (sistem çağrıları). Sistem çağrısı, kullanıcı modundan çağrılabilen, çekirdek tarafından sağlanan bir hizmettir. Hem Linux çekirdeği hem de Windows NT çekirdeği, birkaç yüz sistem çağrısını kullanıcı moduna maruz bırakır, ancak bunlar farklı anlamlara sahiptir ve genellikle doğrudan uyumlu değildir. Örneğin, Windows NT çekirdeği karşılaştırılabilir NtCreateProcess, NtOpenFile ve NtTerminateProcess'e sahipken, Linux çekirdeği çatal, açma ve öldürme gibi şeyler içerir.

Linux için Windows Alt Sistemi, Linux sistem çağrı isteklerini Windows NT çekirdeği ile koordineli olarak işlemekten sorumlu olan çekirdek modu sürücülerini (lxss.sys ve lxcore.sys) içerir. Sürücüler, Linux çekirdeğinden kod içermez, bunun yerine Linux uyumlu çekirdek arabirimlerinin temiz oda uygulamasıdır. Yerel Linux'ta, bir kullanıcı modu yürütülebilir dosyasından bir sistem çağrısı yapıldığında, Linux çekirdeği tarafından işlenir. WSL'de, aynı yürütülebilir dosyadan bir sistem çağrısı yapıldığında, Windows NT çekirdeği isteği lxcore.sys'e iletir. Mümkün olduğunda, lxcore.sys, Linux sistem çağrısını eşdeğer Windows NT çağrısına çevirir ve bu da ağır işi yapar.

Microsoft'un açık kaynaklı platformlara olan ilgisi göz önüne alındığında, birçok kişi merak etti. teknoloji devi, Canonical gibi büyük Linux odaklı şirketleri satın almalı, Ubuntu işletim sisteminin arkasındaki şirket. Microsoft ve Canonical açık kaynaklı yazılım konusunda işbirliği yapmış olsa da, ikisi de bu olasılık hakkında herhangi bir yorumda bulunmadı.

Linux – Windows etkileşiminin nasıl geliştiğiyle ilgileniyorsanız, Microsoft'un Blog'una gidin. Ekip, bu konuyla ilgili daha fazla blog yazısının takip edileceğine söz verdi.

KONTROL ETMENİZ GEREKEN İLGİLİ HİKAYELER:

  • Linux Kullanıcıları “Kulaklık Windows 8.1'de Çalışmayı Durdurdu” Sorunlarını Bildiriyor
  • Microsoft ve Canonical, Build 2016'da Bash'i Windows 10'a getiriyor
  • Münih, Windows XP Kullanıcılarına Ücretsiz Ubuntu CD'leri Dağıtmaya Başladı
Windows 11'de EXT4 Nasıl Bağlanır, Okunur veya Formatlanır

Windows 11'de EXT4 Nasıl Bağlanır, Okunur veya FormatlanırLinuxWindows Linux Alt Sistemi

Öncelikle WSL2'nin kurulu ve güncel olduğundan emin olunWSL2, PowerShell'de yalnızca birkaç komut satırıyla EXT4'ü Windows 11'e bağlamanıza ve okumanıza olanak tanır.Herhangi bir şeye başlamadan ön...

Devamını oku