Wine 9.0 ning barqaror versiyasi

Bir yillik ishlab chiqish va 26 ta eksperimental versiyadan so'ng, 32 dan ortiq o'zgarishlarni o'z ichiga olgan Win9.0 API - Wine 7000 ning ochiq joriy etilishining barqaror versiyasi taqdim etildi. Yangi versiyadagi asosiy yutuqlar qatoriga 64-bitli muhitda 32-bitli dasturlarni ishga tushirish uchun WoW64 arxitekturasini joriy etish, Wayland-ni qoʻllab-quvvatlash uchun drayverlarni integratsiyalash, ARM64 arxitekturasini qoʻllab-quvvatlash, DirectMusic API-ni joriy etish va smart-kartalarni qoʻllab-quvvatlash kiradi.

5336 (bir yil oldin 5266, ikki yil oldin 5156, uch yil oldin 5049) dasturlari Wine'da to'g'ri ishlashi tasdiqlandi. WindowsYana 4397 ta dastur (bir yil oldin 4370 ta, ikki yil oldin 4312 ta, uch yil oldin 4227 ta) qo'shimcha sozlamalar va tashqi DLLlar bilan yaxshi ishlaydi. 3943 ta dastur (bir yil oldin 3888 ta, ikki yil oldin 3813 ta, uch yil oldin 3703 ta) ilovalarning asosiy funksiyalariga xalaqit bermaydigan kichik muammolarga ega.

