Stabiele weergawe van Wine 9.0

Na 'n jaar van ontwikkeling en 26 eksperimentele weergawes, is 'n stabiele vrystelling van die oop implementering van die Win32 API - Wine 9.0, wat meer as 7000 64 veranderinge ingesluit het, aangebied. Die sleutelprestasies in die nuwe weergawe sluit in die implementering van die WoW32-argitektuur om 64-bis-programme in 'n 64-bis-omgewing te laat loop, bestuurderintegrasie om Wayland te ondersteun, ondersteuning vir die ARMXNUMX-argitektuur, implementering van die DirectMusic API en ondersteuning vir slimkaarte.

5336 (5266 'n jaar gelede, 5156 twee jaar gelede, 5049 drie jaar gelede) programme is bevestig om behoorlik in Wine te werk. WindowsNog 4 397 programme (4 370 'n jaar gelede, 4 312 twee jaar gelede, 4 227 drie jaar gelede) werk goed met bykomende instellings en eksterne DLL's. 3 943 programme (3 888 'n jaar gelede, 3 813 twee jaar gelede, 3 703 drie jaar gelede) het geringe probleme wat nie inmeng met die basiese funksionaliteit van die toepassings nie.

Sleutelinnovasies in Wine 9.0:

  • Die winewayland.drv-drywer is bygevoeg, wat Wine toelaat om in Wayland-gebaseerde omgewings gebruik te word sonder die gebruik van XWayland- of X11-komponente. Hierdie ontwikkeling is daarop gemik om 'n suiwer Wayland-omgewing met bekendstellingsondersteuning te bied. Windows- toepassings wat nie X11-verwante pakkette benodig om te installeer nie, wat hoër werkverrigting en responsiwiteit in speletjies moontlik maak deur onnodige lae uit te skakel. Die gebruik van 'n suiwer Wayland-omgewing vir Wine elimineer ook sekuriteitskwessies inherent aan X11 (byvoorbeeld, onbetroubare X11-speletjies kan ander toepassings bespied omdat die X11-protokol toegang tot alle invoergebeurtenisse toelaat en toetsaanslagvervanging uitvoer).

    Die drywer is gemerk as eksperimenteel en onder ontwikkeling, maar dit het nietemin reeds ondersteuning vir baie kenmerke, soos vensterbestuur, werk met veelvuldige monitors, ondersteuning vir skaaluitset op hoë-pixeldigtheid (hoë-DPI) skerms, werk met relatiewe koördinate by die dop van muisbeweging en ondersteuning vir die Vulkan grafiese API. By verstek is die bestuurder nie aktief nie en om dit te aktiveer moet jy "wayland" by die registerparameter "HKCU\Software\Wine\Drivers" voeg en seker maak dat die DISPLAY omgewingsveranderlike nie gestel is nie: wine reg.exe voeg HKCU\ \Software\\Wine\\Drivers /v Graphics /d x11,wayland

  • Alle modules is omgeskakel na die NT-stelseloproepkoppelvlak, eerder as om direkte oproepe tussen die PE- en Unix-lae te maak, wat die voltooiing van baie jare se werk merk om alle DLL's om te skakel om die PE (Portable Executable) uitvoerbare lêerformaat te gebruik.
  • Die ontwikkeling van die WoW64-laag (64-bis) het voortgeduur Windows-aan-Windows), wat jou toelaat om 32-bis te laat loop Windows- toepassings op 64-bis Unix-stelsels. Alle modules wat toegang tot Unix-biblioteke verkry, gebruik WoW64-stelseloproepvertalers (thunks), wat 32-bis-modules in PE-formaat toelaat om toegang tot 64-bis Unix-biblioteke te verkry.

    Die nuwe WoW64-bekendstellingsmodus is verbeter, wat 32-bis-kode toelaat om binne 'n 64-bis-proses te loop (in die ou WoW64-modus het 32-bis-toepassings in 32-bis Unix-prosesse geloop). Ondersteuning vir die gebruik van die nuwe WoW64-modus op die platform is bygevoeg. macOSAangesien die nuwe WoW64-modus 'n paar klein foute het, soos 'n gebrek aan 16-bis-ondersteuning en verminderde OpenGL-werkverrigting as gevolg van die gebrek aan ondersteuning vir die ARB_buffer_storage-uitbreiding, is dit nog nie standaard geaktiveer nie en vereis dit bou met die "--enable-archs=i386,x86_64"-opsie in die konfigurasieskrip.

  • Die vermoë om bestaande uitvoerbare lêers uit te voer, is bygevoeg. Windows Op stelsels met die ARM64-argitektuur. Wine kan nou gebou word vir die ARM64EC (ARM64 Emulation Compatible) ABI, en ARM64EC-modules kan gelaai word. Hierdie modules word gebruik om die oordrag van toepassings wat oorspronklik vir die x86_64-argitektuur geskryf is, na ARM64-stelsels te vereenvoudig deur die uitvoering van individuele x86_64-kodemodules in die ARM64-omgewing met behulp van 'n emulator moontlik te maak. Ondersteuning is bygevoeg vir die ARM64X PE-lêerformaat, wat dit moontlik maak om 'n enkele uitvoerbare lêer in beide x64/Arm64EC- en ARM64-prosesse te laai. 'n Koppelvlak vir die emulering van 32-bis x86-stelsels is geïmplementeer, maar die emulatorbiblioteek is nog nie in die hoof Wine-verspreiding ingesluit nie (die eksterne FEX-emulator kan gebruik word om x86-kode in die ARM64-omgewing uit te voer).
  • Grafiese substelsel
    • Die PostScript-drywer is herontwerp om spoellêers in die formaat te ondersteun Windows, wat data oor drukwerk stoor. Direkte oproepe na die drywer vanaf die Unix-omgewing word uitgesluit.
    • Donkermodusondersteuning is by WinRT-temas gevoeg. 'n Instelling is by WineCfg gevoeg om donker koppelvlakontwerp moontlik te maak.
    • Die bestuurder vir die Vulkan-grafiese API het ondersteuning bygevoeg vir die Vulkan 1.3.272-spesifikasie (8.0 is in Wine 1.3.237 ondersteun).
    • Die funksies van die GdiPlus-biblioteek is geoptimaliseer, wat verhoogde grafiese werkverrigting moontlik maak.
  • Direct3D
    • Ontleding van 'n multi-draad-opdragstroom word opgeskort wanneer daar geen weergawe-opdragte verwerk word nie, wat dit moontlik maak om energieverbruik te verminder tot die vlak van enkeldraadverwerking wanneer programme uitgevoer word wat nie die hele opdragstroombandwydte beset nie.
    • Direct3D 10 sluit ondersteuning vir bykomende effekte in.
    • Het werkverrigtingoptimalisasies aan die WineD3D-kode en backend gemaak met behulp van die Vulkan-grafiese API.
    • Die Vulkan API-gebaseerde weergawekode kontroleer nou watter vermoëns die toestel ondersteun en vertel die toepassing watter vlak van Direct3D-funksionaliteit beskikbaar is.
    • Die D3DXFillTextureTX en D3DXFillCubeTextureTX funksies is geïmplementeer.
    • Die klassieke OpenGL ARB-skadu-agterkant het ondersteuning bygevoeg vir die definisie van skaduwees met die ARB_fragment_program_shadow-uitbreiding.
    • D3DXLoadMeshHierarchyFromX en soortgelyke funksies het ondersteuning bygevoeg vir die laai van gebruikersdata met behulp van die ID3DXLoadUserData-koppelvlak.
  • Klank en video
    • 'n Aanvanklike implementering van die DirectMusic API is voorgestel. Bygevoeg ondersteuning vir versamelings, instrumente en klankmonsters in die SoundFont-formaat. Bygevoeg ondersteuning vir die Doppler effek. Toetse is geïmplementeer om die korrekte implementering te verifieer wanneer die dmime sequencer en die dmsynth MIDI sintetiseerder gebruik word.
    • Die FluidSynth-biblioteek is in die DirectMusic API ingebou vir gebruik.
    • Geïmplementeerde ondersteuning vir die laai van klankfonte (SoundFont - formate vir voorbeeldgebaseerde sintese wat gebruik word om MIDI-lêers te speel) in die DLS1- en DLS2-formate, sowel as in die SF2-formaat wat gebruik word in Linux.
    • Bygevoeg die vermoë om MIDI-inhoud te speel met behulp van die dmsynth-biblioteek, met behulp van die FluidSynth-sagteware-sintetiseerder en die DirectSound API vir oudio-uitvoer.
    • Bygevoeg 'n dekodeerder vir video in die Indeo IV50 video kodek formaat.
  • Direct
    • Die DMO (DirectX Media Object) komponent met 'n WMV-formaat dekodeerder is geïmplementeer (Windows Mediavideo).
    • Bygevoeg 'n oudio-opname filter (DirectShow Audio Capture Filter).
    • Benewens oudiostrome, ondersteun die MPEG-1 Stream Splitter (DirectShow MPEG-1 Stream Splitter) nou videostrome en diensstrome.
    • 'n Filter vir die dekodering van video in MPEG-1-formaat (DirectShow MPEG-1 Video-dekodeerder) is geïmplementeer.
  • Toevoertoestelle
    • DirectInput ondersteun aksiekartering, wat jou toelaat om knoppies op 'n speletjiebeheerder aan spesifieke aksies in speletjies te bind.
  • Desktop integrasie
    • Bindings is na die hoofgebruiker-omgewing uitgevoer, waardeur toepassings wat onder Wine loop, as protokolhanteerders genoem kan word wanneer 'n URL oopgemaak word (byvoorbeeld deur spotify.exe te begin wanneer skakels soos "spotify:user:spotify:playlist:848218482355482821" oopgemaak word).
    • Implementeer die onttrekking van EDID (Extended Display Identification Data) data met inligting oor die parameters van die gekoppelde monitor, soos die naam en model van die toestel.
    • Dit is moontlik om 'n lessenaarvenster wat in volskermmodus ontplooi is toe te maak deur die "Verlaat lessenaar"-knoppie in die "Begin"-kieslys te gebruik.
  • Internasionalisering
    • Ondersteuning vir IME's (Invoermetode-redigeerders) is uitgebrei. Werk is gedoen om versoenbaarheid met inheemse programme te verseker. Windows IME-implementerings en verbeterde integrasie met Linux EMI
    • Generering van locale databasisse in locale.nls formaat vanaf die Unicode CLDR (Unicode Common Locale Data Repository) databasis weergawe 44 is voorsien. Ondersteuning vir bykomende locales bew-ID, blo-BJ, csw-CA, ie-EE, mic-CA , prg-PL is bygevoeg , skr-PK, tyv-RU, vmw-MZ, xnr-IN en za-CN.
    • Die koppelvlak is in Georgies vertaal. Volledige vertalings word vir 16 tale verskaf, en gedeeltelike vertalings vir 31 tale.
    • Unicode-karaktertabelle is opgedateer na standaard weergawe 15.1.0. Die tydsone-databasis is opgedateer.
  • Kern (kernkoppelvlakke Windows)
    • Soos die uitgereikte weergawe Windows by verstek gedefinieer Windows 10.
    • Vir uitvoerbare lêers in die PE-formaat word ondersteuning vir adresruimte-randomisering (ASLR) geïmplementeer, maar die adresse vir die laai van kode in die geheue is nog nie heeltemal ewekansig nie.
    • Ondersteuning vir 'n swak gefragmenteerde hoop (LFH, Low Fragmentation Heap) is geïmplementeer, wat die werkverrigting van geheuetoewysingsbedrywighede verhoog het.
    • Ondersteuning vir geheuereservering (plekhouer) is by die virtuele geheue-toewysingsmeganisme gevoeg, wat 'n toepassing toelaat om 'n spesifieke area van virtuele geheue vir toekomstige gebruik te reserveer.
    • 64-bis laaiers (laaier en preloader) van uitvoerbare lêers en biblioteke word saamgestel in die PIE (Position-Independent Executables) formaat om 'n deel van die 32-bis adresspasie vry te maak.
    • Korrekte stapelontwikkel word voorsien vir NT-stelseloproepe en gebruikersterugoproepe.
  • Netwerk funksies
    • Die MSHTML-enjin ondersteun die "Cycle Collection"-vullisversamelingsmeganisme.
    • MSHTML het ondersteuning bygevoeg vir sinchroniese verwerking van XMLHttpRequest-versoeke.
    • jscript.dll voeg ondersteuning by vir 'n WeakMap-voorwerp om te werk met 'n versameling sleutel/waarde-pare waarin die sleutel 'n voorwerp is wat 'n arbitrêre waarde daaraan kan hê. Implementeer WeakMap.get(), WeakMap.delete(), WeakMap.clear() en WeakMap.has() metodes.
    • Die Gecko-blaaier-enjin is opgedateer na weergawe 2.47.4.
    • Ondersteuning vir kennisgewings oor veranderinge in die toestand van die netwerkkoppelvlak is geïmplementeer.
  • Kriptografie en sekuriteit
    • Ondersteuning vir slimkaarte is by die Winscard.dll-biblioteek gevoeg, geïmplementeer deur die PCSClite-stelselbiblioteek.
    • BCrypt het ondersteuning bygevoeg vir die Diffie-Hellman-sleuteluitruilprotokol.
    • Die Negotiate-pakket is geïmplementeer en verskaf 'n laag vir die gebruik van die SSPI (Security Support Provider Interface) koppelvlak om toegang tot SSP (Security Support Provider) verskaffers te verkry.
  • Ingebedde toepassings
    • Die Wine Debugger (winedbg) gebruik die Zydis-biblioteek om X86-masjieninstruksies uitmekaar te haal.
    • Die WineCfg-koppelvlak is opgedateer om ouer weergawes op 64-bis-platforms te ondersteun. Windows (voor XP), wat jou toelaat om ouer toepassings met WoW64-modus te laat loop.
    • Alle ingeboude grafiese toepassings vertoon nou foutinligting in 'n aparte dialoog, in plaas daarvan om dit in die konsole te vertoon.
    • Die systeminfo-program bied die vertoon van inligting uit die WMI-databasis (Windows Bestuursinstrumentasie).
    • Bygevoeg klist-toepassing om Kerberos-kaartjies te vertoon.
    • Die taakkill-toepassing implementeer die vermoë om kinderprosesse kragtig te beëindig.
    • Bygevoeg "/masjien" opsie by die begin nut om die argitektuur te kies wat gebruik word wanneer hibriede uitvoerbare programme uitgevoer word wat x86 en ARM ondersteun.
    • Die meeste van die funksionaliteit van die taaklys-program is geïmplementeer.
    • Het 'n basiese implementering van die findstr-toepassing bygevoeg.
  • Ontwikkelingsgereedskap
    • Die WineDump-hulpprogram het die vermoë om die inhoud van registerlêers te vertoon. Windows (REGF-formaat), sowel as die vertoon van data vir alle argitekture (x86/ARM64) wat in hibriede PE-lêers ondersteun word.
    • Die IDL-samesteller het ondersteuning bygevoeg vir die "saamstelbare", "default_overload", "deprecated" en "protected" eienskappe.
    • Verwyder libwine.so, wat in Wine 6.0 opgeskort is en lankal nie meer in Wine gebruik word nie. Programme in ELF-formaat gebou in ouer weergawes van Wine (5.0 en ouer) met libwine.so vereis herbou om in Wine 9.0 te loop.
  • Ingeboude biblioteke en eksterne afhanklikhede
    • Die biblioteke FluidSynth 2.3.3, Musl 1.2.3 (slegs wiskundige funksies) en Zydis 4.0.0 is in die pakket geïntegreer.
    • Komponente Vkd3d 1.10, Faudio 23.12, OpenLDAP 2.5.16, LCMS2 2.15, LibMPG123 1.32.2, LibPng 1.6.40, LibTiff 4.6.0, LibXml2 2.11.5, LibXslts is nuut na 1.1.38 en LibXslt. Die Wine Mono-enjin met die implementering van die .NET-platform is opgedateer om 1.3 vry te stel.
    • Die bestuurder winewayland.drv gebruik die Wayland-kliëntbiblioteek as eksterne afhanklikhede, sowel as die xkbcommon- en xkbregistry-biblioteke.
    • Om slimkaarte te ondersteun, word die eksterne PCSClite-biblioteek gebruik (in macOS — PCSC).
    • Die bou van PE-lêers op nie-i386-platforms vereis nou 'n kruissamesteller met ondersteuning vir ".seh"-instruksies om uitsonderings te hanteer.

Bron: opennet.ru

Koop betroubare hosting vir werwe met DDoS-beskerming, VPS VDS-bedieners 🔥 Koop betroubare webwerfhosting met DDoS-beskerming, VPS VDS-bedieners | ProHoster