Bir yillik ishlab chiqish va 29 ta eksperimental versiyadan so'ng, 32 dan ortiq o'zgarishlarni o'z ichiga olgan Win10.0 API - Wine 6000 ning ochiq joriy etilishining barqaror versiyasi taqdim etildi. Yangi versiyadagi asosiy yutuqlar qatoriga ARM64EC arxitekturasini toʻliq qoʻllab-quvvatlash, yuqori pikselli zichlikka ega ekranlarda masshtablash, sukut boʻyicha Wayland drayverini kiritish, ekran va joystikni sozlash uchun panellarni amalga oshirish, FFmpeg, Bluetooth asosidagi muqobil multimedia backend kiradi. haydovchi, Vulkan 1.4-ni qo'llab-quvvatlash, emulyatsiya qobiliyatini video rejimlarini almashtirish.
Wine’da 5372 ta dasturning to‘g‘ri ishlashi tasdiqlandi Windows (bir yil oldin 5336, ikki yil oldin 5266, uch yil oldin 5156), yana 4435 ta dastur (bir yil oldin 4397, ikki yil oldin 4370, uch yil oldin 4312) qo'shimcha sozlamalar va tashqi DLLlar bilan yaxshi ishlaydi. 4020 ta dastur (bir yil oldin 3943, ikki yil oldin 3888, uch yil oldin 3813) ilovaning asosiy funksiyalaridan foydalanishga xalaqit bermaydigan kichik muammolarga ega.
Wine 10.0 dagi asosiy yangiliklar:
- ARM64
- ARM64EC (ARM64 Emulation Compatible) arxitekturasi uchun to'liq qo'llab-quvvatlanadi, Wine-da qo'llab-quvvatlash darajasi ARM64 arxitekturasi bilan tenglashtirilgan. ARM64EC arxitekturasi dastlab x64_86 tizimlari uchun yozilgan ilovalarni ARM64 tizimlariga koʻchirishni soddalashtirish uchun moʻljallangan va individual x64_86 kod modullariga emulyator yordamida ARM64 muhitida ishlash imkonini beradi.
- ARM64X PE fayl formatini to'liq qo'llab-quvvatlash amalga oshirildi, bu sizga ARM64EC va ARM64 arxitekturalari kodini bitta bajariladigan faylda birlashtirish imkonini beradi. Wine-ni ARM64X formatida yaratish uchun siz Git-dan LLVM-ni o'rnatishingiz kerak (kerakli funksiya LLVM 20 versiyasiga kiritilgan) va "konfiguratsiya" skriptini ishga tushirishda "-enable-archs=arm64ec,aarch64" variantini belgilang. .
- 64-bitli x86 tizimlarini emulyatsiya qilish uchun interfeys amalga oshirildi. ARM64EC dan foydalanganda, Wine o'zi xuddi shunday ishlaydi va emulyatsiya faqat x86-64 dastur kodiga qo'llaniladi. Emulyatorga ega kutubxona hali asosiy Wine to'plamiga kiritilmagan, ammo x86-64 kodini ARM64 muhitida ishlatish uchun siz ARM64EC qo'llab-quvvatlashi bilan qurilgan tashqi FEX emulyatoridan foydalanishingiz mumkin.
- Для поддержки ARM64 необходимо использование в системе страниц памяти размером 4КБ, как того требует ABI Windows (запуск в окружениях с ядрами Linux, использующими страницы памяти 16K или 64K пока не поддерживается).
- Grafik quyi tizimi
- Yuqori piksel zichligi (High-DPI) bo'lgan ekranlarda aniqroq masshtablash amalga oshirildi. Ilova DPI o'zgarishlariga moslashishni qo'llab-quvvatlaydimi yoki yo'qligini hisobga olgan holda yuqori pikselli zichlikka ega ekranlarda ilovalarni ko'rsatishni tashkil qilish uchun DPI Awareness rejimini qo'llab-quvvatlash ta'minlandi (DPI hisobga olinmagan ilovalar avtomatik ravishda masshtablanadi). Shaxsiy ilovalar yoki Wine prefikslari uchun yuqori DPI qo'llab-quvvatlashini bekor qilish uchun qo'shilgan imkoniyatlar.
- Vulkan grafik API uchun drayverga Vulkan 1.4 spetsifikatsiyasini qo'llab-quvvatlash qo'shildi (Vulkan 9.0 Wine 1.3.272 da qo'llab-quvvatlangan). Videoni kodlash va dekodlash uchun Vulkan kengaytmalarini qo'llab-quvvatlash qo'shildi.
- X11 backend-dan foydalanganda, 3D-kontentni ko'rsatish uchun bunday oynalardan foydalanadigan ilovalar uchun Vulkan bolalar oynalarini ko'rsatish imkoniyati amalga oshirildi (ilgari bunday xususiyat faqat OpenGL uchun mavjud edi).
- GdiPlus kutubxonasiga shriftlarni ulash mexanizmini qo'llab-quvvatlash qo'shildi, bu matnda joylashgan barcha belgilarni alohida qamrab oladigan shriftlar bo'lmasa, matnni ko'rsatishda bir nechta shriftlardan foydalanish imkonini beradi.
- Wayland
- В конфигурации по умолчанию активирован драйвер winewayland.drv, позволяющий использовать Wine в окружениях на базе протокола Wayland без применения XWayland и компонентов X11. Wine запускает приложения по умолчанию на Wayland напрямую только если XWayland недоступен, в противном случае запуск с использованием XWayland остаётся приоритетным. Для принудительного включения Wayland можно использовать переменную окружения DISPLAY, либо добавить ключ в реестр, создав файл file.reg: Windows Registry Editor Version 5.00 [HKEY_CURRENT_USER\Software\Wine\Drivers] «Graphics»=»wayland» и применив его командой: $ WINEPREFIX=/путь/до/префикса wine regedit /путь/до/file.reg
- Winewayland.drv drayveriga OpenGL va piksel buferlari (pBuffer) uchun qo'shimcha yordam qo'shildi.
- Wayland-ga asoslangan muhitda qalqib chiquvchi oynani joylashtirish bilan bog'liq muammolar hal qilindi.
- Wayland-dan foydalanilganda, tugmachalarni ushlab turganda avtomatik takroriy bosishni qo'llab-quvvatlash amalga oshiriladi.
- Ish stoli integratsiyasi
- Ekran sozlamalarini o‘zgartirmasdan video rejimlarini o‘zgartirishga taqlid qilish imkonini beruvchi eksperimental “mo‘ljallangan” emulyatsiya mexanizmi qo‘shildi. Video rejimini almashtirmasdan ekran o'lchamlarini o'zgartirishning ko'rinishi derazalarni kengaytirish va masshtablash orqali yaratiladi.
- Displey sozlamalarini boshqarish uchun interfeysni amalga oshirish bilan yangi ish stoli boshqaruv paneli ilovasi (desk.cpl) qo'shildi (masalan, ish stolining virtual ruxsatini o'zgartirishingiz yoki emulyatsiya qilingan displey parametrlarini sozlashingiz mumkin).
- Agar jarayonning buzilishidan keyin holatni tiklashning iloji bo'lmasa, ekran sozlamalarini standart qiymatlarga qaytarish imkoniyati qo'shildi.
- Добавлена поддержка отключения показа пиктограмм в системном лотке (в «HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer» следует указать «NoTrayItemsDisplay=1»).
- Добавлена поддержка отключения оболочек (Shell launcher) в режиме десктопа (в «HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer» следует указать «NoDesktop=1»).
- Direct3D
- OpenGL bilan renderlash endi GLSL 1.20, shuningdek, EXT_framebuffer_object va ARB_texture_non_power_of_two kengaytmalarini qo'llab-quvvatlashni talab qiladi. Eski ARB shader backend va OffscreenRenderingMode sozlamalarini qo‘llab-quvvatlash to‘xtatildi.
- Direct3D 9 va undan yuqori versiyalari uchun HLSL shader tilidan foydalangan holda amalga oshirilgan va Vulkan yoki OpenGL API orqali renderlashda sobit funksiya emulyatsiyasiga ruxsat beruvchi (eski Direct3D faqat oldindan belgilangan grafik operatsiyalarini oʻzgartirib boʻlmaydigan) qoʻshilgan.
- Vulkan bilan renderlash Vulkan kengaytmalaridan foydalanib, grafik trubaning holatini dinamik ravishda o'zgartiradi va o'yinlarda qoqinishni kamaytiradi.
- Vkd3d-shader yordamida GLSL shaderlari uchun muqobil glsl-vkd3d backend qo‘shildi.
- vkd3d-shader yordamida Direct3D effektlarini kompilyatsiya qilish uchun dastlabki yordam ko'rsatilgan.
- D3DX9 kutubxonasi hajmli teksturalarni yuklashda MIP teksturalarini (MipMap) yaratish qobiliyatini amalga oshiradi. PNG tasvirlaridagi 64bpp RGBA va 48bpp RGB rangli tasvir formatlari, shuningdek X8L8V8U8, A2W10V10U10, A8P8, V16U16 va Q16W16V16U16 formatlari uchun qoʻshimcha qoʻllab-quvvatlash.
- Ovoz va video
- GStreamer-ga asoslangan backendga muqobil ravishda FFmpeg-dan foydalanishga asoslangan va Media Foundation ramkasini ishga tushirish uchun mos bo'lgan yangi multimedia backend amalga oshirildi. Muqobil backendni yoqish uchun "HKCU\Software\Wine\MediaFoundation" ro'yxatga olish bo'limida "DisableGstByteStreamHandler=1" ni belgilashingiz kerak.
- Media Foundation API ilovasi demultiplekslash va dekodlash komponentlariga bog'liq bo'lgan ilovalarni yaxshiroq joylashtirish uchun yaxshilandi.
- DirectMusic API MIDI fayllarni yuklash uchun qo'shimcha qo'llab-quvvatladi.
- Kirish moslamalari
- Bluetooth drayverining dastlabki versiyasi qo'shildi.
- Joystik boshqaruv paneli ilovasi (joy.cpl) joystik sozlamalarini amalga oshirish bilan qo'shildi.
- Внесены улучшения, связанные с устройствами управления указателем (тачпады, мыши), использующими протокол HID (Human Interface Device). Добавлен драйвер mouhid.sys для HID-устройств. Реализован корректный разбор составных устройств ввода и обеспечена передача информации о них в Windows-приложения, как о раздельных устройствах.
- X11 backend uchun sensorli ekranlarni qo'llab-quvvatlash qo'shildi va WM_POINTER* xabarlarini (WM_POINTERENTER, WM_POINTERLEAVE va boshqalar) qayta ishlash orqali ko'p sensorli rejimdan foydalanish imkoniyati amalga oshirildi.
- User32 kutubxonasining ba'zi ichki tuzilmalarini umumiy xotiraga joylashtirish amalga oshirildi, bu unumdorlikni oshirdi va Wine Server yukini kamaytirdi.
- Winex11 alohida oynalarga nisbatan XInput2 hodisalarini qayta ishlash uchun qo'llab-quvvatlashni qo'shdi.
- Dvorak tartibiga ega klaviaturalarni to'g'ri qo'llab-quvvatlash amalga oshirildi.
- Yadro (yadro interfeyslari) Windows)
- Jarayon imtiyozlarini oshirish uchun qo'shimcha yordam (dastlab standart foydalanuvchi sifatida ishlaydigan jarayonga administrator imtiyozlari berilishi mumkin). Server jarayonlarini (msi harakat serveri), shuningdek, RtlCreateUserProcess() va CreateProcessInternal() funksiyalarini chaqiruvchi jarayonlarni yaratishda sukut bo'yicha cheklangan administrator tokeni yoqiladi.
- Disk yorliqlari haqida ma'lumot olishda, iloji bo'lsa, qurilmaga to'g'ridan-to'g'ri kirishga urinish o'rniga, DBus orqali tizim xizmatlariga kirishdan foydalaniladi.
- Однонаправленный механизм межпроцессного взаимодействия (IPC) Mailslots теперь реализован непосредственно в Wine server, что позволило добиться полной поддержки семантики Windows.
- Asinxron rejimda ketma-ket port hodisalarini kutish amalga oshirildi.
- AVX-512 kabi yangi vektor kengaytmalaridan foydalanishga imkon beruvchi ip kontekstlarida XSTATE protsessor kengaytmalari uchun to'liq qo'llab-quvvatlash qo'shildi.
- O'rnatilgan ilovalar
- Cmd.exe buyruqlar tarjimonida ishlatiladigan kirish ma'lumotlarini qayta ishlash mexanizmi qayta yozildi. Cmd.exe-ga “||” operatsiyalari qo'shildi Va "&&".
- Findstr yordam dasturi oddiy iboralar va katta-kichik harflarni sezmaydigan qidiruvlarni qo'llab-quvvatladi.
- ARM32EC modullarini ro'yxatdan o'tkazish qobiliyati regsvr32 va rundll64 yordam dasturlariga qo'shildi.
- Qo'shilgan yordamchi dasturlar: kiritilgan ma'lumotlarni saralash uchun tartiblash, fayllarni solishtirish uchun fc va fayllarni qidirish uchun.
- Wmic ilovasi interaktiv ish rejimini amalga oshiradi.
- Explorer ishga tushirish menyusi va asboblar paneli uchun ixtiyoriy yordamni qo'shdi. Cheklangan kirish huquqlari bilan explorer.exe ishga tushirildi.
- Rivojlanish vositalari
- ARM64X gibrid kutubxonalarini yaratish uchun winebuild-ga "-marm64x" opsiyasi qo'shildi.
- ARM64X uchun qurilishga ruxsat berish uchun winegcc-ga "-marm64x" opsiyasi qo'shildi.
- Interface Definition Language (IDL) yordamida yaratilgan fayllar sharhlangan rejimda bajarilishini to'liq qo'llab-quvvatlaydigan komponentlardan foydalanadi.
- IDL (Interfeysni aniqlash tili) kompilyatoriga eski formatda (SLTG) turdagi kutubxonalarni (TypeLib) yaratishni qo'llab-quvvatlash qo'shildi.
- Winedump yordam dasturi minidump jadvallari, C++ istisno ma'lumotlari va typelib resurslarining axlatlarini saqlash uchun qo'shimcha yordam berdi.
- Разное
- Diffie-Hellman (DH) kalit almashish protokoli uchun yaxshilangan yordam. DH parametrlarini sozlash va qabul qilish imkoniyati qo'shildi. Ochiq va shaxsiy kalitlar juftlarini yaratish uchun ishlovchilar joriy etildi.
- RSA algoritmi bilan birgalikda OAEP (Optimal Asymmetric Encryption Padding) qo'shimcha to'ldirishdan foydalanish ta'minlangan.
- DirectPlay API tarmoq seanslarini qo'llab-quvvatlaydi.
- WoW64 (64-bit) rejimida ishlaganda asinxron kirish/chiqish holatlarini qayta ishlash yaxshilandi Windows-yo'qWindows), bu sizga 32-bitli tizimni ishga tushirish imkonini beradi Windows- 64-bitli Unix tizimlaridagi ilovalar.
- Добавлена поддержка загрузки ODBC-драйверов к СУБД, собранных для Windows.
- ARM platformasi uchun RPC/COM, C++ RTTI (Run-Time Type Information) va C++ istisnolari uchun to'liq qo'llab-quvvatlanadi.
- C ish vaqtida ANSI funktsiyalari UTF-8 kodlashni qo'llab-quvvatlaydi.
- MSHTML dvigatelining imkoniyatlari kengaytirildi. Prototiplar va ob'ekt konstruktorlari uchun qo'shimcha yordam. JavaScript dvigateliga MSHTML uchun yangi ob'ektni ulash interfeysi qo'shildi. MSHTML o'rnatilgan funktsiyalari haqiqiy JavaScript obyektlariga aylantirildi. Mavzudagi barcha skriptlarni bajarish kontekstlarini qamrab olish uchun yaxshilangan JavaScript axlat yig'ish. ArrayBuffer va DataView JavaScript obyektlari uchun qoʻshimcha qoʻllab-quvvatlash.
- Gitlab asosidagi uzluksiz integratsiya tizimiga Clang va JUnit test hisobotlaridan foydalangan holda statik tahlilni qo'llab-quvvatlash qo'shildi.
- Capstone 5.0.3 kutubxonasi paketga o'rnatilgan bo'lib, u orqali WineDb tuzatuvchisida qismlarga ajratish amalga oshiriladi.
- Yangi versiyalarga yangilangan komponentlar: Vkd3d 1.14, Faudio 24.10, FluidSynth 2.4.0, LDAP 2.5.18, LCMS2 2.16, LibJpeg 9f, LibMPG123 1.32.9, LibPng 1.6.44, LibPng, LibPng, 4.7.0b.i. 2, LibXslt 2.12.8 va Zlib 1.1.42.
Manba: opennet.ru
