Stable na release ng Wine 10.0

Pagkatapos ng isang taon ng pag-unlad at 29 pang-eksperimentong bersyon, ipinakita ang isang matatag na paglabas ng bukas na pagpapatupad ng Win32 API - Wine 10.0, na nagsama ng higit sa 6000 pagbabago. Kasama sa mga pangunahing tagumpay sa bagong bersyon ang buong suporta para sa arkitektura ng ARM64EC, pag-scale sa mga screen na may mataas na pixel density, pagsasama ng Wayland driver bilang default, pagpapatupad ng mga panel para sa pag-customize ng screen at joystick, isang alternatibong multimedia backend batay sa FFmpeg, Bluetooth driver, suporta ng Vulkan 1.4, kakayahan sa pagtulad sa paglipat ng mga mode ng video.

Nakumpirmang gumagana nang maayos ang 5372 na programa sa Wine Windows (5336 isang taon na ang nakalipas, 5266 dalawang taon na ang nakalipas, 5156 tatlong taon na ang nakalipas), isa pang 4435 na programa (4397 isang taon na ang nakalipas, 4370 dalawang taon na ang nakalipas, 4312 tatlong taon na ang nakalipas) ay gumagana nang maayos gamit ang mga karagdagang setting at mga panlabas na DLL. Ang mga programang 4020 (3943 isang taon na ang nakalipas, 3888 dalawang taon na ang nakalipas, 3813 tatlong taon na ang nakalipas) ay may mga maliliit na isyu na hindi nakakasagabal sa paggamit ng pangunahing functionality ng application.

Mga pangunahing inobasyon sa Wine 10.0:

  • ARM64
    • Ang buong suporta ay ibinibigay para sa ARM64EC (ARM64 Emulation Compatible) na arkitektura, ang antas ng suporta sa Wine kung saan umabot na sa pare-pareho ang ARM64 na arkitektura. Ang arkitektura ng ARM64EC ay idinisenyo upang pasimplehin ang pag-port ng mga application na orihinal na isinulat para sa mga x64_86 system sa mga ARM64 system, at pinapayagan ang mga indibidwal na x64_86 code module na tumakbo sa ARM64 environment gamit ang isang emulator.
    • Ang buong suporta ay ipinatupad para sa ARM64X PE file format, na nagbibigay-daan sa iyong pagsamahin ang code para sa ARM64EC at ARM64 na mga arkitektura sa isang executable na file. Upang bumuo ng Wine sa format na ARM64X, kailangan mong i-install ang LLVM mula sa Git (isasama ang kinakailangang functionality sa release ng LLVM 20) at kapag pinapatakbo ang script na "configure", tukuyin ang opsyon na "-enable-archs=arm64ec,aarch64". .
    • Ang isang interface para sa pagtulad sa 64-bit x86 system ay ipinatupad. Kapag gumagamit ng ARM64EC, ang Wine mismo ay tumatakbo nang ganoon, at ang emulation ay inilalapat lamang sa x86-64 application code. Ang library na may emulator ay hindi pa kasama sa pangunahing pakete ng Wine, ngunit upang patakbuhin ang x86-64 code sa ARM64 na kapaligiran, maaari mong gamitin ang panlabas na FEX emulator na binuo na may suporta sa ARM64EC.
    • Для ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ ARM64 Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ использованиС Π² систСмС страниц памяти Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ 4ΠšΠ‘, ΠΊΠ°ΠΊ Ρ‚ΠΎΠ³ΠΎ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ABI Windows (запуск Π² окруТСниях с ядрами Linux, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠΌΠΈ страницы памяти 16K ΠΈΠ»ΠΈ 64K ΠΏΠΎΠΊΠ° Π½Π΅ поддСрТиваСтся).
  • Subsystem ng graphics
    • Nagpatupad ng mas tumpak na pag-scale sa mga screen na may mataas na pixel density (High-DPI). Ang suporta para sa DPI Awareness mode ay ibinigay upang ayusin ang pagpapakita ng mga application sa mga screen na may mataas na pixel density, isinasaalang-alang kung sinusuportahan ng application ang pagbagay sa mga pagbabago sa DPI o hindi (ang mga application na hindi isinasaalang-alang ang DPI ay awtomatikong nai-scale). Nagdagdag ng mga opsyon para i-override ang High-DPI na suporta para sa mga indibidwal na application o Wine prefix.
    • Ang suporta para sa pagtutukoy ng Vulkan 1.4 ay naidagdag sa driver para sa Vulkan graphics API (Vulkan 9.0 ay suportado sa Wine 1.3.272). Nagdagdag ng suporta para sa mga extension ng Vulkan para sa pag-encode at pag-decode ng video.
    • Kapag ginagamit ang X11 backend, ang kakayahang mag-render ng Vulkan child window para sa mga application na gumagamit ng naturang mga window upang magpakita ng 3D na nilalaman ay ipinatupad (noon, ang naturang feature ay available lang para sa OpenGL).
    • Ang suporta para sa mekanismo ng pag-link ng font ay idinagdag sa library ng GdiPlus, na nagbibigay-daan sa iyong gumamit ng ilang mga font kapag nagpapakita ng teksto kung walang mga font na hiwalay na sumasaklaw sa lahat ng mga character na makikita sa teksto.
  • 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
    • Nagdagdag ng suporta para sa OpenGL at mga pixel buffer (pBuffer) sa driver ng winewayland.drv.
    • Nalutas ang mga isyu sa popup window positioning sa Wayland-based na kapaligiran.
    • Kapag gumagamit ng Wayland, suporta para sa auto-repeat kapag ipinatupad ang pagpindot sa mga key.
  • Pagsasama ng desktop
    • Nagdagdag ng pang-eksperimentong "modeset" na mekanismo ng emulation na nagbibigay-daan sa iyong tularan ang paglipat ng mga video mode nang hindi aktwal na binabago ang mga setting ng screen. Ang visibility ng pagbabago ng resolution ng screen nang hindi lumilipat ng video mode ay nilikha sa pamamagitan ng pagpapalawak at pag-scale ng mga window.
    • Ang isang bagong Desktop Control Panel applet (desk.cpl) ay naidagdag sa pagpapatupad ng isang interface para sa pamamahala ng mga setting ng display (halimbawa, maaari mong baguhin ang virtual na resolution ng desktop o i-configure ang mga emulated na parameter ng display).
    • Idinagdag ang kakayahang i-reset ang mga setting ng screen sa mga default na halaga kung imposibleng ibalik ang estado pagkatapos ng pag-crash ng proseso.
    • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΏΠΎΠΊΠ°Π·Π° ΠΏΠΈΠΊΡ‚ΠΎΠ³Ρ€Π°ΠΌΠΌ Π² систСмном Π»ΠΎΡ‚ΠΊΠ΅ (Π² Β«HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\ExplorerΒ» слСдуСт ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Β«NoTrayItemsDisplay=1Β»).
    • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΎΠ±ΠΎΠ»ΠΎΡ‡Π΅ΠΊ (Shell launcher) Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ дСсктопа (Π² Β«HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\ExplorerΒ» слСдуСт ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Β«NoDesktop=1Β»).
  • Direct3D
    • Ang pag-render gamit ang OpenGL ay nangangailangan na ngayon ng suporta para sa GLSL 1.20, pati na rin ang EXT_framebuffer_object at ARB_texture_non_power_of_two extension. Ang suporta para sa lumang ARB shader backend at OffscreenRenderingMode na setting ay hindi na ipinagpatuloy.
    • Para sa Direct3D 9 at mas luma, may naidagdag na fixed function graphics pipeline (ang mas lumang Direct3D ay nagbigay lamang ng mga paunang natukoy na graphics operations na hindi mababago), ipinatupad gamit ang HLSL shader language at pinapayagan ang fixed function emulation kapag nagre-render sa pamamagitan ng Vulkan o OpenGL API.
    • Gumagamit ang pag-render gamit ang Vulkan ng mga extension ng Vulkan upang dynamic na baguhin ang estado ng pipeline ng graphics, na binabawasan ang pagkautal sa mga laro.
    • Nagdagdag ng alternatibong glsl-vkd3d backend para sa mga GLSL shader, gamit ang vkd3d-shader.
    • Nagbigay ng paunang suporta para sa pag-compile ng mga Direct3D effect gamit ang vkd3d-shader.
    • Ang D3DX9 library ay nagpapatupad ng kakayahang bumuo ng mga MIP texture (MipMap) kapag naglo-load ng mga volumetric na texture. Nagdagdag ng suporta para sa mga format ng representasyon ng kulay na 64bpp RGBA at 48bpp RGB sa mga PNG na larawan, pati na rin sa mga format na X8L8V8U8, A2W10V10U10, A8P8, V16U16 at Q16W16V16U16.
  • Tunog at video
    • Bilang alternatibo sa GStreamer-based backend, isang bagong multimedia backend ang ipinatupad, batay sa paggamit ng FFmpeg at angkop para sa pagpapatakbo ng Media Foundation framework. Upang paganahin ang isang alternatibong backend, dapat mong tukuyin ang "DisableGstByteStreamHandler=1" sa seksyon ng registry na "HKCU\Software\Wine\MediaFoundation".
    • Ang pagpapatupad ng Media Foundation API ay pinahusay upang mas mahusay na mapaunlakan ang mga application na nakadepende sa mga bahagi ng demultiplexing at decoding.
    • Ang DirectMusic API ay nagdagdag ng suporta para sa paglo-load ng mga MIDI file.
  • Mga aparatong input
    • Nagdagdag ng paunang bersyon ng Bluetooth driver.
    • Nagdagdag ng Joystick Control Panel applet (joy.cpl) na may pagpapatupad ng mga setting para sa joystick.
    • ВнСсСны ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡ, связанныС с устройствами управлСния ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΌ (Ρ‚Π°Ρ‡ΠΏΠ°Π΄Ρ‹, ΠΌΡ‹ΡˆΠΈ), ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠΌΠΈ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» HID (Human Interface Device). Π”ΠΎΠ±Π°Π²Π»Π΅Π½ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ mouhid.sys для HID-устройств. Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹ΠΉ Ρ€Π°Π·Π±ΠΎΡ€ составных устройств Π²Π²ΠΎΠ΄Π° ΠΈ обСспСчСна ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ Π½ΠΈΡ… Π² Windows-прилоТСния, ΠΊΠ°ΠΊ ΠΎ Ρ€Π°Π·Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… устройствах.
    • Para sa backend ng X11, idinagdag ang suporta para sa mga touch screen at ipinatupad ang kakayahang gumamit ng multi-touch mode sa pamamagitan ng pagproseso ng mga mensaheng WM_POINTER* (WM_POINTERENTER, WM_POINTERLEAVE, atbp.).
    • Ipinatupad ang paglalagay ng ilang panloob na istruktura ng user32 library sa shared memory, na nagpapataas ng performance at nagpababa ng load sa Wine Server.
    • Nagdagdag ang Winex11 ng suporta para sa pagproseso ng mga kaganapan sa XInput2 na may kaugnayan sa mga indibidwal na bintana.
    • Ipinatupad ang tamang suporta para sa mga keyboard na may layout ng Dvorak.
  • Kernel (mga interface ng kernel) Windows)
    • Idinagdag ang suporta para sa pagdami ng pribilehiyo ng proseso (isang proseso na unang tumatakbo bilang karaniwang user ay maaaring bigyan ng mga pribilehiyo ng administrator). Kapag lumilikha ng mga proseso ng server (msi action server), pati na rin ang mga prosesong tumatawag sa mga function ng RtlCreateUserProcess() at CreateProcessInternal(), isang limitadong token ng administrator ang pinapagana bilang default.
    • Kapag kumukuha ng impormasyon tungkol sa mga label ng disk, hangga't maaari, ang pag-access sa mga serbisyo ng system sa pamamagitan ng DBus ay ginagamit na ngayon, sa halip na subukang direktang i-access ang device.
    • ΠžΠ΄Π½ΠΎΠ½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½Ρ‹ΠΉ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ мСТпроцСссного взаимодСйствия (IPC) Mailslots Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ нСпосрСдствСнно Π² Wine server, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»ΠΎ Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ сСмантики Windows.
    • Ipinatupad ang paghihintay para sa mga serial port na kaganapan sa asynchronous mode.
    • Nagdagdag ng buong suporta para sa mga extension ng processor ng XSTATE sa mga konteksto ng thread, na nagpapahintulot sa paggamit ng mga bagong extension ng vector gaya ng AVX-512.
  • Mga Naka-embed na Application
    • Ang input data processing engine na ginamit sa cmd.exe command interpreter ay muling isinulat. Nagdagdag ng suporta para sa "||" na operasyon sa cmd.exe At "&&".
    • Ang findstr utility ay nagdagdag ng suporta para sa mga regular na expression at case-insensitive na mga paghahanap.
    • Ang kakayahang magrehistro ng ARM32EC modules ay naidagdag sa regsvr32 at rundll64 utilities.
    • Mga idinagdag na utility: pag-uri-uriin para sa pag-uuri ng data ng input, fc para sa paghahambing ng mga file at kung saan para sa paghahanap ng mga file.
    • Ang wmic application ay nagpapatupad ng interactive na mode ng operasyon.
    • Nagdagdag ang Explorer ng opsyonal na suporta para sa start menu at toolbar. Pinagana ang paglunsad ng explorer.exe na may pinababang mga karapatan sa pag-access.
  • Mga Tool sa Pag-unlad
    • Idinagdag ang opsyong "-marm64x" sa winebuild upang makabuo ng mga hybrid na aklatan ng ARM64X.
    • Idinagdag ang "-marm64x" na opsyon sa winegcc upang payagan ang pagbuo para sa ARM64X.
    • Ang mga file na nabuo gamit ang Interface Definition Language (IDL) ay gumagamit ng mga bahagi na ganap na sumusuporta sa pagpapatupad sa interpreted mode.
    • Ang suporta para sa pagbuo ng mga uri ng library (TypeLib) sa lumang format (SLTG) ay idinagdag sa IDL (Interface Definition Language) compiler.
    • Ang utility ng winedump ay nagdagdag ng suporta para sa pag-save ng mga dump ng mga talahanayan ng minidump, impormasyon sa pagbubukod ng C++, at mga mapagkukunan ng typelib.
  • Miscellanea
    • Pinahusay na suporta para sa Diffie-Hellman (DH) key exchange protocol. Idinagdag ang kakayahang i-configure at tumanggap ng mga parameter ng DH. Ipinatupad na mga tagapangasiwa para sa paglikha ng mga pares ng pampubliko at pribadong mga susi.
    • Ang paggamit ng incremental padding OAEP (Optimal Asymmetric Encryption Padding) kasama ang RSA algorithm ay ibinigay.
    • Sinusuportahan ng DirectPlay API ang mga session ng network.
    • Pinahusay na paghawak ng mga asynchronous input/output states kapag nagtatrabaho sa WoW64 (64-bit) mode Windows-sa-Windows), na nagbibigay-daan sa iyong magpatakbo ng 32-bit Windows-mga aplikasyon sa 64-bit na mga sistemang Unix.
    • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ODBC-Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠ² ΠΊ Π‘Π£Π‘Π”, собранных для Windows.
    • Para sa platform ng ARM, ipinapatupad ang buong suporta para sa RPC/COM, C++ RTTI (Run-Time Type Information) at C++ exception.
    • Sa C runtime, ang mga function ng ANSI ay nagpapatupad ng suporta para sa pag-encode ng UTF-8.
    • Ang mga kakayahan ng MSHTML engine ay pinalawak. Nagdagdag ng suporta para sa mga prototype at object constructor. Ang isang bagong object na nagbubuklod na interface para sa MSHTML ay naidagdag sa JavaScript engine. Ang mga built-in na function ng MSHTML ay na-convert sa mga wastong JavaScript object. Pinahusay na koleksyon ng basura ng JavaScript upang masakop ang lahat ng konteksto ng pagpapatupad ng script sa isang thread. Nagdagdag ng suporta para sa ArrayBuffer at DataView JavaScript objects.
    • Ang suporta para sa static na pagsusuri gamit ang Clang at JUnit test reports ay naidagdag sa Gitlab-based na tuluy-tuloy na integration system.
    • Ang Capstone 5.0.3 library ay binuo sa package, kung saan ang disassembly ay ipinatupad sa WineDb debugger.
    • Na-update ang mga bahagi sa mga bagong bersyon: 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, LibTiff 4.7.0ml. 2, LibXslt 2.12.8 at Zlib 1.1.42.

Pinagmulan: opennet.ru

Bumili ng maaasahang pagho-host para sa mga site na may proteksyon ng DDoS, mga server ng VPS VDS πŸ”₯ Bumili ng maaasahang website hosting na may proteksyon ng DDoS, VPS VDS servers | ProHoster