Pagkahuman sa usa ka tuig nga pag-uswag ug 29 nga mga eksperimento nga bersyon, gipresentar ang usa ka lig-on nga pagpagawas sa bukas nga pagpatuman sa Win32 API - Wine 10.0, nga adunay kapin sa 6000 nga mga pagbag-o. Ang mga mahinungdanong kalampusan sa bag-ong bersyon naglakip sa bug-os nga suporta alang sa ARM64EC nga arkitektura, pag-scale sa mga screen nga adunay taas nga pixel density, paglakip sa Wayland driver pinaagi sa default, pagpatuman sa mga panel alang sa pag-set up sa screen ug joystick, usa ka alternatibong multimedia backend base sa FFmpeg, Bluetooth drayber, suporta sa Vulkan 1.4, kapabilidad sa pagsundog sa pagbalhin sa mga mode sa video.
5372 ka mga programa ang nakumpirma nga nagtrabaho sa husto sa Wine Windows (5336 usa ka tuig ang milabay, 5266 duha ka tuig ang milabay, 5156 tulo ka tuig ang milabay), laing 4435 ka mga programa (4397 usa ka tuig ang milabay, 4370 duha ka tuig ang milabay, 4312 tulo ka tuig ang milabay) mogana og maayo uban ang dugang nga mga setting ug mga external DLL. Ang mga programa sa 4020 (3943 usa ka tuig ang milabay, 3888 duha ka tuig ang milabay, 3813 tulo ka tuig ang milabay) adunay gagmay nga mga isyu nga dili makabalda sa batakang pagpaandar sa mga aplikasyon.
Pangunang mga inobasyon sa Wine 10.0:
- ARM64
- Ang bug-os nga suporta gihatag alang sa ARM64EC (ARM64 Emulation Compatible) nga arkitektura, ang lebel sa suporta sa Wine diin nakab-ot ang parity sa ARM64 nga arkitektura. Ang arkitektura sa ARM64EC gidisenyo aron pasimplehon ang pag-port sa mga aplikasyon nga orihinal nga gisulat para sa x64_86 system ngadto sa ARM64 system, ug gitugotan ang indibidwal nga x64_86 code modules nga modagan sa ARM64 environment gamit ang emulator.
- Ang bug-os nga suporta gipatuman para sa ARM64X PE file format, nga nagtugot kanimo sa paghiusa sa code para sa ARM64EC ug ARM64 nga mga arkitektura sa usa ka executable file. Aron matukod ang Alak sa format nga ARM64X, kinahanglan nimo nga i-install ang LLVM gikan sa Git (ang kinahanglan nga pag-andar ilakip sa pagpagawas sa LLVM 20) ug kung gipadagan ang "configure" nga script, ipiho ang kapilian nga "-enable-archs = arm64ec, aarch64". .
- Usa ka interface alang sa pagsundog sa 64-bit x86 nga mga sistema gipatuman. Kung gigamit ang ARM64EC, ang Wine mismo nagdagan sama sa kaniadto, ug ang pagsunud gigamit lamang sa x86-64 nga code sa aplikasyon. Ang librarya nga adunay emulator wala pa gilakip sa panguna nga pakete sa Wine, apan aron makadagan ang x86-64 code sa ARM64 nga palibot, mahimo nimong gamiton ang eksternal nga FEX emulator nga gitukod nga adunay suporta sa ARM64EC.
- Ang suporta sa ARM64 nagkinahanglan sa sistema nga mogamit og 4KB nga mga panid sa memorya sumala sa gikinahanglan sa ABI. Windows (nagdagan sa mga palibot nga adunay mga kernel Linux, ang paggamit sa 16K o 64K nga mga panid sa memorya wala pa gisuportahan).
- Mga graphic subsystem
- Gipatuman ang mas tukma nga scaling sa mga screen nga adunay taas nga pixel density (High-DPI). Gihatag ang suporta alang sa DPI Awareness mode aron maorganisar ang pagpakita sa mga aplikasyon sa mga screen nga adunay taas nga densidad sa pixel, nga gikonsiderar kung ang aplikasyon nagsuporta sa pagpahiangay sa mga pagbag-o sa DPI o dili (ang mga aplikasyon nga wala magtagad sa DPI awtomatikong gi-scale). Gidugang nga mga kapilian aron ma-override ang suporta sa High-DPI alang sa indibidwal nga mga aplikasyon o prefix sa Wine.
- Ang suporta alang sa Vulkan 1.4 nga detalye gidugang sa drayber alang sa Vulkan graphics API (Vulkan 9.0 gisuportahan sa Wine 1.3.272). Gidugang nga suporta alang sa mga extension sa Vulkan para sa pag-encode ug pag-decode sa video.
- Kung gigamit ang X11 backend, ang abilidad sa pag-render sa Vulkan child windows para sa mga aplikasyon nga naggamit sa ingon nga mga bintana aron ipakita ang 3D nga sulud gipatuman (kaniadto, ang ingon nga bahin magamit ra alang sa OpenGL).
- Ang suporta alang sa mekanismo sa pag-link sa font gidugang sa librarya sa GdiPlus, nga nagtugot kanimo sa paggamit sa daghang mga font kung magpakita sa teksto kung wala’y mga font nga gilain nga nagtabon sa tanan nga mga karakter nga makita sa teksto.
- Wayland
- Ang default nga configuration naglakip sa winewayland.drv driver, nga nagtugot sa Wine nga modagan sa mga palibot nga nakabase sa Wayland nga dili mogamit sa XWayland o X11 nga mga sangkap. Ang Wine maglunsad sa mga default nga aplikasyon direkta sa Wayland kung ang XWayland dili magamit; kung dili, ang XWayland mao ang gipalabi nga launcher. Aron mapugos ang Wayland, mahimo nimong gamiton ang DISPLAY environment variable o magdugang usa ka registry key pinaagi sa paghimo og file.reg file: Windows Registry Editor Version 5.00 [HKEY_CURRENT_USER\Software\Wine\Drivers] "Graphics" = "wayland" ug i-apply kini gamit ang command: $ WINEPREFIX = /path/to/prefix wine regedit /path/to/file.reg
- Gidugang nga suporta para sa OpenGL ug pixel buffers (pBuffer) sa winewayland.drv driver.
- Nasulbad ang mga isyu sa popup window positioning sa Wayland-based environment.
- Kung gigamit ang Wayland, gipatuman ang suporta alang sa awtomatikong pag-usab sa pagpindot samtang gikuptan ang mga yawe.
- Paghiusa sa desktop
- Gidugang ang usa ka eksperimento nga "modeset" nga mekanismo sa pagsundog nga nagtugot kanimo sa pagsundog sa pagbalhin sa mga mode sa video nga wala gyud usba ang mga setting sa screen. Ang visibility sa pagbag-o sa screen resolution nga walay pagbalhin sa video mode gihimo pinaagi sa pagpalapad ug pag-scale sa mga bintana.
- Usa ka bag-ong Desktop Control Panel applet (desk.cpl) ang gidugang uban ang pagpatuman sa usa ka interface alang sa pagdumala sa mga setting sa display (pananglitan, mahimo nimong usbon ang virtual nga resolusyon sa desktop o i-configure ang gisundog nga mga parameter sa display).
- Gidugang ang abilidad sa pag-reset sa mga setting sa screen sa mga default nga kantidad kung imposible nga mapasig-uli ang estado pagkahuman sa pagkahagsa sa proseso.
- Gidugang ang suporta para sa pag-disable sa pagpakita sa mga icon sa system tray (sa "HKLM\Software\Microsoft\WindowsAng \CurrentVersion\Policies\Explorer" kinahanglan nga mo-specify sa "NoTrayItemsDisplay=1").
- Gidugang ang suporta para sa pag-disable sa mga shell (Shell launcher) sa desktop mode (sa "HKLM\Software\Microsoft\WindowsAng \CurrentVersion\Policies\Explorer" kinahanglan magtino sa "NoDesktop=1").
- Direct3D
- Ang pag-render gamit ang OpenGL nanginahanglan na karon og suporta para sa GLSL 1.20, ingon man ang EXT_framebuffer_object ug ARB_texture_non_power_of_two extensions. Ang suporta alang sa daan nga ARB shader backend ug OffscreenRenderingMode nga setting gihunong na.
- Alang sa Direct3D 9 ug mas tigulang, gidugang ang usa ka fixed function graphics pipeline (ang daan nga Direct3D naghatag lamang og predefined graphics operations nga dili mausab), gipatuman gamit ang HLSL shader language ug gitugotan ang fixed function emulation sa dihang nag-render pinaagi sa Vulkan o OpenGL API.
- Ang pag-render gamit ang Vulkan naggamit sa mga extension sa Vulkan aron mabag-o ang kahimtang sa pipeline sa mga graphic, nga makunhuran ang pagkanganga sa mga dula.
- Gidugang ang alternatibong glsl-vkd3d backend para sa GLSL shaders, gamit ang vkd3d-shader.
- Naghatag inisyal nga suporta alang sa pag-compile sa mga epekto sa Direct3D gamit ang vkd3d-shader.
- Ang D3DX9 nga librarya nagpatuman sa abilidad sa pagmugna sa MIP textures (MipMap) kung nagkarga sa volumetric texture. Gidugang nga suporta alang sa 64bpp RGBA ug 48bpp RGB nga mga format sa representasyon sa kolor sa PNG nga mga hulagway, ingon man X8L8V8U8, A2W10V10U10, A8P8, V16U16 ug Q16W16V16U16 nga mga format.
- Tingog ug video
- Isip alternatibo sa GStreamer-based backend, usa ka bag-ong multimedia backend ang gipatuman, base sa paggamit sa FFmpeg ug angayan sa pagpadagan sa Media Foundation framework. Aron mahimo ang usa ka alternatibo nga backend, kinahanglan nimong ipiho ang "DisableGstByteStreamHandler=1" sa seksyon sa rehistro nga "HKCU\Software\Wine\MediaFoundation".
- Ang pagpatuman sa Media Foundation API gipauswag aron mas ma-accommodate ang mga aplikasyon nga nagdepende sa mga component sa demultiplexing ug decoding.
- Ang DirectMusic API adunay dugang nga suporta alang sa pagkarga sa mga MIDI file.
- Mga Input Devices
- Gidugang ang inisyal nga bersyon sa Bluetooth driver.
- Gidugang ang Joystick Control Panel applet (joy.cpl) uban ang pagpatuman sa mga setting alang sa joystick.
- Gihimo ang mga pagpaayo sa mga pointer device (touchpad, mouse) gamit ang HID (Human Interface Device) protocol. Gidugang ang mouhid.sys driver para sa mga HID device. Napatuman na ang hustong pag-parse sa mga composite input device, ug ang impormasyon bahin niini gipadala na karon sa Windows-mga aplikasyon, isip managlahing mga aparato.
- Alang sa X11 backend, gidugang ang suporta alang sa mga touch screen ug ang abilidad sa paggamit sa multi-touch mode pinaagi sa pagproseso sa WM_POINTER* nga mga mensahe (WM_POINTERENTER, WM_POINTERLEAVE, ug uban pa) gipatuman.
- Gipatuman ang pagbutang sa pipila ka mga internal nga istruktura sa user32 library sa gipaambit nga memorya, nga nagpataas sa performance ug nagpamenos sa load sa Wine Server.
- Ang Winex11 nagdugang suporta alang sa pagproseso sa XInput2 nga mga panghitabo nga may kalabotan sa indibidwal nga mga bintana.
- Gipatuman ang husto nga suporta alang sa mga keyboard nga adunay layout sa Dvorak.
- Kernel (mga interface sa kernel) Windows)
- Gidugang nga suporta alang sa pag-uswag sa pribilehiyo sa proseso (usa ka proseso nga una nga nagdagan ingon usa ka sukaranan nga tiggamit mahimong hatagan mga pribilehiyo sa tagdumala). Sa paghimo sa mga proseso sa server (msi action server), ingon man usab sa mga proseso nga nagtawag sa RtlCreateUserProcess() ug CreateProcessInternal() functions, ang limitadong token sa administrador gipagana pinaagi sa default.
- Kung nagkuha ug kasayuran bahin sa mga label sa disk, kung mahimo, ang pag-access sa mga serbisyo sa sistema pinaagi sa DBus gigamit na karon, imbis nga sulayan nga direkta nga ma-access ang aparato.
- Ang mekanismo sa one-way interprocess communication (IPC) sa Mailslots karon direktang gipatuman sa Wine server, nga nagtugot sa hingpit nga suporta sa semantiko. Windows.
- Gipatuman ang paghulat alang sa serial port nga mga panghitabo sa asynchronous mode.
- Gidugang ang bug-os nga suporta alang sa mga extension sa processor sa XSTATE sa mga konteksto sa thread, nga gitugotan ang paggamit sa bag-ong mga extension sa vector sama sa AVX-512.
- Gi-embed nga mga Aplikasyon
- Ang input data processing engine nga gigamit sa cmd.exe command interpreter gisulat na usab. Gidugang nga suporta alang sa "||" nga mga operasyon sa cmd.exe Ug "&&".
- Ang findstr utility midugang og suporta para sa regular nga mga ekspresyon ug case-insensitive nga pagpangita.
- Ang abilidad sa pagparehistro sa ARM32EC modules gidugang sa regsvr32 ug rundll64 utilities.
- Gidugang nga mga utilities: pag-sort alang sa pag-sort sa input data, fc alang sa pagtandi sa mga file ug asa alang sa pagpangita sa mga file.
- Ang wmic nga aplikasyon nagpatuman sa usa ka interactive nga paagi sa operasyon.
- Nagdugang ang Explorer og opsyonal nga suporta para sa start menu ug toolbar. Gipaandar ang paglansad sa explorer.exe nga adunay pagkunhod sa mga katungod sa pag-access.
- Mga Himan sa Pag-uswag
- Gidugang ang "-marm64x" nga kapilian sa winebuild aron makamugna ang ARM64X hybrid nga mga librarya.
- Gidugang ang "-marm64x" nga kapilian sa winegcc aron mahimo ang pagtukod alang sa ARM64X.
- Ang mga file nga namugna gamit ang Interface Definition Language (IDL) naggamit sa mga component nga hingpit nga nagsuporta sa pagpatuman sa interpreted mode.
- Ang suporta alang sa paghimo og mga tipo nga librarya (TypeLib) sa daan nga format (SLTG) gidugang sa IDL (Interface Definition Language) compiler.
- Ang utility sa winedump nagdugang suporta alang sa pagtipig sa mga dump sa minidump nga mga lamesa, impormasyon sa eksepsiyon sa C++, ug mga kapanguhaan sa typelib.
- miscellanea
- Gipauswag nga suporta alang sa Diffie-Hellman (DH) key exchange protocol. Gidugang ang abilidad sa pag-configure ug pagdawat sa mga parameter sa DH. Gipatuman nga mga tigdumala alang sa paghimo og mga parisan sa publiko ug pribado nga mga yawe.
- Ang paggamit sa incremental padding OAEP (Optimal Asymmetric Encryption Padding) kauban ang RSA algorithm gihatag.
- Ang DirectPlay API nagsuporta sa mga sesyon sa network.
- Gipauswag nga pagdumala sa asynchronous input/output states kung nagtrabaho sa WoW64 (64-bit) mode Windows-sa-Windows), nga nagtugot kanimo sa pagpadagan sa 32-bit Windows-mga aplikasyon sa 64-bit nga mga sistema sa Unix.
- Gidugang ang suporta para sa pagkarga sa mga ODBC driver para sa DBMS nga gi-compile para sa Windows.
- Alang sa plataporma sa ARM, ang hingpit nga suporta alang sa RPC/COM, C++ RTTI (Run-Time Type Information) ug C++ nga mga eksepsiyon gipatuman.
- Sa C runtime, ang mga function sa ANSI nagpatuman sa suporta alang sa pag-encode sa UTF-8.
- Ang mga kapabilidad sa MSHTML nga makina gipalapdan. Gidugang nga suporta alang sa mga prototype ug mga tigtukod sa butang. Usa ka bag-ong interface nga nagbugkos sa butang alang sa MSHTML gidugang sa makina sa JavaScript. Ang MSHTML built-in nga mga gimbuhaton nakabig ngadto sa balido nga JavaScript nga mga butang. Gipauswag nga pagkolekta sa basura sa JavaScript aron matabonan ang tanan nga konteksto sa pagpatuman sa script sa usa ka hilo. Gidugang nga suporta alang sa ArrayBuffer ug DataView JavaScript nga mga butang.
- Ang suporta alang sa static nga pagtuki gamit ang Clang ug JUnit test reports gidugang sa Gitlab-based nga padayon nga integration system.
- Ang Capstone 5.0.3 librarya gitukod sa package, diin ang disassembly gipatuman sa WineDb debugger.
- Gi-update ang mga sangkap sa bag-ong 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.0. 2, LibXslt 2.12.8 ug Zlib 1.1.42.
Source: opennet.ru
