Wijn 5.0 uitgebracht

Wijn 5.0 uitgebrachtOp 21 januari 2020 vond de officiële release van de stabiele versie plaats Wijn 5.0 - een gratis tool voor het uitvoeren van native Windows-programma's in een UNIX-omgeving. Dit is een alternatieve, gratis implementatie van de Windows API. Het recursieve acroniem WINE staat voor "Wine Is Not an Emulator".

Deze versie heeft ongeveer een jaar ontwikkeling en meer dan 7400 individuele wijzigingen. Hoofdontwikkelaar Alexandre Julliard identificeert er vier:

  • Ondersteuning voor modules in PE-formaat. Dit lost problemen op met verschillende kopieerbeveiligingsschema's die overeenkomen met systeemmodules op schijf en in het geheugen.
  • Ondersteunt meerdere monitoren en meerdere GPU's, inclusief wijzigingen in dynamische instellingen.
  • Herimplementatie van XAudio2 gebaseerd op het FAudio-project, een open implementatie van DirectX-geluidsbibliotheken. Als u overschakelt naar FAudio, kunt u een hogere geluidskwaliteit in games bereiken, volumemixen, geavanceerde geluidseffecten inschakelen en meer.
  • Vulkan 1.1-ondersteuning.


Lees meer over de belangrijkste innovaties.

PE-modules

Met de MinGW-compiler zijn de meeste Wine-modules nu gebouwd in het uitvoerbare bestandsformaat PE (Portable Executable, Windows binary format) in plaats van ELF.

PE-uitvoerbare bestanden worden nu naar de map gekopieerd ~/.wine in plaats van dummy DLL-bestanden te gebruiken, waardoor applicaties meer op echte Windows-installaties lijken.

Nog niet alle modules zijn geconverteerd naar PE-formaat. Het werk gaat door.

Grafisch subsysteem

Zoals hierboven vermeld is er ondersteuning toegevoegd voor het werken met meerdere monitoren en grafische adapters.

Het Vulkan-stuurprogramma is bijgewerkt naar Vulkan 1.1.126-specificaties.

Bovendien ondersteunt de WindowsCodecs-bibliotheek nu extra rasterformaten, inclusief palet-geïndexeerde formaten.

Direct3D

Direct3D-toepassingen op volledig scherm blokkeren nu de oproep van de screensaver.

Voor DXGI-toepassingen is het nu mogelijk om te schakelen tussen volledig scherm en venstermodus met behulp van de standaard Alt+Enter-combinatie.

De Direct3D 12-functies zijn verbeterd met ondersteuning voor het schakelen tussen volledig scherm- en venstermodi, het wijzigen van schermmodi, het schalen van weergaven en het wisselen van intervallen. Al deze functies zijn al geïmplementeerd in eerdere versies van de Direct3D API.

Het projectteam heeft ijverig gewerkt en letterlijk honderden bugs opgelost, waardoor Wine's omgang met verschillende randsituaties is verbeterd. Deze omvatten het samplen van 2D-bronnen in 3D-samplers en omgekeerd, het gebruik van invoerwaarden die buiten het bereik vallen voor transparantie- en dieptetests, het renderen met gereflecteerde texturen en buffers, het gebruik van onjuiste clippers (DirectDraw-object) en nog veel meer.

De grootte van de vereiste adresruimte bij het laden van 3D-texturen die zijn gecomprimeerd met de S3TC-methode is verkleind (in plaats van volledig te laden, worden texturen in stukjes geladen).

Voor oudere DirectDraw-toepassingen zijn verschillende verbeteringen en reparaties met betrekking tot verlichtingsberekeningen aangebracht.

De basis van grafische kaarten die in Direct3D worden herkend, is uitgebreid.

Netwerk en cryptografie

De Gecko-engine is bijgewerkt naar versie 2.47.1 om moderne tools te ondersteunen. Er zijn een aantal nieuwe HTML-API's geïmplementeerd.

MSHTML ondersteunt nu SVG-elementen.

Veel nieuwe VBScript-functies toegevoegd (zoals fout- en uitzonderingshandlers).

De mogelijkheid om HTTP-proxy-instellingen via DHCP te verkrijgen is geïmplementeerd.

In het cryptografische gedeelte is ondersteuning voor cryptografische sleutels met elliptische curve (ECC) via GnuTLS geïmplementeerd, is de mogelijkheid toegevoegd om sleutels en certificaten uit bestanden in het PFX-formaat te importeren en is ondersteuning voor het PBKDF2-wachtwoordgebaseerde sleutelgeneratieschema toegevoegd. toegevoegd.

Wijn 5.0 uitgebracht
Adobe Photoshop CS6 voor wijn

Andere belangrijke innovaties

  • Ondersteuning voor NT-kernel-spinlocks.
  • Dankzij het aflopen van het patent voor de compressie van DXTn- en S3-texturen werd het mogelijk om deze in de standaardimplementatie op te nemen.
  • Ondersteunt plug-and-play driverinstallatie.
  • Diverse DirectWrite-verbeteringen.
  • Verbeterde ondersteuning voor de Windows Media Foundation API.
  • Betere synchronisatie van primitieven dankzij implementatie op futexen.
  • Wine-Mono delen om ruimte te besparen in plaats van een open source .NET-implementatie voor elk ~/.wine.
  • Ondersteuning voor Unicode 12.0 en 12.1.
  • Implementatie van een initiële HTTP-service (HTTP.sys) ter vervanging van de Winsock API en IIS, resulterend in betere prestaties dan de Windows Sockets API.
  • Betere compatibiliteit met Windows-foutopsporingsprogramma's.
  • Betere LLVM MinGW-ondersteuning en verbeteringen in de cross-compilatie van WineGCC.

Ook kunnen we verbeteringen in de gebruikersinterface noemen. Geminimaliseerde vensters worden nu bijvoorbeeld weergegeven met een titelbalk in plaats van pictogrammen in Windows 3.1-stijl. Verbeterde ondersteuning voor gamecontrollers, inclusief hat-switch, stuur en pedalen.

De ingebouwde AVI-, MPEG-I- en WAVE-decoders zijn uit Wine verwijderd en vervangen door het systeem GStreamer of QuickTime.

De mogelijkheid om de debugger van Visual Studio te gebruiken voor het op afstand debuggen van applicaties die in Wine draaien, is toegevoegd, de DBGENG-bibliotheek (Debug Engine) is gedeeltelijk geïmplementeerd en de afhankelijkheid van libwine is verwijderd uit de bestanden die voor Windows zijn gecompileerd.

Om de prestaties te optimaliseren zijn verschillende timingfuncties gemigreerd om hoogwaardige systeemtimerfuncties te gebruiken, waardoor de overhead in de renderloop van veel games wordt verminderd. Er zijn nog meer prestatie-optimalisaties doorgevoerd.

Bekijk de volledige lijst met wijzigingen. hier.

Wijn 5.0-broncode, spiegel
Binaire bestanden voor verschillende distributies
Документация

De site AppDB Er wordt een database bijgehouden met Windows-applicaties die compatibel zijn met Wine. Hier zijn de leiders aantal stemmen:

  1. Final Fantasy XI
  2. Adobe Photoshop CS6 (13.0)
  3. wereld van warcraft 8.3.0
  4. EVE Online actueel
  5. Magie: The Gathering Online 4.x

Er kan worden aangenomen dat deze applicaties het vaakst in Wine worden gestart.

Opmerking. De release van Wine 5.0 is opgedragen aan de nagedachtenis van Józef Kucia, die in augustus 2019 op tragische wijze op 30-jarige leeftijd stierf tijdens het verkennen van een grot in het zuiden van Polen. Jozef leverde een belangrijke bijdrage aan de ontwikkeling van Direct3D Wine en was tevens hoofdauteur van het project vkd3d. Tijdens zijn tijd aan Wine heeft hij meer dan 2500 patches bijgedragen.

Wijn 5.0 uitgebracht

Bron: www.habr.com

Voeg een reactie