Wine 9.0 dagi asosiy yangiliklar:

  • Winewayland.drv drayveri qo'shildi, bu Wine-ni Wayland asosidagi muhitlarda XWayland yoki X11 komponentlaridan foydalanmasdan ishlatish imkonini beradi. Ushbu ishlab chiqish ishga tushirishni qo'llab-quvvatlaydigan sof Wayland muhitini ta'minlashga qaratilgan. Windows- X11 bilan bog'liq paketlarni o'rnatishni talab qilmaydigan ilovalar, bu keraksiz qatlamlarni yo'q qilish orqali o'yinlarda yuqori unumdorlik va tezkorlikni ta'minlaydi. Wine uchun sof Wayland muhitidan foydalanish X11 ga xos xavfsizlik muammolarini ham bartaraf etadi (masalan, ishonchsiz X11 o'yinlari boshqa ilovalarni josuslik qilishi mumkin, chunki X11 protokoli barcha kirish hodisalariga kirishga va tugmachalarni almashtirishni amalga oshirishga imkon beradi).

    Drayv eksperimental va ishlab chiqilayotgan deb belgilangan, ammo shunga qaramay, u allaqachon oynalarni boshqarish, bir nechta monitorlar bilan ishlash, yuqori pikselli zichlikdagi (yuqori DPI) ekranlarda chiqish masshtabini qo'llab-quvvatlash kabi ko'plab funktsiyalarni qo'llab-quvvatlaydi. sichqoncha harakatini kuzatish va Vulkan grafik API-ni qo'llab-quvvatlashda nisbiy koordinatalar. Odatiy bo'lib, drayver faol emas va uni yoqish uchun siz "HKCU\Software\Wine\Drivers" ro'yxatga olish kitobi parametriga "wayland" ni qo'shishingiz va DISPLAY muhit o'zgaruvchisi o'rnatilmaganligiga ishonch hosil qilishingiz kerak: wine reg.exe add HKCU\ \Software\\Wine\\Drivers /v Graphics /d x11,wayland

  • Barcha modullar PE va Unix qatlamlari o'rtasida to'g'ridan-to'g'ri qo'ng'iroqlarni amalga oshirish o'rniga NT tizimi qo'ng'iroq interfeysiga aylantirildi, bu esa barcha DLL-larni PE (Portable Executable) bajariladigan fayl formatidan foydalanishga aylantirish bo'yicha ko'p yillik ishlarning tugallanganligini anglatadi.
  • WoW64 qatlamining (64-bit) rivojlanishi davom etdi Windows-yo'qWindows), bu sizga 32-bitli tizimni ishga tushirish imkonini beradi Windows- 64-bitli Unix tizimlaridagi ilovalar. Unix kutubxonalariga kiradigan barcha modullar WoW64 tizim chaqiruv tarjimonlaridan (thunks) foydalanadi, bu esa PE formatidagi 32-bitli modullarga 64-bitli Unix kutubxonalariga kirish imkonini beradi.

    Yangi WoW64 ishga tushirish rejimi takomillashtirildi, bu 32-bitli kodni 64-bitli jarayon ichida ishga tushirishga imkon beradi (eski WoW64 rejimida 32-bitli ilovalar 32-bitli Unix jarayonlarida ishlagan). Platformada yangi WoW64 rejimidan foydalanishni qo'llab-quvvatlash qo'shildi. macOSYangi WoW64 rejimida 16-bitli qo'llab-quvvatlashning yo'qligi va ARB_buffer_storage kengaytmasini qo'llab-quvvatlamaslik tufayli OpenGL ishlashining pasayishi kabi ba'zi kichik xatolar mavjud bo'lganligi sababli, u hali sukut bo'yicha yoqilmagan va konfiguratsiya skriptidagi "--enable-archs=i386,x86_64" opsiyasi bilan yaratishni talab qiladi.

  • Mavjud bajariladigan fayllarni ishga tushirish imkoniyati qo'shildi Windows ARM64 arxitekturasiga ega tizimlarda. Endi Wine ARM64EC (ARM64 Emulation Compatible) ABI uchun yaratilishi mumkin va ARM64EC modullarini yuklash mumkin. Ushbu modullar dastlab x86_64 arxitekturasi uchun yozilgan ilovalarni ARM64 tizimlariga ko'chirishni soddalashtirish uchun ishlatiladi, buning uchun ARM64 muhitida alohida x86_64 kod modullarini emulyator yordamida bajarishga imkon beradi. ARM64X PE fayl formati uchun qo'llab-quvvatlash qo'shildi, bu esa bitta bajariladigan faylni x64/Arm64EC va ARM64 jarayonlarida yuklash imkonini beradi. 32-bitli x86 tizimlarini emulyatsiya qilish uchun interfeys joriy etildi, ammo emulyator kutubxonasi hali asosiy Wine distributiviga kiritilmagan (tashqi FEX emulyatori ARM64 muhitida x86 kodini ishga tushirish uchun ishlatilishi mumkin).
  • Grafik quyi tizimi
    • PostScript drayveri formatdagi spool fayllarini qo'llab-quvvatlash uchun qayta ishlangan. Windows, chop etish ishlari haqidagi ma'lumotlarni saqlaydigan. Unix muhitidan drayverga to'g'ridan-to'g'ri qo'ng'iroqlar chiqarib tashlangan.
    • WinRT mavzulariga qorong'u rejim qo'llab-quvvatlandi. Qorong'i interfeys dizaynini yoqish uchun WineCfg-ga sozlama qo'shildi.
    • Vulkan grafik API uchun drayveri Vulkan 1.3.272 spetsifikatsiyasini qo'llab-quvvatladi (8.0 Wine 1.3.237 da qo'llab-quvvatlandi).
    • GdiPlus kutubxonasining funksiyalari optimallashtirildi, bu esa grafik unumdorligini oshirish imkonini beradi.
  • Direct3D
    • Ko'p tarmoqli buyruqlar oqimini tahlil qilish, ishlov berish buyruqlari mavjud bo'lmaganda to'xtatiladi, bu butun buyruqlar oqimining o'tkazish qobiliyatini egallamaydigan dasturlarni bajarishda energiya sarfini bir ipli ishlov berish darajasiga kamaytirish imkonini beradi.
    • Direct3D 10 qo'shimcha effektlarni qo'llab-quvvatlashni o'z ichiga oladi.
    • Vulkan grafik API yordamida WineD3D kodi va backend uchun ish faoliyatini optimallashtirish amalga oshirildi.
    • Vulkan API-ga asoslangan renderlash kodi endi qurilma qanday imkoniyatlarni qo'llab-quvvatlashini tekshiradi va dasturga Direct3D funksiyasining qaysi darajasi mavjudligini aytadi.
    • D3DXFillTextureTX va D3DXFillCubeTextureTX funksiyalari amalga oshirildi.
    • Klassik OpenGL ARB shader backend ARB_fragment_program_shadow kengaytmasi yordamida soyalarni aniqlash uchun qo'shimcha yordamga ega.
    • D3DXLoadMeshHierarchyFromX va shunga o'xshash funksiyalar ID3DXLoadUserData interfeysi yordamida foydalanuvchi ma'lumotlarini yuklash uchun qo'shimcha yordamga ega.
  • Ovoz va video
    • DirectMusic API ning dastlabki tatbiq etilishi taklif qilindi. SoundFont formatidagi to'plamlar, asboblar va ovoz namunalari uchun qo'shimcha yordam. Doppler effekti uchun qo'shimcha yordam. Dmime sequencer va dmsynth MIDI sintezatorini ishlatishda to'g'ri bajarilishini tekshirish uchun testlar o'tkazildi.
    • FluidSynth kutubxonasi foydalanish uchun DirectMusic API ichiga o'rnatilgan.
    • DLS1 va DLS2 formatlarida, shuningdek, ishlatiladigan SF2 formatida tovush shriftlarini (SoundFont - MIDI fayllarini ijro etish uchun ishlatiladigan namunaviy sintez formatlari) yuklash uchun qo'llab-quvvatlash amalga oshirildi. Linux.
    • FluidSynth dasturiy ta'minot sintezatori va audio chiqishi uchun DirectSound API yordamida dmsynth kutubxonasi yordamida MIDI kontentini o'ynash imkoniyati qo'shildi.
    • Indeo IV50 video kodek formatidagi video uchun dekoder qo'shildi.
  • Directshow
    • WMV formatidagi dekoderga ega DMO (DirectX Media Object) komponenti joriy etildi (Windows Media video).
    • Audio yozib olish filtri qo'shildi (DirectShow Audio Capture Filter).
    • Audio oqimlardan tashqari, MPEG‑1 Stream Splitter (DirectShow MPEG‑1 Stream Splitter) endi video oqimlari va xizmat oqimlarini qo‘llab-quvvatlaydi.
    • MPEG‑1 formatidagi videoni dekodlash uchun filtr (DirectShow MPEG‑1 Video Dekoderi) joriy etildi.
  • Kirish moslamalari
    • DirectInput harakat xaritasini qo'llab-quvvatlaydi, bu sizga o'yin boshqaruvchisidagi tugmalarni o'yinlardagi muayyan harakatlarga bog'lash imkonini beradi.
  • Ish stoli integratsiyasi
    • Bog'lanishlar asosiy foydalanuvchi muhitiga eksport qilindi, bu esa Wine ostida ishlaydigan ilovalarni URL-manzilni ochishda protokol ishlovchilari sifatida chaqirish imkonini beradi (masalan, “spotify:user:spotify:playlist:848218482355482821” kabi havolalarni ochishda spotify.exe faylini ishga tushiradi).
    • Qurilmaning nomi va modeli kabi ulangan monitorning parametrlari haqidagi ma'lumotlarga ega EDID (kengaytirilgan displey identifikatsiya ma'lumotlari) ma'lumotlarini chiqarish amalga oshirildi.
    • "Ishga tushirish" menyusidagi "Ish stolidan chiqish" tugmasi yordamida to'liq ekran rejimida o'rnatilgan ish stoli oynasini yopish mumkin.
  • Xalqarolashtirish
    • IME (Kirish Usullari Muharrirlari) ni qo'llab-quvvatlash kengaytirildi. Mahalliy til bilan moslikni ta'minlash bo'yicha ishlar olib borildi Windows IME implementatsiyalari va takomillashtirilgan integratsiya Linux IME
    • Unicode CLDR (Unicode Common Locale Data Repository) 44-versiyasi maʼlumotlar bazasidan locale.nls formatida mahalliy maʼlumotlar bazalarini yaratish taʼminlandi. Bew-ID, blo-BJ, csw-CA, ie-EE, mic-CA kabi qoʻshimcha mahalliy tillarni qoʻllab-quvvatlash taʼminlandi. , prg-PL qo'shildi , skr-PK, tyv-RU, vmw-MZ, xnr-IN va za-CN.
    • Interfeys gruzin tiliga tarjima qilingan. To'liq tarjimalar 16 tilga, qisman tarjimalar esa 31 tilga taqdim etiladi.
    • Unicode belgilar jadvallari standart 15.1.0 versiyasiga yangilandi. Vaqt mintaqasi ma'lumotlar bazasi yangilandi.
  • Yadro (yadro interfeyslari) Windows)
    • Chiqarilgan versiya sifatida Windows sukut bo'yicha belgilangan Windows 10.
    • PE formatidagi bajariladigan fayllar uchun manzil maydonini randomizatsiyalash (ASLR) qo'llab-quvvatlanadi, ammo kodni xotiraga yuklash manzillari hali to'liq tasodifiylashtirilmagan.
    • Kuchsiz parchalangan uyum (LFH, Low Fragmentation Heap) uchun qo'llab-quvvatlash amalga oshirildi, bu xotirani ajratish operatsiyalari samaradorligini oshirdi.
    • Virtual xotirani ajratish mexanizmiga xotira zahirasini qo'llab-quvvatlash (to'ldiruvchi) qo'shildi, bu dasturga kelajakda foydalanish uchun virtual xotiraning ma'lum bir maydonini zaxiralash imkonini beradi.
    • Bajariladigan fayllar va kutubxonalarning 64-bitli yuklagichlari (yuklovchi va oldindan yuklovchi) 32-bitli manzil maydonining bir qismini boʻshatish uchun PIE (Position-Independent Executables) formatida tuzilgan.
    • NT tizimi qo'ng'iroqlari va foydalanuvchining qayta qo'ng'iroqlari uchun to'g'ri stekni ochish ta'minlanadi.
  • Tarmoq imkoniyatlari
    • MSHTML dvigateli "Cycle Collection" axlat yig'ish mexanizmini qo'llab-quvvatlaydi.
    • MSHTML XMLHttpRequest so'rovlarini sinxron qayta ishlash uchun qo'shimcha qo'llab-quvvatladi.
    • jscript.dll kalit/qiymat juftlari to'plami bilan ishlash uchun WeakMap ob'ektini qo'llab-quvvatlaydi, bunda kalit ixtiyoriy qiymatga ega bo'lishi mumkin bo'lgan ob'ekt hisoblanadi. WeakMap.get(), WeakMap.delete(), WeakMap.clear() va WeakMap.has() usullari amalga oshirildi.
    • Gecko brauzer mexanizmi 2.47.4 versiyasiga yangilandi.
    • Tarmoq interfeysi holatidagi o'zgarishlar haqida bildirishnomalarni qo'llab-quvvatlash amalga oshirildi.
  • Kriptografiya va xavfsizlik
    • PCSClite tizim kutubxonasi orqali amalga oshirilgan Winscard.dll kutubxonasiga smart-kartalarni qo'llab-quvvatlash qo'shildi.
    • BCrypt Diffie-Hellman kalit almashinuvi protokolini qo'llab-quvvatladi.
    • Muzokaralar paketi amalga oshirildi, bu SSP (Xavfsizlik Yordam Provayderi) provayderlariga kirish uchun SSPI (Security Support Provider Interface) interfeysidan foydalanish uchun qatlamni taqdim etadi.
  • O'rnatilgan ilovalar
    • Wine Debugger (winedbg) X86 mashinasi ko'rsatmalarini qismlarga ajratish uchun Zydis kutubxonasidan foydalanadi.
    • WineCfg interfeysi 64-bitli platformalarda eski versiyalarni qo'llab-quvvatlash uchun yangilandi. Windows (XP dan oldin), bu sizga WoW64 rejimidan foydalanib eski dasturlarni ishga tushirish imkonini beradi.
    • Barcha o'rnatilgan grafik ilovalar endi xato ma'lumotlarini konsolda ko'rsatish o'rniga alohida dialog oynasida ko'rsatadi.
    • Systeminfo dasturi WMI ma'lumotlar bazasidan ma'lumotlarni namoyish qilishni ta'minlaydi (Windows Boshqaruv asboblari).
    • Kerberos chiptalarini ko'rsatish uchun klist ilovasi qo'shildi.
    • Taskkill ilovasi bolalar jarayonlarini majburan tugatish qobiliyatini amalga oshiradi.
    • X86 va ARM-ni qo'llab-quvvatlaydigan gibrid bajariladigan fayllarni ishga tushirishda ishlatiladigan arxitekturani tanlash uchun ishga tushirish yordam dasturiga "/mashina" opsiyasi qo'shildi.
    • Vazifalar ro'yxati dasturining ko'p funksiyalari amalga oshirildi.
    • Findstr ilovasining asosiy ilovasi qo'shildi.
  • Rivojlanish vositalari
    • WineDump yordam dasturi ro'yxatga olish kitobi fayllari tarkibini ko'rsatish imkoniyatiga ega. Windows (REGF formati), shuningdek, gibrid PE fayllarida qo'llab-quvvatlanadigan barcha arxitekturalar (x86/ARM64) uchun ma'lumotlarni ko'rsatish.
    • IDL kompilyatori "kompozitsiya", "default_overload", "eskirgan" va "himoyalangan" atributlarni qo'llab-quvvatladi.
    • Wine 6.0 da eskirgan va uzoq vaqtdan beri Wine-da ishlatilmaydigan libwine.so olib tashlandi. libwine.so bilan Wine ning eski versiyalarida (5.0 va undan yuqori) oʻrnatilgan ELF formatidagi dasturlar Wine 9.0 da ishlash uchun qayta qurishni talab qiladi.
  • O'rnatilgan kutubxonalar va tashqi bog'liqliklar
    • FluidSynth 2.3.3, Musl 1.2.3 (faqat matematik funktsiyalar) va Zydis 4.0.0 kutubxonalari tuzilishga birlashtirilgan.
    • 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, LibXml1.1.38 1.3. va LibXslib8.1.0 uchun yangilangan komponentlar yangilangan. s. .NET platformasini amalga oshirish bilan Wine Mono dvigateli XNUMX versiyasini chiqarish uchun yangilandi.
    • Winewayland.drv drayveri tashqi bog'liqliklar sifatida Wayland mijozlar kutubxonasidan, shuningdek, xkbcommon va xkbregistry kutubxonalaridan foydalanadi.
    • Smart-kartalarni qo'llab-quvvatlash uchun tashqi PCSClite kutubxonasi ishlatiladi (ichida) macOS — PCSC).
    • PE fayllarini i386 bo'lmagan platformalarda yaratish endi istisnolarni hal qilish uchun ".seh" direktivalarini qo'llab-quvvatlaydigan o'zaro kompilyatorni talab qiladi.

Manba: opennet.ru

DDoS himoyasi, VPS VDS serverlari bo'lgan saytlar uchun ishonchli hosting sotib oling 🔥 DDoS himoyasi, VPS VDS serverlari bilan ishonchli veb-sayt xostingini sotib oling | ProHoster