Wine 9.0:n vakaa julkaisu

Vuoden kehitystyön ja 26 kokeellisen version jälkeen esiteltiin vakaa julkaisu Win32 API:n avoimesta toteutuksesta - Wine 9.0, joka sisälsi yli 7000 64 muutosta. Uuden version tärkeimpiä saavutuksia ovat WoW32-arkkitehtuurin käyttöönotto 64-bittisten ohjelmien ajamiseen 64-bittisessä ympäristössä, ajurien integrointi tukemaan Waylandia, tuki ARMXNUMX-arkkitehtuurille, DirectMusic API:n käyttöönotto ja tuki älykorteille.

5336 (5266 vuosi sitten, 5156 kaksi vuotta sitten, 5049 kolme vuotta sitten) ohjelman on vahvistettu toimivan oikein Winessä. WindowsLisäksi 4 397 ohjelmaa (4 370 vuosi sitten, 4 312 kaksi vuotta sitten, 4 227 kolme vuotta sitten) toimii hyvin lisäasetusten ja ulkoisten DLL-tiedostojen kanssa. 3 943 ohjelmassa (3 888 vuosi sitten, 3 813 kaksi vuotta sitten, 3 703 kolme vuotta sitten) on pieniä ongelmia, jotka eivät häiritse sovellusten perustoimintoja.

