Stabilt slÀpp av Wine 10.0

Efter ett Ärs utveckling och 29 experimentella versioner har den stabila releasen av den öppna implementationen av Win32 API - Wine 10.0, presenterats, som inkluderar mer Àn 6000 förÀndringar. Bland de viktigaste framstegen i den nya versionen mÀrks fullstÀndig support för ARM64EC-arkitekturen, skalning pÄ skÀrmar med hög pixeltÀthet, en standard Wayland-drivrutin, implementering av paneler för skÀrm- och joystickinstÀllningar, en alternativ multimediabackend baserad pÄ FFmpeg, Bluetooth-drivrutin, stöd för Vulkan 1.4 och möjlighet att emulera byten av videolÀgen.

I Wine bekrÀftas det att 5372 Windows-program fungerar felfritt (för ett Är sedan 5336, för tvÄ Är sedan 5266, för tre Är sedan 5156), ytterligare 4435 program (för ett Är sedan 4397, för tvÄ Är sedan 4370, för tre Är sedan 4312) fungerar utmÀrkt med ytterligare instÀllningar och externa DLL-filer. För 4020 program (för ett Är sedan 3943, för tvÄ Är sedan 3888, för tre Är sedan 3813) finns det vissa mindre problem, men de hindrar inte anvÀndningen av de grundlÀggande funktionerna i applikationerna.

Nyckelinnovationer i Wine 10.0:

  • ARM64
    • FullstĂ€ndig stöd för ARM64EC-arkitekturen (ARM64 Emulation Compatible) har sĂ€kerstĂ€llts, med vilken stödgraden i Wine har nĂ„tt paritet med ARM64-arkitekturen. ARM64EC-arkitekturen har utvecklats för att förenkla porteringen av applikationer som ursprungligen skrivits för x86_64-system till ARM64-system och möjliggör körning av separata moduler med x86_64-kod i ett ARM64-miljö med hjĂ€lp av en emulator.
    • FullstĂ€ndig stöd för PE-filer i formatet ARM64X har implementerats, vilket tillĂ„ter att kombinera kod för bĂ„de ARM64EC och ARM64-arkitekturer i en och samma körbara fil. För att bygga Wine i ARM64X-formatet mĂ„ste LLVM installeras frĂ„n Git (den nödvĂ€ndiga funktionen kommer att ingĂ„ i LLVM 20-versionen) och vid körning av skriptet 'configure' anges alternativet '—enable-archs=arm64ec,aarch64'.
    • Ett grĂ€nssnitt för emulering av 64-bitars system x86 har implementerats. Vid anvĂ€ndning av ARM64EC utförs Wine som det Ă€r, och emuleringen tillĂ€mpas endast för koden för x86-64-applikationer. Emuleringsbiblioteket har Ă€nnu inte inkluderats i huvudsammansĂ€ttningen av Wine, men för att köra x86-64-kod i ARM64-miljö kan en extern emulator FEX anvĂ€ndas, som har byggts med stöd för ARM64EC.
    • För att stödja ARM64 krĂ€vs att systemet har minnessidor pĂ„ 4 KB, vilket krĂ€vs av ABI Windows (körning i miljöer med Linux-kĂ€rnor som anvĂ€nder minnessidor pĂ„ 16K eller 64K stöds Ă€nnu inte).
  • Grafiksubsystem
    • Mer exakt skalning har implementerats pĂ„ skĂ€rmar med hög pixeltĂ€thet (High-DPI). Stöd för DPI Awareness-lĂ€get har sĂ€kerstĂ€llts för att organisera presentationen av applikationer pĂ„ skĂ€rmar med hög pixeltĂ€thet, beroende pĂ„ om applikationen stödjer anpassning till förĂ€ndringar i DPI eller inte (applikationer som inte tar hĂ€nsyn till DPI skalas automatiskt). Alternativ har lagts till för att Ă„sidosĂ€tta stödet för High-DPI i förhĂ„llande till specifika applikationer eller Wine-prefix.
    • Stöd för Vulkan-specifikationen 1.4 har lagts till i drivrutinen för grafik-API:et Vulkan (i Wine 9.0 stödde man Vulkan 1.3.272). Stöd för Vulkan-tillĂ€gg för kodning och avkodning av video har lagts till.
    • Vid anvĂ€ndning av X11-backend har möjligheten att rendera Vulkan-barnfönster för applikationer som anvĂ€nder sĂ„dana fönster för att visa 3D-innehĂ„ll implementerats (tidigare var denna möjlighet endast tillgĂ€nglig för OpenGL).
    • Stöd för mekanismen för teckensnittslĂ€nkning har lagts till i biblioteket GdiPlus, vilket gör det möjligt att anvĂ€nda flera teckensnitt vid visning av text om inget av teckensnitten ensam tĂ€cker alla förekommande tecken i texten.
  • Wayland
    • I standardkonfigurationen har drivrutinen winewayland.drv aktiverats, vilket möjliggör att anvĂ€nda Wine i miljöer baserade pĂ„ Wayland-protokollet utan att anvĂ€nda XWayland och komponenter frĂ„n X11. Wine kör applikationer som standard direkt pĂ„ Wayland endast om XWayland inte Ă€r tillgĂ€ngligt; annars förblir körningen med hjĂ€lp av XWayland prioriterad. För att tvĂ„ngsaktivera Wayland kan miljövariabeln DISPLAY anvĂ€ndas, eller sĂ„ kan en nyckel lĂ€ggas till i registret genom att skapa en fil file.reg: Windows Registry Editor Version 5.00 [HKEY_CURRENT_USER\Software\Wine\Drivers] "Graphics"="wayland" och anvĂ€nda följande kommando: $ WINEPREFIX=\/sökvĂ€g\/till\/prefix wine regedit \/sökvĂ€g\/till\/file.reg
    • Stöd för OpenGL och pixelbuffrar (pBuffer) har lagts till i drivrutinen winewayland.drv.
    • Problem med positioneringen av popup-fönster i Wayland-baserade miljöer har Ă„tgĂ€rdats.
    • Vid anvĂ€ndning av Wayland har stöd för automatisk upprepning av tangenttryckningar vid hĂ„llning av tangenter realiserats.
  • Integration med skrivbordet
    • En experimentell mekanism för "modesetting"-emulering har lagts till, vilket gör det möjligt att emulera vĂ€xling av videolĂ€gen utan att faktiskt Ă€ndra skĂ€rminstĂ€llningarna. Synligheten av skĂ€rmens upplösning utan att vĂ€xla videolĂ€ge skapas genom en förlĂ€ngning och skalning av fönster.
    • En ny applet för Desktop Control Panel (desk.cpl) har lagts till med ett grĂ€nssnitt för att hantera skĂ€rminstĂ€llningar (till exempel kan man Ă€ndra den virtuella skrivbordsupplösningen eller stĂ€lla in emulerade skĂ€rmparametrar).
    • Möjligheten att Ă„terstĂ€lla skĂ€rminstĂ€llningarna till standardvĂ€rdena har lagts till i fall av en oförmĂ„ga att Ă„terstĂ€lla tillstĂ„ndet efter ett kraschat program.
    • Stöd för att stĂ€nga av visningen av ikoner i systemfĂ€ltet har lagts till (i "HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer" bör "NoTrayItemsDisplay=1" anges).
    • Stöd för att stĂ€nga av skal (Shell launcher) i skrivbordslĂ€ge har lagts till (i "HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer" bör "NoDesktop=1" anges).
  • Direct3D
    • För rendering med OpenGL krĂ€vs numera stöd för GLSL 1.20 samt för tillĂ€ggen EXT_framebuffer_object och ARB_texture_non_power_of_two. Stöd för den gamla backend som heter ARB shader och instĂ€llningar för OffscreenRenderingMode har upphört.
    • För Direct3D 9 och Ă€ldre versioner har en grafisk pipeline med fasta funktioner lagts till (i Ă€ldre Direct3D erbjöds endast fördefinierade grafiska operationer som inte kunde Ă€ndras), implementerad med hjĂ€lp av sprĂ„k för shader HLSL och som gör det möjligt att emulera fasta funktioner vid rendering genom API Vulkan eller OpenGL.
    • Vid rendering med Vulkan har Vulkan-tillĂ€gg anvĂ€nts för att dynamiskt Ă€ndra tillstĂ„ndet i den grafiska pipelinen, vilket gör att spelens förseningar kan minskas.
    • En alternativ backend glsl-vkd3d för GLSL-shaders har lagts till, som anvĂ€nder vkd3d-shader.
    • Inledande stöd för kompilering av Direct3D-effekter har tillhandahĂ„llits med anvĂ€ndning av vkd3d-shader.
    • I D3DX9-biblioteket har möjligheten att generera MIP-texturer (MipMap) vid inlĂ€sning av volumetriska texturer implementerats. Stöd för fĂ€rgvisningsformat 64bpp RGBA och 48bpp RGB i PNG-bilder har lagts till, samt formaten X8L8V8U8, A2W10V10U10, A8P8, V16U16 och Q16W16V16U16.
  • Ljud och video
    • En ny multimedia-backend baserad pĂ„ anvĂ€ndning av FFmpeg, och som Ă€r anvĂ€ndbar för att sĂ€kerstĂ€lla driften av Media Foundation-ramverket, har implementerats som ett alternativ till backend baserad pĂ„ GStreamer. För att aktivera den alternativa backend i registeravsnittet "HKCU\Software\Wine\MediaFoundation" bör "DisableGstByteStreamHandler=1" anges.
    • Implementeringen av API Media Foundation har förbĂ€ttrats och passar nu bĂ€ttre med program som Ă€r beroende av demuxing- och dekoderkomponenter.
    • I API DirectMusic har stöd för uppladdning av MIDI-filer lagts till.
  • Inmatningsenheter
    • En tidig version av Bluetooth-drivrutinen har lagts till.
    • Applet Joystick Control Panel (joy.cpl) har lagts till med implementering av instĂ€llningar för joystick.
    • FörbĂ€ttringar gĂ€llande pekdon (touchpads, möss) som anvĂ€nder HID-protokollet (Human Interface Device) har genomförts. Drivrutinen mouhid.sys för HID-enheter har lagts till. Korrekt analys av sammansatta inmatningsenheter har implementerats och information om dem överförs till Windows-applikationer som separata enheter.
    • Stöd för pekskĂ€rmar har lagts till i backend X11, och möjligheten att anvĂ€nda flervalslĂ€ge genom bearbetning av WM_POINTER*-meddelanden (WM_POINTERENTER, WM_POINTERLEAVE osv.) har implementerats.
    • Vissa interna strukturer i biblioteket user32 har placerats i delat minne, vilket har förbĂ€ttrat prestanda och minskat belastningen pĂ„ Wine Server.
    • I winex11 har stöd för bearbetning av XInput2-hĂ€ndelser i relation till individuella fönster lagts till.
    • Korrekt stöd för tangentbord med Dvorak-layout har implementerats.
  • KĂ€rnan (Windows kernelgrĂ€nssnitt)
    • Stöd för att höja processers privilegier har lagts till (en process som ursprungligen körs under en vanlig anvĂ€ndare kan ges administratörsprivilegier). Vid skapandet av serverprocesser (msi action server) samt processer som anropar funktionerna RtlCreateUserProcess() och CreateProcessInternal() anvĂ€nds som standard en begrĂ€nsad administratörstoken.
    • Vid hĂ€mtning av information om disketiketter anvĂ€nds nu, om möjligt, Ă„tkomst till systemtjĂ€nster via DBus istĂ€llet för att försöka fĂ„ direkt Ă„tkomst till enheten.
    • En enkelriktad mekanism för interprocesskommunikation (IPC) Mailslots har nu genomförts direkt i Wine-servern, vilket möjliggör full stöd för Windows-semantik.
    • Stöd för att vĂ€nta pĂ„ hĂ€ndelser frĂ„n seriella portar i asynkront lĂ€ge har implementerats.
    • Fullt stöd för processorarkitektursextensioner XSTATE i trĂ„darnas kontexter har lagts till, vilket möjliggör anvĂ€ndning av nya vektorarkitektursextensioner som AVX-512.
  • Inbyggda applikationer
    • Inmatningshanteraren som anvĂ€nds i kommandotolkaren cmd.exe har skrivits om. Stöd för operationerna ‘||’ och ‘&&’ har lagts till i cmd.exe.
    • I verktyget findstr har stöd för reguljĂ€ra uttryck och sökning utan att ta hĂ€nsyn till stora/smĂ„ bokstĂ€ver lagts till.
    • I verktygen regsvr32 och rundll32 har möjligheten att registrera ARM64EC-moduler lagts till.
    • Verktyg har lagts till: sort för att sortera ingĂ„ngdata, fc för att jĂ€mföra filer och where för att söka efter filer.
    • I applikationen wmic har en interaktiv arbetslĂ€get implementerats.
    • I Explorer har valfritt stöd för startmenyn och verktygsfĂ€ltet lagts till. Explorer.exe körs med begrĂ€nsade behörigheter.
  • Utvecklingsverktyg
    • I winebuild har alternativet «-marm64x» lagts till för att generera hybrida ARM64X-bibliotek.
    • I winegcc har alternativet «-marm64x» lagts till, vilket gör att kompilering för ARM64X stöds.
    • I filer som genereras med hjĂ€lp av grĂ€nssnittssprĂ„ket IDL (Interface Definition Language) anvĂ€nds komponenter som helt stöder exekvering i tolkningslĂ€ge.
    • I kompilatorn för grĂ€nssnittsbeskrivningssprĂ„ket IDL (Interface Definition Language) har stöd för att generera typbibliotek (TypeLib) i det gamla formatet (SLTG) lagts till.
    • I verktyget winedump har stöd för att spara minidump-tabeller, C++ undantagsinformation och typbibliotekresurser lagts till.
  • Olika
    • Stödet för Diffie-Hellman nyckelutbytesprotokollet (DH) har förbĂ€ttrats. Möjligheten att konfigurera och erhĂ„lla DH-parametrar har lagts till. Hanterare för att skapa par av offentliga och privata nycklar har implementerats.
    • AnvĂ€ndning av tillĂ€ggsfyllning OAEP (Optimal Asymmetric Encryption Padding) tillsammans med RSA-algoritmen har sĂ€kerstĂ€llts.
    • I API:et DirectPlay har stöd för nĂ€tverkssessioner implementerats.
    • Bearbetning av tillstĂ„nd för asynkron in- och utdata har förbĂ€ttrats nĂ€r man arbetar i WoW64-lĂ€ge (64-bitars Windows-on-Windows), vilket gör att 32-bitars Windows-program kan köras i 64-bitars Unix-system.
    • Stöd för att ladda ODBC-drivrutiner till databashanterare som har byggts för Windows har lagts till.
    • För ARM-plattformen har fullstĂ€ndigt stöd för RPC/COM, C++ RTTI (Run-Time Type Information) och C++ undantag implementerats.
    • I C runtime har stöd för UTF-8-kodning i ANSI-funktioner implementerats.
    • Möjligheterna i MSHTML-motorn har utvidgats. Stöd för prototyper och objektkonstruktörer har lagts till. En ny bindningsgrĂ€nssnitt för MSHTML har lagts till i JavaScript-motorn. Inbyggda MSHTML-funktioner har omvandlats till korrekta JavaScript-objekt. SkrĂ€psamlaren för JavaScript har förbĂ€ttrats och tĂ€cker nu alla körningskontexter för skriptet i en trĂ„d. Stöd för JavaScript-objekt ArrayBuffer och DataView har lagts till.
    • I den kontinuerliga integrationssystemet baserat pĂ„ GitLab har stöd för statisk analys med Clang och rapporter om JUnit-testresultat lagts till.
    • Biblioteket Capstone 5.0.3 har inkluderats, via vilket avkodning i debuggern WineDb har implementerats.
    • Komponenterna har uppdaterats till nya versioner: 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, LibXml2 2.12.8, LibXslt 1.1.42 och Zlib 1.3.1.

KĂ€lla: opennet.ru

Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster