Wine 9.0-ın stabil buraxılışı

Bir illik inkişafdan və 26 eksperimental versiyadan sonra, 32-dən çox dəyişikliyi özündə birləşdirən Win9.0 API - Wine 7000-ın açıq tətbiqinin stabil buraxılışı təqdim edildi. Yeni versiyanın əsas nailiyyətləri arasında 64 bitlik mühitdə 32 bitlik proqramların icrası üçün WoW64 arxitekturasının tətbiqi, Wayland-ı dəstəkləmək üçün sürücü inteqrasiyası, ARM64 arxitekturasına dəstək, DirectMusic API-nin tətbiqi və smart kartlara dəstək daxildir.

5336 (bir il əvvəl 5266, iki il əvvəl 5156, üç il əvvəl 5049) proqramının Wine-da düzgün işləməsi təsdiqlənib. WindowsDigər 4397 proqram (bir il əvvəl 4370, iki il əvvəl 4312, üç il əvvəl 4227) əlavə parametrlər və xarici DLL-lərlə yaxşı işləyir. 3943 proqramda (bir il əvvəl 3888, iki il əvvəl 3813, üç il əvvəl 3703) tətbiqlərin əsas funksionallığına mane olmayan kiçik problemlər var.

Wine 9.0-da əsas yeniliklər:

  • Winewayland.drv drayveri əlavə edilib və bu da Wine-ın XWayland və ya X11 komponentlərindən istifadə etmədən Wayland əsaslı mühitlərdə istifadəsinə imkan verir. Bu inkişaf, işə salma dəstəyi ilə təmiz Wayland mühiti təmin etməyi hədəfləyir. Windows- X11 ilə əlaqəli paketlərin quraşdırılmasını tələb etməyən tətbiqlər, lazımsız təbəqələri aradan qaldırmaqla oyunlarda daha yüksək performans və cavabdehlik təmin edir. Wine üçün təmiz Wayland mühitindən istifadə X11-ə xas olan təhlükəsizlik problemlərini də aradan qaldırır (məsələn, etibarsız X11 oyunları digər tətbiqlərə casusluq edə bilər, çünki X11 protokolu bütün giriş hadisələrinə giriş imkanı verir və düymə basılmasının əvəzlənməsini həyata keçirir).

    Sürücü eksperimental və inkişaf mərhələsindədir, lakin buna baxmayaraq, o, artıq pəncərə idarəetməsi, çoxsaylı monitorlarla işləmək, yüksək piksel sıxlığı (yüksək DPI) ekranlarında çıxışı miqyaslaşdırmaq üçün dəstək, ilə işləmək kimi bir çox funksiyaları dəstəkləyir. siçan hərəkətini izləyərkən nisbi koordinatlar və Vulkan qrafika API dəstəyi. Varsayılan olaraq, sürücü aktiv deyil və onu işə salmaq üçün “HKCU\Software\Wine\Drivers” reyestr parametrinə “wayland” əlavə etməli və DISPLAY mühit dəyişəninin təyin edilmədiyinə əmin olun: wine reg.exe əlavə HKCU\ \Software\\Wine\\Drivers /v Graphics /d x11,wayland

  • Bütün modullar PE və Unix təbəqələri arasında birbaşa zənglər etməkdənsə, NT sisteminin çağırış interfeysinə çevrildi və bu, bütün DLL-lərin PE (Portable Executable) icra edilə bilən fayl formatından istifadə etmək üçün konvertasiya etmək üçün çoxillik işlərin tamamlanmasını qeyd etdi.
  • WoW64 təbəqəsinin (64-bit) inkişafı davam etdi Windows-on-Windows), bu da 32 bitlik versiyanı işlətməyə imkan verir Windows- 64 bitlik Unix sistemlərindəki tətbiqlər. Unix kitabxanalarına daxil olan bütün modullar WoW64 sistem çağırış tərcüməçilərindən (thunks) istifadə edir və bu da PE formatındakı 32 bitlik modulların 64 bitlik Unix kitabxanalarına daxil olmasına imkan verir.

    Yeni WoW64 başlatma rejimi təkmilləşdirilib və 32 bitlik kodun 64 bitlik proses daxilində işləməsinə imkan verilib (köhnə WoW64 rejimində 32 bitlik tətbiqlər 32 bitlik Unix proseslərində işləyirdi). Platformada yeni WoW64 rejimindən istifadə üçün dəstək əlavə edilib. macOSYeni WoW64 rejimində 16 bitlik dəstəyin olmaması və ARB_buffer_storage uzantısına dəstəyin olmaması səbəbindən OpenGL performansının azalması kimi bəzi kiçik xətalar olduğundan, o, hələ standart olaraq aktiv deyil və konfiqurasiya skriptində "--enable-archs=i386,x86_64" seçimi ilə qurulmasını tələb edir.

  • Mövcud icra edilə bilən faylları icra etmək imkanı əlavə edildi Windows ARM64 arxitekturasına malik sistemlərdə. Wine artıq ARM64EC (ARM64 Emulation Compatible) ABI üçün qurula bilər və ARM64EC modulları yüklənə bilər. Bu modullar, emulator istifadə edərək ARM64 mühitində fərdi x86_64 kod modullarının icrasını təmin etməklə, əvvəlcə x86_64 arxitekturası üçün yazılmış tətbiqlərin ARM64 sistemlərinə köçürülməsini asanlaşdırmaq üçün istifadə olunur. Həm x64/Arm64EC, həm də ARM64 proseslərində tək bir icra edilə bilən faylın yüklənməsinə imkan verən ARM64X PE fayl formatı üçün dəstək əlavə edilmişdir. 32 bitlik x86 sistemlərini emulasiya etmək üçün interfeys tətbiq edilmişdir, lakin emulator kitabxanası hələ əsas Wine paylanmasına daxil edilməyib (xarici FEX emulatoru ARM64 mühitində x86 kodunu işlətmək üçün istifadə edilə bilər).
  • Qrafik alt sistemi
    • PostScript drayveri formatdakı makara fayllarını dəstəkləmək üçün yenidən dizayn edilmişdir Windows, çap işləri haqqında məlumatları saxlayır. Unix mühitindən sürücüyə birbaşa çağırışlar istisna olunur.
    • WinRT mövzularına qaranlıq rejim dəstəyi əlavə edildi. Qaranlıq interfeys dizaynını aktivləşdirmək üçün WineCfg-ə parametr əlavə edildi.
    • Vulkan qrafik API üçün sürücü Vulkan 1.3.272 spesifikasiyası üçün dəstək əlavə etdi (Wine 8.0-da 1.3.237 dəstəklənir).
    • GdiPlus kitabxanasının funksiyaları optimallaşdırılaraq qrafik performansını artırmağa imkan verir.
  • Direct3D
    • Çox yivli əmr axınının təhlili emal olunan heç bir göstərmə əmrləri olmadıqda dayandırılır ki, bu da bütün əmr axınının bant genişliyini tutmayan proqramları yerinə yetirərkən enerji istehlakını tək yivli emal səviyyəsinə endirməyə imkan verir.
    • Direct3D 10 əlavə effektlər üçün dəstək daxildir.
    • Vulkan qrafik API-dən istifadə edərək WineD3D koduna və arxa ucuna performans optimallaşdırmaları etdi.
    • Vulkan API əsaslı renderinq kodu indi cihazın hansı imkanları dəstəklədiyini yoxlayır və tətbiqə Direct3D funksionallığının hansı səviyyədə olduğunu bildirir.
    • D3DXFillTextureTX və D3DXFillCubeTextureTX funksiyaları həyata keçirilib.
    • Klassik OpenGL ARB shader backend ARB_fragment_program_shadow uzantısından istifadə edərək kölgələri müəyyən etmək üçün dəstəyi əlavə etdi.
    • D3DXLoadMeshHierarchyFromX və oxşar funksiyalar ID3DXLoadUserData interfeysindən istifadə edərək istifadəçi məlumatlarının yüklənməsi üçün əlavə dəstək verir.
  • Səs və video
    • DirectMusic API-nin ilkin tətbiqi təklif edilmişdir. SoundFont formatında kolleksiyalar, alətlər və səs nümunələri üçün əlavə dəstək. Doppler effekti üçün əlavə dəstək. Dmime sequencer və dmsynth MIDI sintezatoru işləyərkən düzgün tətbiqi yoxlamaq üçün testlər həyata keçirilmişdir.
    • FluidSynth kitabxanası istifadə üçün DirectMusic API-də quraşdırılmışdır.
    • DLS1 və DLS2 formatlarında, eləcə də istifadə edilən SF2 formatında səs şriftlərinin (SoundFont - MIDI fayllarını oxutmaq üçün istifadə olunan nümunə əsaslı sintez formatları) yüklənməsi üçün dəstək tətbiq edildi. Linux.
    • Audio çıxış üçün FluidSynth proqram sintezatoru və DirectSound API istifadə edərək, dmsynth kitabxanasından istifadə edərək MIDI məzmununu oynamaq imkanı əlavə edildi.
    • Indeo IV50 video kodek formatında video üçün dekoder əlavə edildi.
  • Directshow
    • WMV formatlı dekoderli DMO (DirectX Media Object) komponenti tətbiq edilmişdir (Windows Media Video).
    • Səs çəkmə filtri əlavə edildi (DirectShow Audio Capture Filter).
    • Audio axınlara əlavə olaraq, MPEG‑1 Axın Ayırıcı (DirectShow MPEG‑1 Axın Ayırıcı) indi video axınlarını və xidmət axınlarını dəstəkləyir.
    • MPEG‑1 formatında videonun deşifrə edilməsi üçün filtr (DirectShow MPEG‑1 Video Dekoderi) tətbiq edilib.
  • Giriş cihazları
    • DirectInput, oyun idarəedicisindəki düymələri oyunlarda xüsusi hərəkətlərə bağlamağa imkan verən fəaliyyət xəritəsini dəstəkləyir.
  • Masaüstü inteqrasiyası
    • Bağlamalar əsas istifadəçi mühitinə ixrac edilib və bu, Şərab altında işləyən proqramların URL-ni açarkən protokol işləyiciləri kimi çağırılmasına imkan verir (məsələn, “spotify:user:spotify:playlist:848218482355482821” kimi linkləri açarkən spotify.exe-ni işə salır).
    • Cihazın adı və modeli kimi qoşulmuş monitorun parametrləri haqqında məlumatla EDID (Genişləndirilmiş Ekran İdentifikasiyası Məlumatı) məlumatlarının çıxarılması həyata keçirildi.
    • “Başlat” menyusunda “İş masasından çıx” düyməsini istifadə edərək tam ekran rejimində quraşdırılmış iş masası pəncərəsini bağlamaq mümkündür.
  • İnternasiya
    • IME-lər (Giriş Metodları Redaktorları) üçün dəstək genişləndirilib. Yerli ilə uyğunluğu təmin etmək üçün işlər görülüb Windows IME tətbiqləri və təkmilləşdirilmiş inteqrasiya Linux EMI
    • Unicode CLDR (Unicode Common Locale Data Repository) versiyası 44 verilənlər bazasından locale.nls formatında yerli verilənlər bazalarının yaradılması təmin edilmişdir. bew-ID, blo-BJ, csw-CA, ie-EE, mic-CA üçün əlavə yerli dillərə dəstək , prg-PL əlavə edildi , skr-PK, tyv-RU, vmw-MZ, xnr-IN və za-CN.
    • İnterfeys gürcü dilinə tərcümə edilmişdir. Tam tərcümələr 16 dil üçün, qismən tərcümələr isə 31 dil üçün təqdim olunur.
    • Unicode simvol cədvəlləri standart 15.1.0 versiyasına yeniləndi. Saat qurşağı verilənlər bazası yeniləndi.
  • Kernel (kernel interfeysləri) Windows)
    • Buraxılmış versiya kimi Windows standart olaraq təyin olunur Windows 10.
    • PE formatında icra edilə bilən fayllar üçün ünvan məkanının təsadüfiləşdirilməsi (ASLR) dəstəyi həyata keçirilir, lakin kodun yaddaşa yüklənməsi üçün ünvanlar hələ tam təsadüfi deyil.
    • Zəif parçalanmış yığın üçün dəstək (LFH, Low Fragmentation Heap) həyata keçirildi ki, bu da yaddaş ayırma əməliyyatlarının performansını artırdı.
    • Yaddaşın rezervasiyası üçün dəstək (yer tutucu) virtual yaddaşın ayrılması mexanizminə əlavə edildi, bu proqrama gələcək istifadə üçün virtual yaddaşın müəyyən bir sahəsini saxlamağa imkan verir.
    • İcra edilə bilən faylların və kitabxanaların 64 bitlik yükləyiciləri (yükləyici və ilkin yükləyici) 32 bitlik ünvan sahəsinin bir hissəsini boşaltmaq üçün PIE (Mövqedən Müstəqil İcra olunanlar) formatında tərtib edilir.
    • NT sistem zəngləri və istifadəçi geri çağırışları üçün yığının düzgün açılması təmin edilir.
  • Şəbəkə xüsusiyyətləri
    • MSHTML mühərriki “Cycle Collection” zibil toplama mexanizmini dəstəkləyir.
    • MSHTML XMLHttpRequest sorğularının sinxron emalı üçün dəstəyi əlavə etdi.
    • jscript.dll, açarın ona ixtiyari dəyər əlavə edə bilən obyekt olduğu açar/dəyər cütləri toplusu ilə işləmək üçün WeakMap obyektinə dəstək əlavə edir. WeakMap.get(), WeakMap.delete(), WeakMap.clear() və WeakMap.has() üsulları tətbiq edildi.
    • Gecko brauzer mühərriki 2.47.4 versiyasına yeniləndi.
    • Şəbəkə interfeysinin vəziyyətində dəyişikliklər barədə bildirişlərin dəstəklənməsi həyata keçirilib.
  • Kriptoqrafiya və Təhlükəsizlik
    • PCSClite sistem kitabxanası vasitəsilə həyata keçirilən Winscard.dll kitabxanasına smart kartlar üçün dəstək əlavə edilib.
    • BCrypt, Diffie-Hellman açar mübadiləsi protokolu üçün dəstək əlavə etdi.
    • SSP (Təhlükəsizliyə Dəstək Provayderi) provayderlərinə daxil olmaq üçün SSPI (Təhlükəsizliyə Dəstək Provayderi İnterfeysi) interfeysindən istifadə etmək üçün bir təbəqə təmin edən Danışıqlar paketi həyata keçirilib.
  • Daxili Tətbiqlər
    • Wine Debugger (winedbg) X86 maşın təlimatlarını sökmək üçün Zydis kitabxanasından istifadə edir.
    • WineCfg interfeysi 64 bitlik platformalarda köhnə versiyaları dəstəkləmək üçün yenilənib. Windows (XP-dən əvvəl), bu da WoW64 rejimindən istifadə edərək köhnə tətbiqləri işə salmağa imkan verir.
    • Bütün daxili qrafik proqramlar indi səhv məlumatlarını konsolda göstərmək əvəzinə, ayrıca dialoqda göstərir.
    • Systeminfo proqramı WMI verilənlər bazasından məlumatların göstərilməsini təmin edir (Windows İdarəetmə Alətləri).
    • Kerberos biletlərini göstərmək üçün klist proqramı əlavə edildi.
    • taskkill tətbiqi uşaq proseslərini zorla dayandırmaq qabiliyyətini həyata keçirir.
    • X86 və ARM-ni dəstəkləyən hibrid icra sənədlərini işə salarkən istifadə olunan arxitekturanı seçmək üçün başlanğıc yardım proqramına "/machine" seçimi əlavə edildi.
    • Tapşırıq siyahısı proqramının əksər funksiyaları həyata keçirilib.
    • findstr tətbiqinin əsas tətbiqi əlavə edildi.
  • İnkişaf Alətləri
    • WineDump yardım proqramı qeyd sənədlərinin məzmununu göstərmək qabiliyyətinə malikdir. Windows (REGF formatı), eləcə də hibrid PE fayllarında dəstəklənən bütün arxitekturalar (x86/ARM64) üçün məlumatları göstərir.
    • IDL kompilyatoru "birləşdirilə bilən", "default_overload", "köhnəlmiş" və "qorunan" atributlar üçün dəstək əlavə edib.
    • Wine 6.0-da köhnəlmiş və uzun müddət Şərabda istifadə olunmayan libwine.so silindi. libwine.so ilə Wine-in köhnə versiyalarında (5.0 və daha köhnə) qurulmuş ELF formatında proqramlar Wine 9.0-da işləmək üçün yenidən qurulmasını tələb edir.
  • Daxili kitabxanalar və xarici asılılıqlar
    • FluidSynth 2.3.3, Musl 1.2.3 (yalnız riyazi funksiyalar) və Zydis 4.0.0 kitabxanaları paketə inteqrasiya olunub.
    • Komponentlər 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, ZlibXslib 1.1.38, yeni versiyaya yeniləndi. s. .NET platformasının tətbiqi ilə Wine Mono mühərriki 1.3 buraxılışı üçün yeniləndi.
    • Winewayland.drv sürücüsü xarici asılılıqlar kimi Wayland müştəri kitabxanasından, həmçinin xkbcommon və xkbregistry kitabxanalarından istifadə edir.
    • Ağıllı kartları dəstəkləmək üçün xarici PCSClite kitabxanası istifadə olunur (in macOS — PCSC).
    • Qeyri-i386 platformalarında PE fayllarının yaradılması indi istisnaları idarə etmək üçün ".seh" direktivlərini dəstəkləyən çarpaz tərtibçi tələb edir.

Mənbə: opennet.ru

DDoS mühafizəsi, VPS VDS serverləri olan saytlar üçün etibarlı hostinq alın 🔥 DDoS qorunması, VPS VDS serverləri ilə etibarlı veb sayt hostinqi alın | ProHoster