Wine 9.0:n tärkeimmät innovaatiot:

  • winewayland.drv-ajuri on lisätty, minkä ansiosta Winen käyttöä Wayland-pohjaisissa ympäristöissä voidaan jatkaa ilman XWayland- tai X11-komponentteja. Tämän kehitystyön tavoitteena on tarjota puhdas Wayland-ympäristö käynnistystuella. Windows- sovellukset, jotka eivät vaadi X11-pohjaisten pakettien asentamista, mikä parantaa pelien suorituskykyä ja reagointikykyä poistamalla tarpeettomia kerroksia. Puhtaan Wayland-ympäristön käyttäminen Wine-laitteissa poistaa myös X11:lle ominaiset tietoturvaongelmat (esimerkiksi epäluotettavat X11-pelit voivat vakoilla muita sovelluksia, koska X11-protokolla sallii pääsyn kaikkiin syöttötapahtumiin ja suorittaa näppäinpainallusten korvaamisen).

    Ohjain on merkitty kokeelliseksi ja kehitteillä olevaksi, mutta siinä on kuitenkin jo tuki monille ominaisuuksille, kuten ikkunoiden hallinta, useiden näyttöjen kanssa työskentely, tuki lähdön skaalaukseen korkean pikselitiheyden (korkea DPI) näytöillä, työskentely suhteelliset koordinaatit, kun seurataan hiiren liikettä ja tuki Vulkan-grafiikkasovellusliittymälle. Oletuksena ohjain ei ole aktiivinen, ja sen ottamiseksi käyttöön sinun tulee lisätä "wayland" rekisteriparametriin "HKCU\Software\Wine\Drivers" ja varmistaa, että DISPLAY-ympäristömuuttujaa ei ole asetettu: wine reg.exe add HKCU\ \Software\\Wine\\Drivers /v Grafiikka /d x11,wayland

  • Kaikki moduulit on muunnettu NT-järjestelmäkutsuliitännäksi sen sijaan, että ne soittaisivat suoria puheluita PE- ja Unix-kerrosten välillä, mikä merkitsee monien vuosien työtä kaikkien DLL-tiedostojen muuntamiseksi PE (Portable Executable) suoritettavaa tiedostomuotoa varten.
  • WoW64-kerroksen (64-bittinen) kehitys jatkui Windows-päällä-Windows), jonka avulla voit käyttää 32-bittistä Windows- sovellukset 64-bittisissä Unix-järjestelmissä. Kaikki Unix-kirjastoja käyttävät moduulit käyttävät WoW64-järjestelmäkutsukääntäjiä (thunkeja), joiden avulla PE-muodossa olevat 32-bittiset moduulit voivat käyttää 64-bittisiä Unix-kirjastoja.

    Uutta WoW64-käynnistystilaa on parannettu, ja nyt 32-bittistä koodia voidaan ajaa 64-bittisessä prosessissa (vanhassa WoW64-tilassa 32-bittiset sovellukset toimivat 32-bittisissä Unix-prosesseissa). Alustalle on lisätty tuki uuden WoW64-tilan käytölle. macOSKoska uudessa WoW64-tilassa on joitakin pieniä virheitä, kuten 16-bittisen tuen puute ja heikentynyt OpenGL-suorituskyky ARB_buffer_storage-laajennuksen tuen puutteen vuoksi, se ei ole vielä oletusarvoisesti käytössä ja vaatii sen kääntämisen "--enable-archs=i386,x86_64"-asetuksella konfigurointiskriptissä.

  • Lisätty mahdollisuus suorittaa olemassa olevia suoritettavia tiedostoja Windows Järjestelmissä, joissa on ARM64-arkkitehtuuri. Wine voidaan nyt rakentaa ARM64EC (ARM64 Emulation Compatible) ABI:lle, ja ARM64EC-moduuleja voidaan ladata. Näitä moduuleja käytetään yksinkertaistamaan alun perin x86_64-arkkitehtuurille kirjoitettujen sovellusten siirtämistä ARM64-järjestelmiin mahdollistamalla yksittäisten x86_64-koodimoduulien suorittamisen ARM64-ympäristössä emulaattorin avulla. Tuki on lisätty ARM64X PE -tiedostomuodolle, jonka avulla yksi suoritettava tiedosto voidaan ladata sekä x64/Arm64EC- että ARM64-prosesseissa. Rajapinta 32-bittisten x86-järjestelmien emulointiin on toteutettu, mutta emulaattorikirjastoa ei vielä sisällytetä Wine-pääjakeluun (ulkoista FEX-emulaattoria voidaan käyttää x86-koodin suorittamiseen ARM64-ympäristössä).
  • Grafiikka alijärjestelmä
    • PostScript-ajuria on uudistettu tukemaan jonotustiedostoja muodossa Windows, jotka tallentavat tietoja tulostustöistä. Suorat kutsut ajuriin Unix-ympäristöstä eivät ole käytössä.
    • Tumman tilan tuki on lisätty WinRT-teemoihin. WineCfg:hen on lisätty asetus, joka mahdollistaa tumman käyttöliittymäsuunnittelun.
    • Vulkan-grafiikkasovellusliittymän ajuri on lisännyt tuen Vulkan 1.3.272 -spesifikaatiolle (8.0 tuettiin Wine 1.3.237:ssa).
    • GdiPlus-kirjaston toiminnot on optimoitu, mikä mahdollistaa paremman grafiikan suorituskyvyn.
  • Direct3D
    • Monisäikeisen komentovirran jäsentäminen keskeytetään, kun renderöintikomentoja ei käsitellä, mikä mahdollistaa energiankulutuksen vähentämisen yksisäikeisen käsittelyn tasolle suoritettaessa ohjelmia, jotka eivät vie koko komentovirran kaistanleveyttä.
    • Direct3D 10 sisältää tuen lisätehosteille.
    • Teki suorituskykyoptimointeja WineD3D-koodiin ja taustajärjestelmään käyttämällä Vulkan-grafiikkasovellusliittymää.
    • Vulkan API-pohjainen renderöintikoodi tarkistaa nyt, mitä ominaisuuksia laite tukee ja kertoo sovellukselle minkä tason Direct3D-toiminnallisuutta on saatavilla.
    • Toiminnot D3DXFillTextureTX ja D3DXFillCubeTextureTX on toteutettu.
    • Klassinen OpenGL ARB Shader -taustaohjelma on lisännyt tuen varjojen määrittämiseen ARB_fragment_program_shadow -laajennuksella.
    • D3DXLoadMeshHierarchyFromX ja vastaavat toiminnot ovat lisänneet tuen käyttäjätietojen lataamiseen ID3DXLoadUserData-liittymän avulla.
  • Ääni ja video
    • DirectMusic API:n alustavaa käyttöönottoa on ehdotettu. Lisätty tuki kokoelmille, soittimille ja ääninäytteille SoundFont-muodossa. Lisätty tuki Doppler-efektille. Testejä on toteutettu oikean toteutuksen tarkistamiseksi käytettäessä dmime-sekvensseria ja dmsynth MIDI -syntetisaattoria.
    • FluidSynth-kirjasto on sisäänrakennettu DirectMusic-sovellusliittymään käytettäväksi.
    • Toteutettu tuki äänifonttien (SoundFont - MIDI-tiedostojen toistamiseen käytettävien näytepohjaisten synteesien muodot) lataamiseen DLS1- ja DLS2-muodoissa sekä SF2-muodossa, jota käytetään Linux.
    • Lisätty mahdollisuus toistaa MIDI-sisältöä dmsynth-kirjaston avulla käyttämällä FluidSynth-ohjelmistosyntetisaattoria ja DirectSound API:ta äänen ulostuloon.
    • Lisätty dekooderi videolle Indeo IV50 -videokoodekkimuodossa.
  • DirectShow
    • DMO (DirectX Media Object) -komponentti, jossa on WMV-muotoinen dekooderi, on toteutettu (Windows Mediavideo).
    • Lisätty äänenkaappaussuodatin (DirectShow Audio Capture Filter).
    • Äänivirtojen lisäksi MPEG-1 Stream Splitter (DirectShow MPEG-1 Stream Splitter) tukee nyt video- ja palveluvirtoja.
    • Suodatin videon dekoodaamiseen MPEG-1-muodossa (DirectShow MPEG-1 Video Decoder) on otettu käyttöön.
  • Syöttölaitteet
    • DirectInput tukee toimintokartoitusta, jonka avulla voit sitoa peliohjaimen painikkeita tiettyihin pelitoimintoihin.
  • Työpöytäintegrointi
    • Sidotukset on viety pääkäyttäjäympäristöön, jolloin Wine-apuohjelmassa toimivia sovelluksia voidaan kutsua protokollakäsittelijöiksi URL-osoitetta avattaessa (esimerkiksi käynnistää spotify.exe avattaessa linkkejä, kuten "spotify:user:spotify:playlist:848218482355482821").
    • Toteutti EDID-tietojen (Extended Display Identification Data) poimimisen liitetyn näytön parametrien, kuten laitteen nimen ja mallin, tiedoilla.
    • On mahdollista sulkea koko näytön tilassa käyttöön otettu työpöytäikkuna "Käynnistä"-valikon "Poistu työpöydältä" -painikkeella.
  • Kansainvälistyminen
    • IME-tukea (Input Method Editors) on laajennettu. Työtä on tehty yhteensopivuuden varmistamiseksi natiivien Windows IME-toteutukset ja parannettu integrointi Linux IME
    • Kielitietokantojen luominen locale.nls-muodossa on toimitettu Unicode CLDR (Unicode Common Locale Data Repository) -tietokannasta versiosta 44. Tuki lisäalueille bew-ID, blo-BJ, csw-CA, eli-EE, mic-CA , prg-PL on lisätty , skr-PK, tyv-RU, vmw-MZ, xnr-IN ja za-CN.
    • Käyttöliittymä on käännetty Georgian kielelle. Täydelliset käännökset tarjotaan 16 kielelle ja osittaiset käännökset 31 kielelle.
    • Unicode-merkkitaulukot on päivitetty vakioversioon 15.1.0. Aikavyöhyketietokanta on päivitetty.
  • Ydin (ytimen rajapinnat Windows)
    • Julkaistuna versiona Windows oletusarvoisesti määritelty Windows 10.
    • PE-muodossa oleville suoritettaville tiedostoille on toteutettu osoitetilan satunnaistamisen (ASLR) tuki, mutta koodin muistiin lataamisen osoitteet eivät ole vielä täysin satunnaistettuja.
    • Tuki heikosti fragmentoituneelle keolle (LFH, Low Fragmentation Heap) on otettu käyttöön, mikä on lisännyt muistin varaustoimintojen suorituskykyä.
    • Muistin varauksen tuki (paikkamerkki) on lisätty virtuaalisen muistin varausmekanismiin, jolloin sovellus voi varata tietyn alueen virtuaalimuistista tulevaa käyttöä varten.
    • Suoritettavien tiedostojen ja kirjastojen 64-bittiset latauslaitteet (loader ja preloader) on käännetty PIE (Position-Independent Executables) -muotoon vapauttamaan osan 32-bittisestä osoiteavaruudesta.
    • Oikea pinon purkaminen on tarjolla NT-järjestelmäkutsuille ja käyttäjien takaisinsoittoille.
  • Verkkoominaisuudet
    • MSHTML-moottori tukee "Cycle Collection" -jätteenkeräysmekanismia.
    • MSHTML on lisännyt tuen XMLHttpRequest-pyyntöjen synkroniselle käsittelylle.
    • jscript.dll lisää WeakMap-objektin tuen toimimaan avain/arvo-parien kokoelman kanssa, jossa avain on objekti, johon voi olla liitetty mielivaltainen arvo. Toteutettu menetelmät WeakMap.get(), WeakMap.delete(), WeakMap.clear() ja WeakMap.has().
    • Gecko-selainmoottori on päivitetty versioon 2.47.4.
    • Verkkorajapinnan tilan muutoksista ilmoittamisen tuki on otettu käyttöön.
  • Salaus ja turvallisuus
    • Ohjekorttien tuki on lisätty Winscard.dll-kirjastoon, joka on toteutettu PCSClite-järjestelmäkirjaston kautta.
    • BCrypt on lisännyt tuen Diffie-Hellman-avaimenvaihtoprotokollalle.
    • Negotiate-paketti on otettu käyttöön, ja se tarjoaa kerroksen SSPI (Security Support Provider Interface) -rajapinnan käyttämiselle SSP (Security Support Provider) -palveluntarjoajien käyttämiseen.
  • Sulautetut sovellukset
    • Wine Debugger (winedbg) käyttää Zydis-kirjastoa X86-koneen ohjeiden purkamiseen.
    • WineCfg-käyttöliittymä on päivitetty tukemaan vanhempia versioita 64-bittisillä alustoilla. Windows (ennen XP:tä), jonka avulla voit suorittaa vanhoja sovelluksia WoW64-tilassa.
    • Kaikki sisäänrakennetut graafiset sovellukset näyttävät nyt virhetiedot erillisessä valintaikkunassa sen sijaan, että ne näyttäisivät ne konsolissa.
    • Systeminfo-ohjelma näyttää tietoja WMI-tietokannasta (Windows Johtamisen instrumentointi).
    • Lisätty klist-sovellus Kerberos-lippujen näyttämiseen.
    • Taskkill-sovellus toteuttaa mahdollisuuden lopettaa lapsiprosessit väkisin.
    • Lisätty "/machine" -vaihtoehto käynnistysapuohjelmaan, jolla valitaan arkkitehtuuri, jota käytetään käytettäessä x86:ta ja ARM:ää tukevia hybridisuoritustiedostoja.
    • Suurin osa tehtävälistaohjelman toiminnoista on otettu käyttöön.
    • Lisätty findstr-sovelluksen perustoteutus.
  • Kehitystyökalut
    • WineDump-apuohjelmalla on kyky näyttää rekisteritiedostojen sisältö. Windows (REGF-muoto) sekä näyttää tietoja kaikista hybridi-PE-tiedostoissa tuetuista arkkitehtuureista (x86/ARM64).
    • IDL-kääntäjä on lisännyt tuen "composable", "default_overload", "deprecated" ja "protected" attribuuteille.
    • Poistettu libwine.so, joka oli vanhentunut Wine 6.0:ssa ja jota ei ole käytetty pitkään aikaan Winessä. ELF-muodossa olevat ohjelmat, jotka on rakennettu Winen vanhemmissa versioissa (5.0 ja vanhemmat), joissa on libwine.so, vaativat uudelleenrakentamisen toimiakseen Wine 9.0:ssa.
  • Sisäänrakennetut kirjastot ja ulkoiset riippuvuudet
    • Kirjastot FluidSynth 2.3.3, Musl 1.2.3 (vain matemaattiset funktiot) ja Zydis 4.0.0 on integroitu pakettiin.
    • Komponentit 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 on päivitetty uuteen versioon . . Wine Mono -moottori .NET-alustalla on päivitetty versioon 1.1.38.
    • Ajuri winewayland.drv käyttää Wayland-asiakaskirjastoa ulkoisina riippuvuuksina sekä xkbcommon- ja xkb-rekisterikirjastoja.
    • Älykorttien tukemiseksi käytetään ulkoista PCSClite-kirjastoa (sisään macOS — PCSC).
    • PE-tiedostojen luominen ei-i386-alustoille vaatii nyt ristikääntäjän, joka tukee ".seh"-direktiivejä poikkeuksien käsittelemiseksi.

Lähde: opennet.ru

Osta luotettava isännöinti sivustoille, joissa on DDoS-suojaus, VPS VDS -palvelimet 🔥 Osta luotettavaa verkkosivustojen hostingia DDoS-suojauksella, VPS VDS -palvelimilla | ProHoster