Մեկ տարվա մշակումից և 29 փորձարարական տարբերակներից հետո ներկայացվեց Win32 API-ի բաց ներդրման կայուն թողարկումը՝ Wine 10.0, որն իր մեջ ներառում էր ավելի քան 6000 փոփոխություն: Նոր տարբերակի հիմնական ձեռքբերումները ներառում են ARM64EC ճարտարապետության ամբողջական աջակցություն, բարձր պիքսելային խտությամբ էկրանների մասշտաբացում, լռելյայն Wayland դրայվերի ընդգրկում, էկրանի և ջոյսթիկի տեղադրման վահանակների ներդրում, FFmpeg-ի, Bluetooth-ի վրա հիմնված այլընտրանքային մուլտիմեդիա բեքենդ: վարորդ, Vulkan 1.4 աջակցություն, վիդեո ռեժիմների փոխարկման էմուլացիոն հնարավորություն:
Wine-ում հաստատվել է, որ 5372 ծրագիր ճիշտ է աշխատում։ Windows (5336 մեկ տարի առաջ, 5266 երկու տարի առաջ, 5156 երեք տարի առաջ), ևս 4435 ծրագիր (4397 մեկ տարի առաջ, 4370 երկու տարի առաջ, 4312 երեք տարի առաջ) լավ են աշխատում լրացուցիչ կարգավորումներով և արտաքին DLL-ներով: 4020 ծրագիր (3943 մեկ տարի առաջ, 3888 երկու տարի առաջ, 3813 երեք տարի առաջ) ունեն աննշան խնդիրներ, որոնք չեն խանգարում ծրագրի հիմնական ֆունկցիոնալության օգտագործմանը:
Հիմնական նորամուծությունները Wine 10.0-ում.
- ARM64- ը
- Ամբողջական աջակցություն է տրամադրվում ARM64EC (ARM64 Emulation Compatible) ճարտարապետությանը, որի աջակցության մակարդակը Wine-ում հասել է հավասարության ARM64 ճարտարապետության հետ: ARM64EC ճարտարապետությունը նախագծված է պարզեցնելու x64_86 համակարգերի համար ի սկզբանե գրված հավելվածների տեղափոխումը ARM64 համակարգեր, և թույլ է տալիս առանձին x64_86 կոդ մոդուլներին աշխատել ARM64 միջավայրում՝ օգտագործելով էմուլյատոր:
- Ամբողջական աջակցություն է ներդրվել ARM64X PE ֆայլի ձևաչափի համար, որը թույլ է տալիս միավորել ARM64EC և ARM64 ճարտարապետությունների կոդը մեկ գործարկվող ֆայլում: Wine ARM64X ձևաչափով կառուցելու համար անհրաժեշտ է տեղադրել LLVM Git-ից (անհրաժեշտ գործառույթը կներառվի LLVM 20 թողարկման մեջ) և «կարգավորել» սկրիպտը գործարկելիս նշեք «-enable-archs=arm64ec,aarch64» տարբերակը: .
- Ներդրվել է 64-բիթանոց x86 համակարգերի նմանակման ինտերֆեյս: ARM64EC-ի օգտագործման ժամանակ Wine-ն աշխատում է այնպես, ինչպես կա, և էմուլյացիան կիրառվում է միայն x86-64 հավելվածի կոդի վրա: Էմուլյատորով գրադարանը դեռ ներառված չէ հիմնական Wine փաթեթում, սակայն ARM86 միջավայրում x64-64 կոդը գործարկելու համար կարող եք օգտագործել ARM64EC աջակցությամբ կառուցված արտաքին FEX էմուլյատորը:
- Для поддержки ARM64 необходимо использование в системе страниц памяти размером 4КБ, как того требует ABI Windows (запуск в окружениях с ядрами Linux, использующими страницы памяти 16K или 64K пока не поддерживается).
- Գրաֆիկական ենթահամակարգ
- Իրականացրել է ավելի ճշգրիտ մասշտաբավորում բարձր պիքսելային խտությամբ էկրանների վրա (High-DPI): Աջակցություն DPI Awareness ռեժիմին տրամադրվել է բարձր պիքսելային խտությամբ էկրանների վրա հավելվածների ցուցադրումը կազմակերպելու համար՝ հաշվի առնելով, թե արդյոք հավելվածն աջակցում է հարմարվել DPI փոփոխություններին, թե ոչ (հավելվածները, որոնք հաշվի չեն առնում DPI-ն, չափվում են ավտոմատ կերպով): Ավելացվեցին ընտրանքներ՝ չեղարկելու High-DPI աջակցությունը առանձին հավելվածների կամ Wine նախածանցների համար:
- Vulkan 1.4 ճշգրտման աջակցությունն ավելացվել է Vulkan գրաֆիկական API-ի վարորդին (Vulkan 9.0-ն աջակցվում էր Wine 1.3.272-ում): Ավելացվել է Vulkan-ի ընդլայնումների աջակցություն՝ վիդեո կոդավորման և ապակոդավորման համար:
- X11 backend-ն օգտագործելիս ներդրվել է Vulkan-ի մանկական պատուհանները այն հավելվածների համար, որոնք օգտագործում են նման պատուհաններ՝ 3D բովանդակություն ցուցադրելու համար (նախկինում նման հատկությունը հասանելի էր միայն OpenGL-ի համար):
- GdiPlus գրադարանում ավելացվել է տառատեսակների կապակցման մեխանիզմի աջակցությունը, որը թույլ է տալիս օգտագործել մի քանի տառատեսակներ տեքստը ցուցադրելիս, եթե չկան տառատեսակներ, որոնք առանձին ծածկում են տեքստում հայտնաբերված բոլոր նիշերը:
- 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 դրայվերին ավելացվել է OpenGL և պիքսելային բուֆերների (pBuffer) աջակցություն:
- Լուծվել են Wayland-ի վրա հիմնված միջավայրերում թռուցիկ պատուհանների տեղադրման հետ կապված խնդիրները:
- Wayland-ն օգտագործելիս ապահովվում է ստեղները պահելու ժամանակ ավտոմատ կրկնվող սեղմման աջակցություն:
- Սեղանի ինտեգրում
- Ավելացվեց փորձարարական «մոդեզավորման» էմուլյացիայի մեխանիզմ, որը թույլ է տալիս ընդօրինակել վիդեո ռեժիմների միացումը՝ իրականում չփոխելով էկրանի կարգավորումները: Էկրանի լուծաչափը փոխելու տեսանելիությունը՝ առանց վիդեո ռեժիմի անցնելու, ստեղծվում է պատուհանների ընդլայնման և մասշտաբավորման միջոցով:
- Ավելացվել է աշխատասեղանի կառավարման վահանակի նոր հավելված (desk.cpl)՝ ցուցադրման կարգավորումները կառավարելու ինտերֆեյսի ներդրմամբ (օրինակ, կարող եք փոխել աշխատասեղանի վիրտուալ լուծումը կամ կարգավորել ցուցադրման նմանակված պարամետրերը):
- Ավելացվեց էկրանի կարգավորումները լռելյայն արժեքներին վերականգնելու հնարավորությունը, եթե գործընթացի խափանումից հետո անհնար է վերականգնել վիճակը:
- Добавлена поддержка отключения показа пиктограмм в системном лотке (в «HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer» следует указать «NoTrayItemsDisplay=1»).
- Добавлена поддержка отключения оболочек (Shell launcher) в режиме десктопа (в «HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer» следует указать «NoDesktop=1»).
- Direct3D- ը
- OpenGL-ով արտապատկերումն այժմ պահանջում է GLSL 1.20-ի աջակցություն, ինչպես նաև EXT_framebuffer_object և ARB_texture_non_power_of_two ընդլայնումները: Հին ARB shader backend-ի և OffscreenRenderingMode կարգավորումների աջակցությունը դադարեցվել է:
- Direct3D 9-ի և ավելի հին տարբերակի համար ավելացվել է ֆիքսված ֆունկցիայի գրաֆիկական խողովակ (հին Direct3D-ն ապահովում էր միայն նախապես սահմանված գրաֆիկական գործողություններ, որոնք հնարավոր չէ փոխել), իրականացվել է HLSL shader լեզվի միջոցով և թույլ է տալիս ֆիքսված ֆունկցիայի էմուլյացիա Vulkan կամ OpenGL API-ի միջոցով ցուցադրելիս:
- Vulkan-ի հետ մատուցումը օգտագործում է Vulkan ընդլայնումներ՝ գրաֆիկական խողովակաշարի վիճակը դինամիկ փոխելու համար՝ նվազեցնելով կակազությունը խաղերում:
- Ավելացվեց այլընտրանքային glsl-vkd3d հետնամաս GLSL շեյդերների համար՝ օգտագործելով vkd3d-shader:
- Տրամադրել է նախնական աջակցություն Direct3D էֆեկտների կազմման համար՝ օգտագործելով vkd3d-shader:
- D3DX9 գրադարանն իրականացնում է MIP հյուսվածքներ (MipMap) գեներացնելու հնարավորություն՝ ծավալային հյուսվածքներ բեռնելիս: Ավելացվել է աջակցություն 64bpp RGBA և 48bpp RGB գունային ներկայացման ձևաչափերին PNG պատկերներում, ինչպես նաև X8L8V8U8, A2W10V10U10, A8P8, V16U16 և Q16W16V16U16 ձևաչափերով:
- Ձայն և տեսանյութ
- Որպես այլընտրանք GStreamer-ի վրա հիմնված backend-ին, ներդրվել է նոր մուլտիմեդիա backend, որը հիմնված է FFmpeg-ի օգտագործման վրա և հարմար է Media Foundation շրջանակը գործարկելու համար: Այլընտրանքային հետնամասը միացնելու համար դուք պետք է նշեք «DisableGstByteStreamHandler=1» ռեեստրի բաժնում «HKCU\Software\Wine\MediaFoundation»:
- Media Foundation API-ի ներդրումը բարելավվել է՝ ավելի լավ տեղավորելու հավելվածները, որոնք կախված են ապամուլտիպլեքսավորման և վերծանման բաղադրիչներից:
- DirectMusic API-ն ավելացրել է աջակցություն MIDI ֆայլերի բեռնման համար:
- Մուտքագրեք սարքերը
- Ավելացվեց Bluetooth վարորդի նախնական տարբերակը:
- Ավելացվեց Joystick Control Panel հավելվածը (joy.cpl)՝ joystick-ի կարգավորումների ներդրմամբ:
- Внесены улучшения, связанные с устройствами управления указателем (тачпады, мыши), использующими протокол HID (Human Interface Device). Добавлен драйвер mouhid.sys для HID-устройств. Реализован корректный разбор составных устройств ввода и обеспечена передача информации о них в Windows-приложения, как о раздельных устройствах.
- X11 backend-ի համար ավելացվել է սենսորային էկրանների աջակցությունը և գործարկվել է WM_POINTER* հաղորդագրությունների (WM_POINTERENTER, WM_POINTERLEAVE և այլն) մշակման միջոցով բազմակի հպման ռեժիմ օգտագործելու հնարավորություն:
- Օգտվողի32 գրադարանի որոշ ներքին կառուցվածքների տեղադրում ընդհանուր հիշողության մեջ, ինչը բարձրացրեց կատարողականությունը և նվազեցրեց Wine Server-ի բեռը:
- Winex11-ն ավելացրել է աջակցություն XInput2 իրադարձությունների մշակման համար՝ կապված առանձին պատուհանների հետ:
- Իրականացրել է Dvorak դասավորությամբ ստեղնաշարերի ճիշտ աջակցություն:
- Միջուկ (միջուկի ինտերֆեյսներ Windows)
- Ավելացվեց գործընթացի արտոնությունների ընդլայնման աջակցություն (գործընթացը, որն ի սկզբանե գործում էր որպես ստանդարտ օգտագործող, կարող է տրվել ադմինիստրատորի արտոնություններ): Սերվերային գործընթացներ (msi գործողության սերվեր) ստեղծելիս, ինչպես նաև գործընթացներ, որոնք կոչում են RtlCreateUserProcess() և CreateProcessInternal() գործառույթները, լռելյայն միացված է սահմանափակ ադմինիստրատորի նշանը:
- Սկավառակի պիտակների մասին տեղեկատվություն ստանալիս, հնարավորության դեպքում, այժմ օգտագործվում է DBus-ի միջոցով համակարգի ծառայություններ մուտք գործելը, սարքին ուղղակիորեն մուտք գործելու փորձի փոխարեն:
- Однонаправленный механизм межпроцессного взаимодействия (IPC) Mailslots теперь реализован непосредственно в Wine server, что позволило добиться полной поддержки семантики Windows.
- Իրականացված սպասել սերիական պորտի իրադարձություններին ասինխրոն ռեժիմում:
- Ավելացվել է ամբողջական աջակցություն XSTATE պրոցեսորի ընդարձակման համար թելի համատեքստում, որը թույլ է տալիս օգտագործել նոր վեկտորային ընդարձակումներ, ինչպիսիք են AVX-512-ը:
- Ներկառուցված հավելվածներ
- Մուտքային տվյալների մշակման շարժիչը, որն օգտագործվում է cmd.exe հրամանի թարգմանիչում, վերաշարադրվել է: Ավելացվել է «||» գործողությունների աջակցություն cmd.exe-ին Եվ «&&»:
- Findstr կոմունալն ավելացրել է կանոնավոր արտահայտությունների և մեծատառերի անզգայուն որոնումների աջակցություն:
- ARM32EC մոդուլները գրանցելու հնարավորությունն ավելացվել է regsvr32 և rundll64 կոմունալ ծառայություններին:
- Ավելացված կոմունալ ծառայություններ. տեսակավորում մուտքային տվյալների տեսակավորման համար, fc ֆայլերը համեմատելու և ֆայլեր որոնելու համար:
- Wmic հավելվածն իրականացնում է աշխատանքի ինտերակտիվ ռեժիմ։
- Explorer-ն ավելացրել է կամընտիր աջակցություն մեկնարկի ընտրացանկի և գործիքագոտու համար: Ակտիվացված է explorer.exe-ի գործարկումը կրճատված մուտքի իրավունքով:
- Զարգացման գործիքներ
- Winebuild-ում ավելացվել է «-marm64x» տարբերակը՝ ARM64X հիբրիդային գրադարաններ ստեղծելու համար:
- Winegcc-ին ավելացվել է «-marm64x» տարբերակը՝ ARM64X-ի համար կառուցելու հնարավորություն տալու համար:
- Interface Definition Language (IDL) օգտագործմամբ ստեղծված ֆայլերը օգտագործում են բաղադրիչներ, որոնք լիովին աջակցում են կատարմանը մեկնաբանվող ռեժիմում:
- IDL (Interface Definition Language) կոմպիլյատորին ավելացվել է հին ձևաչափով (SLTG) տիպային գրադարաններ (TypeLib) ստեղծելու աջակցությունը:
- Winedump կոմունալն ավելացրել է աջակցություն minidump աղյուսակների, C++ բացառությունների մասին տեղեկատվության և typelib ռեսուրսների պահպանման համար:
- Ժողովածու
- Բարելավված աջակցություն Diffie-Hellman (DH) բանալիների փոխանակման արձանագրության համար: Ավելացվել է DH պարամետրերը կարգավորելու և ստանալու հնարավորություն: Իրականացված մշակիչներ հանրային և մասնավոր բանալիների զույգ ստեղծելու համար:
- Ապահովված է աճող լիցք OAEP (Optimal Asymmetric Encryption Padding) օգտագործումը RSA ալգորիթմի հետ միասին:
- DirectPlay API-ն աջակցում է ցանցային նիստերին:
- WoW64 (64-բիթ) ռեժիմում աշխատելիս ասինխրոն մուտքային/ելքային վիճակների բարելավված կառավարում Windows-վրա-Windows), որը թույլ է տալիս գործարկել 32-բիթանոց Windows-ծրագրեր 64-բիթանոց Unix համակարգերի վրա։
- Добавлена поддержка загрузки ODBC-драйверов к СУБД, собранных для Windows.
- ARM պլատֆորմի համար իրականացվում է RPC/COM, C++ RTTI (Run-Time Type Information) և C++ բացառությունների ամբողջական աջակցություն:
- C-ի գործարկման ժամանակ ANSI գործառույթներն ապահովում են UTF-8 կոդավորման աջակցությունը:
- Ընդլայնվել են MSHTML շարժիչի հնարավորությունները։ Ավելացված է աջակցություն նախատիպերի և օբյեկտների կառուցման համար: JavaScript շարժիչին ավելացվել է MSHTML-ի համար օբյեկտների կապող նոր ինտերֆեյս: MSHTML ներկառուցված գործառույթները վերածվել են վավեր JavaScript օբյեկտների: Բարելավվել է JavaScript-ի աղբի հավաքումը, որը ծածկում է սցենարի կատարման բոլոր համատեքստերը շղթայի մեջ: Ավելացվել է ArrayBuffer և DataView JavaScript օբյեկտների աջակցություն:
- Gitlab-ի վրա հիմնված շարունակական ինտեգրման համակարգին ավելացվել է ստատիկ վերլուծության աջակցություն՝ օգտագործելով Clang և JUnit թեստային հաշվետվությունները:
- Capstone 5.0.3 գրադարանը ներկառուցված է փաթեթում, որի միջոցով ապամոնտաժումն իրականացվում է WineDb կարգաբերիչում։
- Բաղադրիչները թարմացվել են նոր տարբերակներով՝ Vkd3d 1.14, Faudio 24.10, FluidSynth 2.4.0, LDAP 2.5.18, LCMS2 2.16, LibJpeg 9f, LibMPG123 1.32.9, LibP1.6.44, LibPng 4.7.0, LibPG2 2.12.8, LibP1.1.42, LibPng1.3.1. XNUMX, LibXslt XNUMX և Zlib XNUMX:
Source: opennet.ru
