Stabilný release Wine 8.0

Po roku vývoja a 28 experimentálnych verziách bol predstavený stabilný release otvorenej implementácie Win32 API — Wine 8.0, ktorý zahŕňa viac ako 8600 zmien. Kľúčovým úspechom v novej verzii je dokončenie práce na prevode modulov Wine do formátu.

V Wine bola potvrdená plnohodnotná podpora 5266 programov pre Windows (pred rokom 5156, pred dvoma rokmi 5049), ďalších 4370 programov (pred rokom 4312, pred dvoma rokmi 4227) funguje skvele s dodatočnými nastaveniami a externými DLL. Pri 3888 programoch (pred rokom 3813, pred dvoma rokmi 3703) sa pozorujú drobné problémy v prevádzke, ktoré však nebránia využívaniu základných funkcií aplikácií.

Kľúčové novinky Wine 8.0:

  • Moduly vo formáte PE
    • Po štyroch rokoch práce bol úplne dokončený prevod všetkých DLL knižníc na využívanie formátu spustiteľných súborov PE (Portable Executable, používa sa vo Windows). Uplatnenie PE umožňuje používanie dostupných ladicích nástrojov pre Windows a rieši problémy s podporou rôznych schém ochrany pred kopírovaním, ktoré zabezpečujú porovnávanie identity systémových modulov na disku a v pamäti. Rovnako boli vyriešené problémy s prevádzkou 32-bitových aplikácií na 64-bitových hostiteľoch a x86 aplikácií na systémoch ARM. Medzi zostávajúce úlohy, ktoré plánujú vyriešiť v nasledujúcich experimentálnych vydaniach Wine 8.x, patrí prevod modulov na rozhranie systémových volaní NT namiesto vykonávania priamych volaní medzi úrovňami PE a Unix.
    • Bol implementovaný špeciálny správca systému volaní, ktorý sa používa na preklad požiadaviek z PE do Unix knižníc s cieľom znížiť režijné náklady pri vykonávaní kompletného systémového volania NT. Napríklad vykonaná optimalizácia umožnila znížiť spomalenie výkonu pri používaní knižníc OpenGL a Vulkan.
    • V aplikáciách Winelib zostala možnosť používania zmiešaných zostáv Windows/Unix knižníc vo formáte ELF (.dll.so), ale takéto aplikácie bez 32-bitových knižníc nebudú podporovať funkčnosť dostupnú cez rozhranie systémových volaní NT, ako je WoW64.
  • WoW64
    • Pre všetky Unixové knižnice sú k dispozícii vrstvy WoW64 (64-bit Windows-on-Windows), ktoré umožňujú 32-bitovým modulom vo formáte PE pristupovať k 64-bitovým Unixovým knižniciam, čo po zbavení sa priamych volaní PE/Unix umožní spúšťanie 32-bitových Windows aplikácií bez nutnosti inštalácie 32-bitových Unixových knižníc.
    • Pri absencii 32-bitového načítača Wine je zabezpečené spúšťanie 32-bitových aplikácií v novom experimentálnom Windows-podobnom režime WoW64, v ktorom sa 32-bitový kód spúšťa vo vnútri 64-bitového procesu. Režim sa aktivuje pri zostavovaní Wine s voľbou ‘—enable-archs’.
  • Grafický subsystém
    • V predvolenej konfigurácii je použitá svetlá téma rozhrania („Light“). Tému je možné zmeniť pomocou nástroja WineCfg.
      Stabilný release Wine 8.0
    • Grafické ovládače (winex11.drv, winemac.drv, wineandroid.drv) sú transformované na vykonávanie systémových volaní na úrovni Unix a prístup k ovládačom cez knižnicu Win32u.
      Stabilný release Wine 8.0
    • Implementovaná architektúra spracovateľov výstupu na tlač (Print Processor), používaná na vylúčenie priamych volaní medzi úrovňami PE a Unix v ovládači tlačiarne.
    • V API Direct2D bola implementovaná podpora efektov.
    • V API Direct2D bola pridaná možnosť zápisu a prehrávania zoznamov príkazov.
    • V ovládači pre grafické API Vulkan bola pridaná podpora špecifikácie Vulkan 1.3.237 (vo Wine 7 bola podporovaná Vulkan 1.2).
  • Direct3D
    • Pridaný nový kompilátor shaderov pre jazyk HLSL (High-Level Shader Language), implementovaný na základe knižnice vkd3d-shader. Taktiež bola na základe vkd3d-shader pripravená disassembler HLSL a preprocesor HLSL.
    • Implementované rozhranie Thread Pump, ktoré sa objavilo v D3DX 10.
    • V efektoch Direct3D 10 bola pridaná podpora mnohých nových výrazoch.
    • Vo pomocnej knižnici pre D3DX 9 bola implementovaná podpora projekcie textúr Cubemap.
  • Zvuk a video
    • Na základe rámca GStreamer bola implementovaná podpora filtrov na dekódovanie zvuku vo formáte MPEG-1.
    • Pridaný filter na čítanie streamovaného zvuku a videa vo formáte ASF (Advanced Systems Format).
    • Odstránená prostrednícka knižnica OpenAL32.dll, namiesto ktorej sa teraz používa natívna Windows knižnica OpenAL32.dll dodávaná s aplikáciami.
    • V Media Foundation Player bola vylepšená identifikácia typu obsahu.
    • Implementovaná možnosť riadenia rýchlosti prenosu dát (Rate control).
    • Vylepšená podpora mixéra a vykresľovača (presenter), ktoré sú ponúkané ako predvolené v Enhanced Video Renderer (EVR).
    • Pridaná základná implementácia API Writer Encoding.
    • Vylepšená podpora načítania topológií.
  • Vstupné zariadenia
    • Výrazne vylepšená podpora horúceho pripojenia ovládačov.
    • Navrhnutá vylepšená implementácia kódu na určovanie herných volantom založená na knižnici SDL.
    • Vylepšená podpora vibračného feedbacku (Force feedback) pri použití herných volantom.
    • Realizovaná možnosť ovládania ľavého a pravého vibromotora, využívajúcich špecifikáciu HID Haptic.
    • Zmenené rozloženie paneli správy joystickom.
    • Cez použitie backendu hidraw bola zabezpečená podpora ovládačov Sony DualShock a DualSense.
    • Navrhnutý WinRT modul Windows.Gaming.Input s implementáciou programového rozhrania na prístup k herným ovládačom, joystickom a herným volantom. Pre nové API je okrem iného realizovaná podpora notifikácií o horúcom pripojení zariadení, haptických a vibračných efektov.
  • Internacionalizácia
    • Zabezpečená generácia správnej databázy lokalít vo formáte locale.nls z repoziára Unicode CLDR (Unicode Common Locale Data Repository).
    • Funkcie porovnávania reťazcov Unicode boli prevedené na použitie databázy a algoritmu Windows Sortkey namiesto algoritmu Unicode Collation, čo priblížilo správanie k Windows.
    • Vo väčšine funkcií bola pridaná podpora vyšších rozsahov kódov (rovnín) Unicode.
    • Poskytnutá možnosť používať UTF-8 ako ANSI kódovanie.
    • Tabuľky znakov boli aktualizované na špecifikáciu Unicode 15.0.0.
  • Text a písma
    • Pre väčšinu systémových písiem bolo zahrnuté prepojenie písiem, čo vyriešilo problém s chýbajúcimi glifmi na systémoch s čínskymi, kórejskými a japonskými lokalizáciami.
    • Prepracovaný fallback na náhradné písmo v DirectWrite.
  • Jadro (rozhrania jadra Windows)
    • Realizovaná databáza ApiSetSchema, ktorá nahradila moduly api-ms-* a umožnila znížiť spotrebu disku a adresného priestoru.
    • Zabezpečené uchovávanie atribútov súborov DOS na disku v formáte kompatibilnom so Sambou pomocou rozšírených atribútov FS.
  • Network capabilities
    • Pridaná podpora protokolu OCSP (Online Certificate Status Protocol), používaného na kontrolu zrušených certifikátov.
    • Rozšírené možnosti EcmaScript dostupné v režime zhodujúcom sa so štandardami JavaScript.
    • Realizovaný garbage collector pre JavaScript.
    • V balíku s enginom Gecko sú zahrnuté nástroje pre osoby so zdravotným postihnutím.
    • V MSHTML bola pridaná podpora API Web Storage, objektu Performance a ďalších objektov na spracovanie udalostí.
  • Built-in applications
    • Všetky zabudované aplikácie boli preložené na použitie knižnice Common Controls 6, s podporou tém a vykresľovania pre displeje s vysokou hustotou obrazových bodov.
    • Možnosti ladenia vlákien v ladicích nástrojoch Wine Debugger (winedbg) boli rozšírené.
    • V nástrojoch na prácu s registrom (REGEDIT a REG) bola pridaná podpora typu QWORD.
    • V Notepad bola pridaná stavový riadok s informáciami o pozícii kurzora a funkcia Goto Line pre prechod na zadané číslo riadku.
    • Vo vstavanom termináli bola zabezpečená výstup dát v kódovej stránke OEM.
    • Do nástroja sc.exe (Service Control) bola pridaná príkaz 'query'.
  • Systém zostavovania
    • Bol poskytnutý spôsob zostavovania spustiteľných súborov vo formáte PE pre viac architektúr (napríklad '—enable-archs=i386,x86_64').
    • Na všetkých platformách s 32-bitovým typom long, typy údajov definované v systéme Windows ako long, sú teraz v Wine predefinované ako 'long' namiesto 'int'. Toto správanie môže byť v Winelib vypnuté definovaním WINE_NO_LONG_TYPES.
    • Bola pridaná možnosť generovania knižníc bez použitia dlltool (je povolená nastavením voľby '—without-dlltool' v winebuild).
    • Na zvýšenie efektivity načítania a zníženie veľkosti knižníc, ktoré neobsahujú kód a zahŕňajú iba zdroje, bola v winegcc implementovaná možnosť '—data-only'.
  • Rôzne
    • Boli aktualizované verzie vstavaných knižníc Faudio 22.11, LCMS2 2.14, LibJPEG 9e, LibMPG123 1.31.1, LibPng 1.6.39, LibTiff 4.4.0, LibXml2 2.10.3, LibXslt 1.1.37, Zlib 1.2.13.
    • Engine Wine Mono, s implementáciou platformy .NET, bol aktualizovaný na verziu 7.4.
    • Bola implementovaná podpora šifrovania pomocou algoritmu RSA a digitálnych podpisov RSA-PSS.
    • Bola pridaná počiatočná verzia API UI Automation.
    • Do stromu zdrojových textov boli pridané knižnice LDAP a vkd3d, ktoré sa zostavujú vo formáte PE, čo zbavilo potreby dodávať Unixové zostavy týchto knižníc.
    • Bola ukončená podpora knižnice OpenAL.

Zdroj: opennet.ru

Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster