Linux ve Windows yürütülebilir dosyaları farklı biçimler kullanır. Linux çoğu mimaride
ELF biçimini kullanırken, Windows
PE biçimini kullanır . ELF, Linux'un paylaşılan kitaplıkları yönetme biçimine daha uygundur ve PE, Windows'un paylaşılan kitaplıkları yönetme biçimine daha uygundur, ancak Linux'un PE yürütülebilir dosyalarını veya Windows ELF yürütülebilir dosyalarını yürütememesinin temel bir nedeni yoktur. Aslında Linux
, PE yürütülebilir dosyalarını
Wine aracılığıyla yürütebilir.
Zorluk, Windows ve Linux'un tamamen farklı
API'lere sahip olmasıdır: farklı çekirdek arabirimlerine ve kitaplık kümelerine sahiptirler. Bu nedenle, bir Windows uygulamasını gerçekten çalıştırmak için, Linux'un uygulamanın yaptığı tüm API çağrılarını taklit etmesi gerekir. Bu çok iş. Wine bunu bir dereceye kadar yapıyor, ancak özellikle Windows'un yapımcısı işbirliği yapmadığı için çok zor. Örneğin, ana diliniz Çinceyken İngilizce öğrenmekle karşılaştırabilirsiniz: yürütülebilir biçim alfabedir (uzmanlaşması o kadar da zor değil), API kelime bilgisidir (edebiyat okumaya başlayabileceğiniz bir düzeye gelmeniz yıllar alır).
Kaynak