Wine 9.0'ın kararlı sürümü

Bir yıllık geliştirme ve 26 deneysel sürümün ardından, Win32 API'nin açık uygulamasının kararlı bir sürümü sunuldu: 9.0'den fazla değişiklik içeren Wine 7000. Yeni sürümdeki önemli başarılar arasında 64 bit ortamda 32 bit programları çalıştırmak için WoW64 mimarisinin uygulanması, Wayland'ı desteklemek için sürücü entegrasyonu, ARM64 mimarisi desteği, DirectMusic API'nin uygulanması ve akıllı kart desteği yer alıyor.

Wine'da 5336 (bir yıl önce 5266, iki yıl önce 5156, üç yıl önce 5049) programın düzgün çalıştığı doğrulandı. WindowsDiğer 4397 program (bir yıl önce 4370, iki yıl önce 4312, üç yıl önce 4227) ek ayarlar ve harici DLL'lerle sorunsuz çalışıyor. 3943 programda (bir yıl önce 3888, iki yıl önce 3813, üç yıl önce 3703) uygulamaların temel işlevselliğini etkilemeyen küçük sorunlar mevcut.

Wine 9.0'daki önemli yenilikler:

  • Winewayland.drv sürücüsü eklendi ve bu sayede Wine, XWayland veya X11 bileşenleri kullanılmadan Wayland tabanlı ortamlarda kullanılabilir hale geldi. Bu geliştirme, başlatma desteğiyle birlikte tamamen Wayland tabanlı bir ortam sağlamayı amaçlamaktadır. Windows- X11 ile ilgili paketlerin yüklenmesini gerektirmeyen uygulamalar, gereksiz katmanları ortadan kaldırarak oyunlarda daha yüksek performans ve yanıt hızı sağlar. Wine için saf bir Wayland ortamı kullanmak, X11'e özgü güvenlik sorunlarını da ortadan kaldırır (örneğin, güvenilmeyen X11 oyunları, X11 protokolü tüm giriş olaylarına erişime izin verdiği ve tuş vuruşu değiştirme işlemi gerçekleştirdiği için diğer uygulamaları gözetleyebilir).

    Sürücü deneysel olarak işaretlenmiş ve geliştirilme aşamasındadır, ancak yine de pencere yönetimi, birden fazla monitörle çalışma, yüksek piksel yoğunluklu (yüksek DPI) ekranlarda çıktıyı ölçeklendirme desteği, Windows ile çalışma gibi birçok özelliği zaten destekliyor. Fare hareketini izlerken göreceli koordinatlar ve Vulkan grafik API'si desteği. Varsayılan olarak sürücü etkin değildir ve bunu etkinleştirmek için "HKCU\Software\Wine\Drivers" kayıt defteri parametresine "wayland" eklemeniz ve DISPLAY ortam değişkeninin ayarlanmadığından emin olmanız gerekir: wine reg.exe add HKCU\ \Yazılım\\Şarap\\Sürücüler /v Grafik /d x11,wayland

  • Tüm modüller, PE ve Unix katmanları arasında doğrudan arama yapmak yerine NT sistem çağrısı arayüzüne dönüştürüldü; bu, tüm DLL'lerin PE (Taşınabilir Yürütülebilir) çalıştırılabilir dosya formatını kullanacak şekilde dönüştürülmesine yönelik uzun yıllar süren çalışmanın tamamlandığını işaret ediyor.
  • WoW64 katmanının (64 bit) geliştirilmesi devam etti. Windows-OnWindows), bu da 32 bit çalıştırmanıza olanak tanır. Windows- 64 bit Unix sistemlerindeki uygulamalar. Unix kütüphanelerine erişen tüm modüller, WoW64 sistem çağrısı çeviricilerini (thunk'ları) kullanır; bu da PE formatındaki 32 bit modüllerin 64 bit Unix kütüphanelerine erişmesine olanak tanır.

    Yeni WoW64 başlatma modu geliştirildi ve 32 bit kodun 64 bit bir işlem içinde çalışmasına olanak tanındı (eski WoW64 modunda, 32 bit uygulamalar 32 bit Unix işlemlerinde çalışıyordu). Platformda yeni WoW64 modunun kullanımına yönelik destek eklendi. macOSYeni WoW64 modu, 16 bit desteğinin olmaması ve ARB_buffer_storage uzantısının desteklenmemesi nedeniyle OpenGL performansının düşmesi gibi bazı küçük hatalara sahip olduğundan, henüz varsayılan olarak etkinleştirilmemiştir ve yapılandırma betiğinde "--enable-archs=i386,x86_64" seçeneğiyle derlenmesini gerektirir.

  • Mevcut çalıştırılabilir dosyaları çalıştırma özelliği eklendi. Windows ARM64 mimarisine sahip sistemlerde, Wine artık ARM64EC (ARM64 Emülasyon Uyumlu) ABI için derlenebilir ve ARM64EC modülleri yüklenebilir. Bu modüller, x86_64 mimarisi için yazılmış uygulamaların ARM64 sistemlerine taşınmasını basitleştirmek için kullanılır; bu sayede bir emülatör kullanarak ARM64 ortamında tek tek x86_64 kod modüllerinin çalıştırılması sağlanır. ARM64X PE dosya formatı için destek eklendi; bu sayede tek bir yürütülebilir dosya hem x64/Arm64EC hem de ARM64 işlemlerinde yüklenebilir. 32 bit x86 sistemlerini taklit etmek için bir arayüz uygulandı, ancak emülatör kütüphanesi henüz ana Wine dağıtımına dahil edilmedi (harici FEX emülatörü, x86 kodunu ARM64 ortamında çalıştırmak için kullanılabilir).
  • Grafik alt sistemi
    • PostScript sürücüsü, belirtilen formatta yazdırma kuyruğu dosyalarını destekleyecek şekilde yeniden tasarlandı. WindowsYazdırma işleriyle ilgili verileri depolayan dosyalar. Unix ortamından sürücüye yapılan doğrudan çağrılar hariç tutulmuştur.
    • WinRT temalarına karanlık mod desteği eklendi. Karanlık arayüz tasarımını etkinleştirmek için WineCfg'ye bir ayar eklendi.
    • Vulkan grafik API'si sürücüsü, Vulkan 1.3.272 spesifikasyonu için destek ekledi (8.0, Wine 1.3.237'da destekleniyordu).
    • GdiPlus kitaplığının işlevleri optimize edilerek grafik performansının artırılması sağlandı.
  • Direct3D
    • Çok iş parçacıklı bir komut akışının ayrıştırılması, işlenen hiçbir işleme komutu olmadığında askıya alınır; bu, komut akışı bant genişliğinin tamamını kaplamayan programlar yürütülürken enerji tüketiminin tek iş parçacıklı işleme düzeyine düşürülmesine olanak tanır.
    • Direct3D 10, ek efektler için destek içerir.
    • Vulkan grafik API'sini kullanarak WineD3D kodunda ve arka uçta performans optimizasyonları yapıldı.
    • Vulkan API tabanlı işleme kodu artık cihazın hangi yetenekleri desteklediğini kontrol ediyor ve uygulamaya hangi seviyede Direct3D işlevselliğinin mevcut olduğunu söylüyor.
    • D3DXFillTextureTX ve D3DXFillCubeTextureTX işlevleri uygulandı.
    • Klasik OpenGL ARB gölgelendirici arka ucu, ARB_fragment_program_shadow uzantısını kullanarak gölgeleri tanımlamak için ek destek içerir.
    • D3DXLoadMeshHierarchyFromX ve benzer işlevler, ID3DXLoadUserData arayüzünü kullanarak kullanıcı verilerinin yüklenmesine yönelik destek ekledi.
  • Ses ve video
    • DirectMusic API'sinin ilk uygulaması önerildi. SoundFont formatındaki koleksiyonlar, enstrümanlar ve ses örnekleri için destek eklendi. Doppler efekti için destek eklendi. Dmime sıralayıcıyı ve dmsynth MIDI sentezleyiciyi çalıştırırken doğru uygulamayı doğrulamak için testler uygulanmıştır.
    • FluidSynth kitaplığı, kullanım için DirectMusic API'sine yerleşiktir.
    • DLS1 ve DLS2 formatlarında, ayrıca kullanılan SF2 formatında ses fontlarının (SoundFont - MIDI dosyalarını çalmak için kullanılan örnek tabanlı sentez formatları) yüklenmesi için destek uygulandı. Linux.
    • Ses çıkışı için FluidSynth yazılım sentezleyicisini ve DirectSound API'sini kullanarak dmsynth kitaplığını kullanarak MIDI içeriğini oynatma yeteneği eklendi.
    • Indeo IV50 video codec formatındaki video için bir kod çözücü eklendi.
  • DirectShow
    • WMV format kod çözücüsüne sahip DMO (DirectX Media Object) bileşeni uygulandı (Windows Medya Videosu).
    • Bir ses yakalama filtresi eklendi (DirectShow Ses Yakalama Filtresi).
    • MPEG‑1 Akış Ayırıcı (DirectShow MPEG‑1 Akış Ayırıcı) artık ses akışlarına ek olarak video akışlarını ve hizmet akışlarını da destekliyor.
    • MPEG‑1 formatındaki videonun kodunu çözmek için bir filtre (DirectShow MPEG‑1 Video Kod Çözücü) uygulanmıştır.
  • Giriş Aygıtları
    • DirectInput, oyun denetleyicisindeki düğmeleri oyunlardaki belirli eylemlere bağlamanıza olanak tanıyan eylem eşlemeyi destekler.
  • Masaüstü entegrasyonu
    • Bağlamalar ana kullanıcı ortamına aktarılarak, Wine altında çalışan uygulamaların bir URL açılırken protokol işleyicileri olarak çağrılmasına olanak tanındı (örneğin, "spotify:user:spotify:playlist:848218482355482821" gibi bağlantıları açarken spotify.exe'nin başlatılması).
    • Cihazın adı ve modeli gibi bağlı monitörün parametreleri hakkındaki bilgileri içeren EDID (Genişletilmiş Ekran Tanımlama Verileri) verilerinin çıkarılması uygulandı.
    • Tam ekran modunda açılan bir masaüstü penceresini “Başlat” menüsündeki “Masaüstünden çık” düğmesini kullanarak kapatmak mümkündür.
  • İstisnasızlık
    • IME'ler (Giriş Yöntemi Düzenleyicileri) için destek genişletildi. Yerel uygulamalarla uyumluluğu sağlamak için çalışmalar yapıldı. Windows IME uygulamaları ve geliştirilmiş entegrasyonu ile Linux IME
    • Unicode CLDR (Unicode Common Locale Data Repository) sürüm 44 veritabanından locale.nls formatında yerel veritabanlarının oluşturulması sağlanmıştır. Ek yerel ayarlar için w-ID, blo-BJ, csw-CA, ie-EE, mic-CA desteği sağlanmıştır. , prg-PL eklendi, skr-PK, tyv-RU, vmw-MZ, xnr-IN ve za-CN.
    • Arayüz Gürcüceye çevrildi. 16 dil için tam çeviri, 31 dil için kısmi çeviri sağlanmaktadır.
    • Unicode karakter tabloları standart sürüm 15.1.0'a güncellendi. Saat dilimi veritabanı güncellendi.
  • Çekirdek (çekirdek arayüzleri) Windows)
    • Yayınlanan versiyon olarak Windows varsayılan olarak tanımlanmıştır Windows 10.
    • PE formatındaki yürütülebilir dosyalar için, adres alanı rastgeleleştirmesi (ASLR) desteği uygulanır, ancak kodun belleğe yüklenmesine yönelik adresler henüz tamamen rastgele hale getirilmemiştir.
    • Bellek ayırma işlemlerinin performansını artıran, zayıf parçalanmış yığın (LFH, Düşük Parçalanma Yığını) desteği uygulandı.
    • Sanal bellek ayırma mekanizmasına bellek rezervasyonu (yer tutucu) desteği eklendi ve uygulamanın gelecekte kullanmak üzere sanal belleğin belirli bir alanını ayırmasına olanak tanıdı.
    • Yürütülebilir dosya ve kitaplıkların 64 bit yükleyicileri (yükleyici ve ön yükleyici), 32 bit adres alanının bir kısmını boşaltmak için PIE (Konumdan Bağımsız Yürütülebilir Dosyalar) formatında derlenir.
    • NT sistem çağrıları ve kullanıcı geri arama çağrıları için doğru yığın çözme sağlanır.
  • Ağ fırsatları
    • MSHTML motoru “Döngü Toplama” çöp toplama mekanizmasını destekler.
    • MSHTML, XMLHttpRequest isteklerinin eşzamanlı işlenmesi için destek ekledi.
    • jscript.dll, WeakMap nesnesinin, anahtarın kendisine rastgele bir değer eklenmiş bir nesne olduğu bir anahtar/değer çiftleri koleksiyonuyla çalışması için destek ekler. WeakMap.get(), WeakMap.delete(), WeakMap.clear() ve WeakMap.has() yöntemleri uygulandı.
    • Gecko tarayıcı motoru 2.47.4 sürümüne güncellendi.
    • Ağ arayüzünün durumundaki değişikliklerle ilgili bildirim desteği uygulandı.
  • Kriptografi ve Güvenlik
    • PCSClite sistem kitaplığı aracılığıyla uygulanan Winscard.dll kitaplığına akıllı kart desteği eklendi.
    • BCrypt, Diffie-Hellman anahtar değişim protokolü için destek ekledi.
    • Negotiate paketi uygulandı ve SSP (Güvenlik Destek Sağlayıcısı) sağlayıcılarına erişim için SSPI (Güvenlik Destek Sağlayıcı Arayüzü) arayüzünü kullanmaya yönelik bir katman sağlandı.
  • Gömülü Uygulamalar
    • Wine Debugger (winedbg), X86 makine talimatlarını sökmek için Zydis kütüphanesini kullanır.
    • WineCfg arayüzü, 64 bit platformlarda eski sürümleri destekleyecek şekilde güncellendi. Windows (XP öncesi sürümlerde), WoW64 modu kullanılarak eski uygulamaların çalıştırılmasına olanak tanır.
    • Tüm yerleşik grafik uygulamalar artık hata bilgilerini konsolda görüntülemek yerine ayrı bir iletişim kutusunda görüntülüyor.
    • Systeminfo programı, WMI veritabanından gelen bilgilerin görüntülenmesini sağlar (Windows Yönetim Araçları).
    • Kerberos biletlerini görüntülemek için klist uygulaması eklendi.
    • Taskkill uygulaması, alt süreçleri zorla sonlandırma yeteneğini uygular.
    • x86 ve ARM'yi destekleyen hibrit yürütülebilir dosyaları çalıştırırken kullanılan mimariyi seçmek için başlangıç ​​yardımcı programına "/machine" seçeneği eklendi.
    • Görev listesi programının işlevlerinin çoğu uygulanmıştır.
    • Findstr uygulamasının temel bir uygulaması eklendi.
  • Geliştirme araçları
    • WineDump yardımcı programı, kayıt defteri dosyalarının içeriğini görüntüleme özelliğine sahiptir. Windows (REGF formatı) yanı sıra, hibrit PE dosyalarında desteklenen tüm mimariler (x86/ARM64) için verileri görüntüler.
    • IDL derleyicisi "birleştirilebilir", "default_overload", "kullanımdan kaldırılmış" ve "korumalı" nitelikler için destek ekledi.
    • Wine 6.0'da kullanımdan kaldırılan ve artık Wine'da kullanılmayan libwine.so kaldırıldı. libwine.so ile Wine'ın eski sürümlerinde (5.0 ve daha eski) oluşturulan ELF formatındaki programların Wine 9.0'da çalıştırılabilmesi için yeniden oluşturulması gerekir.
  • Yerleşik kitaplıklar ve dış bağımlılıklar
    • FluidSynth 2.3.3, Musl 1.2.3 (yalnızca matematiksel işlevler) ve Zydis 4.0.0 kitaplıkları pakete entegre edilmiştir.
    • Vkd3d 1.10, Faudio 23.12, OpenLDAP 2.5.16, LCMS2 2.15, LibMPG123 1.32.2, LibPng 1.6.40, LibTiff 4.6.0, LibXml2 2.11.5, LibXslt 1.1.38 ve Zlib 1.3 bileşenleri yeni sürümlere güncellendi. .NET platformunun uygulanmasına sahip Wine Mono motoru, 8.1.0 sürümünü yayınlayacak şekilde güncellendi.
    • Winewayland.drv sürücüsü, dış bağımlılıklar olarak Wayland istemci kitaplığının yanı sıra xkbcommon ve xkbregistry kitaplıklarını da kullanır.
    • Akıllı kartları desteklemek için harici PCSClite kütüphanesi kullanılır (içinde) macOS — PCSC).
    • i386 dışı platformlarda PE dosyaları oluşturmak artık istisnaları işlemek için ".seh" yönergelerini destekleyen bir çapraz derleyici gerektiriyor.

Kaynak: opennet.ru

DDoS korumalı siteler, VPS VDS sunucuları için güvenilir hosting satın alın 🔥 DDoS korumalı, güvenilir VPS ve VDS sunucu barındırma hizmeti satın alın | ProHoster