Stabil release av Wine 5.0

Efter ett Ă„rs utveckling och 28 experimentella versioner presenteras den stabila utgĂ„van av den öppna Win32 API-implementationen — Wine 5.0, som inkluderar mer Ă€n 7400 Ă€ndringar. Bland de viktigaste prestationerna i den nya versionen finns leverans av inbyggda Wine-moduler i PE-formatet, stöd för flera bildskĂ€rmar, en ny implementation av ljud-API:t XAudio2 och stöd för grafik-API:t Vulkan 1.1.

I Wine konstateras fullgod funktionalitet för 4869 (för ett Är sedan 4737) program för Windows, ytterligare 4136 (för ett Är sedan 4045) program fungerar utmÀrkt med hjÀlp av extra instÀllningar och externa DLL-filer. För 3635 program observeras smÄ problem som inte pÄverkar anvÀndningen av de grundlÀggande funktionerna.

Nyckel nyheter Wine 5.0:

  • PE-formatmoduler
    • Med MinGW-kompilatorn kan nu de flesta Wine-moduler byggas i PE (Portable Executable) format istĂ€llet för ELF. AnvĂ€ndning av PE löser problem med stöd för olika kopieringsskydd som verifierar identiteten pĂ„ systemmoduler pĂ„ disk och i minnet;
    • PE-exekverbara filer kopieras nu till katalogen ~/.wine ($WINEPREFIX) istĂ€llet för att anvĂ€nda lĂ„tsas-DLL-filer, vilket gör installationsstrukturen mer lik verkliga Windows-installationer, pĂ„ bekostnad av extra diskutrymme;
    • Moduler som omvandlats till PE-format kan anvĂ€nda standard wchar C-funktioner och konstanter med Unicode (t.ex. L"abc");
    • I Wine C-runtime har stöd för lĂ€nkning mot binĂ€ra filer byggda med MinGW lagts till, vilket anvĂ€nds som standard istĂ€llet för MinGW-runtime vid byggandet av DLL;
  • Grafiksubsystem
    • Stöd för arbete med flera bildskĂ€rmar och grafikkort har lagts till, inklusive möjlighet att dynamiskt Ă€ndra instĂ€llningar;
    • Drivrutinen för grafik-API:t Vulkan har uppdaterats för att följa specifikationen Vulkan 1.1.126;
    • I biblioteket WindowsCodecs har möjligheten att konvertera ytterligare rasterformat implementerats, inklusive format med indexerad palett;
  • Direct3D
    • Vid körning av helskĂ€rmsapplikationer i Direct3D blockeras anrop av skĂ€rmslĂ€ckare;
    • I DXGI (DirectX Graphics Infrastructure) har stöd för att informera applikationen om minimering av dess fönster lagts till, vilket möjliggör för applikationen att minska anvĂ€ndningen av resurser vid minimering av fönstret.
    • För applikationer som anvĂ€nder DXGI har möjligheten att vĂ€xla mellan helskĂ€rms- och fönsterlĂ€ge implementerats med hjĂ€lp av kombinationen Alt+Enter;
    • Möjligheterna att implementera Direct3D 12 har utvidgats, till exempel har stöd för vĂ€xling mellan helskĂ€rms- och fönsterlĂ€ge, Ă€ndra skĂ€rmlĂ€gen, utdata med skalning och hantering av swap interval för rendering buffers introducerats;
    • FörbĂ€ttrad behandling av olika grĂ€nssituationer, sĂ„som tillĂ€mpning av ur vĂ€rden som överskrider giltiga intervall för transparens- och djuptester, rendering med reflekterande texturer och buffertar, anvĂ€ndning av ogiltiga DirectDraw-objekt clipper, skapande av Direct3-enheter för ogiltiga fönster, anvĂ€ndning av synliga omrĂ„den, dĂ€r de minimi vĂ€rden som anges Ă€r lika med de maximala, etc.
    • I Direct3D 8 och 9 sĂ€kerstĂ€lls en mer exakt spĂ„rning av "smutsiga" omrĂ„den av laddade texturer;
    • MĂ€ngden nödvĂ€ndigt adressutrymme vid laddning av 3D-texturer, komprimerade med metoden S3TC (istĂ€llet för att laddas helt, laddas texturer i bitar).
    • GrĂ€nssnittet ID3D11Multithread har implementerats för att skydda kritiska sektioner i multitrĂ„dade applikationer;
    • För Ă€ldre DirectDraw-applikationer har olika förbĂ€ttringar och korrigeringar gjorts relaterade till ljussĂ€ttning;
    • Ytterligare anrop har implementerats för att fĂ„ information om shaders i API:et ShaderReflection;
    • Stöd för CPU-baserade blitters har lagts till för bearbetning av komprimerade resurser;
    • Databasen över grafikkort som identifieras i Direct3D har utvidgats;
    • Nya registernycklar HKEY_CURRENT_USER\Software\Wine\Direct3D har lagts till: "shader_backend" (backend för shaderhantering: "glsl" för GLSL, "arb" för ARB vertex/fragment och "none" för att inaktivera shaderstöd), "strict_shader_math" (0x1 — aktivera, 0x0 — inaktivera direkt3D shaderkonvertering). Den tidigare nyckeln "UseGLSL" har avskrivits (anvĂ€nd "shader_backend");
  • D3DX
    • Stöd för mekanismen för komprimering av 3D-texturer S3TC (S3 Texture Compression) har implementerats;
    • Korrekt implementering av operationer som texturfyllning och icke-reflekterande (unmappable) ytor har lagts till;
    • Olika förbĂ€ttringar och korrigeringar har gjorts i ramverket för skapande av visuella effekter;
  • KĂ€rnan (Windows kernelgrĂ€nssnitt)
    • De flesta funktionerna som anvĂ€nds i Kernel32 har flyttats till
      KernelBase, i enlighet med förÀndringarna i Windows-arkitekturen;
    • Möjlighet att blanda 32- och 64-bitars DLL-filer i kataloger som anvĂ€nds för laddning. Ignorerar bibliotek som inte överensstĂ€mmer med den aktuella bitarkitekturen (32/64), ifall en korrekt databas för den nuvarande bitarkitekturen kan hittas lĂ€ngre ner i sökvĂ€gen;
    • För enhetsdrivrutiner har emuleringen av kĂ€rnobjekt förbĂ€ttrats;
    • Ämnen för synkronisering pĂ„ kĂ€rnnivĂ„ har implementerats, sĂ„som spin-lĂ„s, snabba mutexer och resurstilldelade variabler;
    • Korrekt informera applikationer om batteristatus;
  • AnvĂ€ndargrĂ€nssnitt och integration med skrivbordet
    • Minimerade fönster visas nu med en titel, inte en ikon i stil med Windows 3.1;
    • Nya knappstilar har lagts till SplitButton (en knapp med en rullgardinsmeny för Ă„tgĂ€rder) och Command Links (lĂ€nkar i dialogrutor som anvĂ€nds för att gĂ„ till nĂ€sta steg);
    • Symboliska lĂ€nkar har skapats för mapparna 'Downloads' och 'Templates' som pekar pĂ„ motsvarande kataloger i Unix-system;
  • Inmatningsenheter
    • InstĂ€llning och laddning av nödvĂ€ndiga Plug & Play-enhetsdrivrutiner sĂ€kerstĂ€lls vid start;
    • FörbĂ€ttrad stöd för spelkontroller, inklusive mini-joystick (hat-switch), rat, gas- och bromspedaler.
    • Stödet för det gamla Linux API för interaktion med joysticks, som anvĂ€ndes i Linux-kĂ€rnor före version 2.2, har upphört;
  • .NET
    • Mono-motorn har uppdaterats till version 4.9.4 och inkluderar nu delar av Windows Presentation Foundation (WPF) ramverket;
    • Möjligen att installera tillĂ€gg med Mono och Gecko i en gemensam katalog med filerna lagrade i hierarkin /usr/share/wine istĂ€llet för att kopiera över nya prefix;
  • NĂ€tverksfunktioner
    • WebblĂ€sarmotorn Wine Gecko, som anvĂ€nds i MSHTML-biblioteket, har uppdaterats till version 2.47.1. Stöd för nya HTML API har implementerats;
    • I MSHTML har stöd för SVG-element implementerats;
    • MĂ„nga nya VBScript-funktioner har lagts till (till exempel fel- och undantagshanterare, funktioner Hour, Day, Month, String, LBound, RegExp.Replace, RScriptTypeInfo_* och ScriptTypeComp_Bind* osv.);
    • SĂ€kerstĂ€llande av kodenstabilitet i VBScript och JScript (script persistence);
    • En preliminĂ€r implementering av HTTP-tjĂ€nst (WinHTTP) och relaterad API (HTTPAPI) för klient- och serverapplikationer som skickar och tar emot förfrĂ„gningar via HTTP-protokollet har lagts till;
    • Möjlighet att fĂ„ HTTP-proxyinstĂ€llningar via DHCP har implementerats;
    • Stöd för omdirigering av autentiseringsförfrĂ„gningar via Microsoft Passport-tjĂ€nsten har lagts till;
  • Kryptografi
    • Stöd för elliptiska kurvor (ECC) baserade kryptografiska nycklar har implementerats vid anvĂ€ndning av GnuTLS;
    • Möjlighet att importera nycklar och certifikat frĂ„n filer i PFX-format har lagts till;
    • Stöd för nyckelgenereringsschema baserat pĂ„ lösenord PBKDF2 har lagts till;
  • Text och typsnitt
    • DirektWrite API-implementationen har fĂ„tt stöd för OpenType-funktioner relaterade till glyph-positionering, vilket Ă€r aktiverat som standard för Latin-skripting, inklusive kerning;
    • SĂ€kerheten för bearbetning av typsnittdata har förbĂ€ttrats genom validering av olika datatabeller innan deras anvĂ€ndning;
    • DirectWrite-grĂ€nssnitten har anpassats till den senaste SDK:n;
  • Ljud och video
    • En ny implementation av ljud-API:n XAudio2, baserad pĂ„ projektet FAudio. AnvĂ€ndning av FAudio i Wine möjliggör högre ljudkvalitet i spel och aktiverar funktioner som volymblandning och avancerade ljudeffekter;
    • Ett stort antal nya anrop har lagts till implementationen av Media Foundation-ramverket, inklusive stöd för inbyggda och anvĂ€ndardefinierade asynkrona köer, Source Reader API, Media Session, etc.
    • Videoinspelningsfilter har övergĂ„tt till att anvĂ€nda API v4l2 istĂ€llet för v4l1 API, vilket har gjort det möjligt att utöka antalet stödda kameror;
    • Inbyggda dekodrar för AVI, MPEG-I och WAVE har tagits bort och istĂ€llet anvĂ€nds system GStreamer eller QuickTime;
    • Ett delmĂ€ngd av konfigurations-API:erna VMR7 har lagts till;
    • I ljuddrivrutiner har stöd för justering av volym pĂ„ enskilda kanaler lagts till;
  • Internationalisering
    • Unicode-tabellerna har uppdaterats till version 12.1.0;
    • Stöd för Unicode-normering har implementerats;
    • Automatisk installation av geolĂ€ge (HKEY_CURRENT_USER\Control Panel\International\Geo) baserat pĂ„ aktuell lokal har sĂ€kerstĂ€llts;
  • RPC/COM
    • Typelisten har fĂ„tt stöd för komplexa strukturer och arrayer;
    • En initial implementation av runtime-biblioteket Windows Script har lagts till;
    • En initial implementation av ADO-biblioteket (Microsoft ActiveX Data Objects) har lagts till;
  • Installatörer
    • För MSI-installatören har stöd för distribution av patchar (Patch Files) implementerats;
    • I verktyget WUSA (Windows Update Standalone Installer) har möjligheten att installera uppdateringar i .MSU-format lagts till;
  • ARM-plattformen
    • För ARM64-arkitekturen har stöd för stackavrullning lagts till i ntdll. Stöd för anslutning av externa biblioteken libunwind har lagts till;
    • För ARM64-arkitekturen har stöd för stubless proxies för objektgrĂ€nssnitt implementerats;
  • Utvecklingsverktyg / Winelib
    • Möjlighet att anvĂ€nda debugger frĂ„n Visual Studio för fjĂ€rravlusning av applikationer som körs i Wine har lagts till;
    • DBGENG-biblioteket (Debug Engine) har delvis implementerats;
    • Körbara filer byggda för Windows Ă€r nu oberoende av libwine, vilket gör att de kan köras i Windows utan ytterligare beroenden;
    • I Resource Compiler och IDL Compiler har alternativet ‘—sysroot’ lagts till för att ange sökvĂ€gen till headerfiler;
    • I winegcc har alternativen ‘—target’, ‘—wine-objdir’,
      ‘—winebuild’ och ‘-fuse-ld’ lagts till, vilket förenklar miljöinstĂ€llningen för korskompilering;
  • Inbyggda applikationer
    • Verktyget CHCP för att stĂ€lla in konsolens teckenkodning har implementerats;
    • Verktyget MSIDB för att manipulera databaser i MSI-format har implementerats;
  • Prestandaoptimering
    • Olika tidsrelaterade funktioner har övergĂ„tt till att anvĂ€nda högpresterande systemfunktioner för timer, vilket har minskat overhead i ritcykler för mĂ„nga spel;
    • Möjlighet att anvĂ€nda i FS Ext4 lĂ€ge av att arbeta utan att ta hĂ€nsyn till teckens storlek;
    • Prestandaoptimering vid hantering av ett stort antal element i listutmatningsdialoger som fungerar i LBS_NODATA-lĂ€ge har genomförts;
    • En snabbare implementation av SRW-lĂ„s (Slim Reader/Writer) för Linux har lagts till, som har översatts till Futex;
  • Extern beroenden
    • För att bygga moduler i PE-format anvĂ€nds korskompilatorn MinGW-w64;
    • Implementeringen av XAudio2 krĂ€ver biblioteket FAudio;
    • För att spĂ„ra filĂ€ndringar pĂ„ BSD-system
      anvÀnds biblioteket Inotify;
    • För att hantera undantag pĂ„ ARM64-plattformen krĂ€vs biblioteket Unwind;
    • I stĂ€llet för Video4Linux1 krĂ€vs nu biblioteket Video4Linux2.

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