Stabilno izdanje Wine 8.0

Nakon godinu dana razvoja i 28 eksperimentalnih verzija, predstavljeno je stabilno izdanje otvorene implementacije Win32 API-ja - Wine 8.0, u koje je ugrađeno više od 8600 izmjena. Ključno postignuće u novoj verziji označava završetak rada na prevođenju modula Wine u format.

Wine je potvrdio puni rad 5266 (prije godinu dana 5156, prije dvije godine 5049) programa za Windows, još 4370 (prije godinu dana 4312, prije dvije godine 4227) programa radi savršeno s dodatnim postavkama i vanjskim DLL-ovima. 3888 programa (3813 prije godinu dana, 3703 prije dvije godine) ima manje probleme u radu koji ne ometaju korištenje glavnih funkcija aplikacija.

Ključne inovacije u Wineu 8.0:

  • Moduli u PE formatu
    • Nakon četiri godine rada, dovršena je konverzija svih DLL biblioteka za korištenje PE (Portable Executable, koristi se u Windowsima) formata izvršne datoteke. Korištenje PE-a omogućuje korištenje programa za ispravljanje pogrešaka dostupnih za Windows i rješava probleme s podrškom za različite sheme zaštite od kopiranja koje provjeravaju identitet modula sustava na disku i u memoriji. Također su riješeni problemi s pokretanjem 32-bitnih aplikacija na 64-bitnim hostovima i x86 aplikacijama na ARM sustavima. Među preostalim zadacima koji se planiraju riješiti u sljedećim eksperimentalnim izdanjima Wine 8.x, postoji prijelaz modula na NT sučelje za pozive sustava umjesto izravnih poziva između PE i Unix slojeva.
    • Implementiran je poseban upravitelj sistemskih poziva koji se koristi za prevođenje poziva iz PE u Unix biblioteke kako bi se smanjilo opterećenje izvršavanja punog NT sistemskog poziva. Na primjer, optimizacija je omogućila smanjenje degradacije performansi pri korištenju biblioteka OpenGL i Vulkan.
    • Winelib aplikacije zadržavaju mogućnost korištenja mješovitih Windows/Unix sklopova ELF (.dll.so) biblioteka, ali takve aplikacije bez 32-bitnih biblioteka neće podržavati funkcionalnost dostupnu putem sučelja za pozive sustava NT, kao što je WoW64.
  • WoW64
    • WoW64 (64-bitni Windows-on-Windows) slojevi dostupni su za sve Unix biblioteke, omogućujući 32-bitnim modulima u PE formatu pristup 64-bitnim Unix bibliotekama, koje će, nakon što se riješe izravnih PE/Unix poziva, moći moguće izvršavanje 32-bitnih Windows aplikacija bez instaliranja 32-bitnih Unix biblioteka.
    • U nedostatku 32-bitnog Wine loadera, 32-bitne aplikacije mogu se izvoditi u novom eksperimentalnom načinu WoW64 sličnom sustavu Windows, u kojem se 32-bitni kod izvodi unutar 64-bitnog procesa. Način je omogućen kada se gradi Wine s opcijom '—enable-archs'.
  • Grafički podsustav
    • Zadana konfiguracija koristi svijetlu temu ("Svjetlo"). Možete promijeniti temu pomoću uslužnog programa WineCfg.
      Stabilno izdanje Wine 8.0
    • Grafički upravljački programi (winex11.drv, winemac.drv, wineandroid.drv) pretvaraju se da izvršavaju sistemske pozive na Unix razini i pristupaju upravljačkim programima putem Win32u biblioteke.
      Stabilno izdanje Wine 8.0
    • Implementirana je arhitektura procesora ispisa koja se koristi za uklanjanje izravnih poziva između PE i Unix razina u upravljačkom programu pisača.
    • Direct2D API sada podržava efekte.
    • Direct2D API dodao je mogućnost snimanja i reprodukcije popisa naredbi.
    • Upravljački program za grafički API Vulkan dodao je podršku za specifikaciju Vulkan 1.3.237 (Vulkan 7 je podržan u Wineu 1.2).
  • Direct3D
    • Dodan je novi prevoditelj shadera za HLSL (High-Level Shader Language), implementiran na temelju vkd3d-shader biblioteke. Također na temelju vkd3d-shadera pripremljen je HLSL disassembler i HLSL predprocesor.
    • Implementirano je sučelje Thread Pump predstavljeno u D3DX 10.
    • Direct3D 10 efekti dodaju podršku za mnoge nove izraze.
    • Biblioteka podrške za D3DX 9 sada podržava projekciju teksture Cubemap.
  • Zvuk i video
    • Na temelju GStreamer frameworka implementirana je podrška za filtere za dekodiranje zvuka u MPEG-1 formatu.
    • Dodan je filtar za čitanje strujanja audio i videa u ASF (Advanced Systems Format) formatu.
    • Međusloj biblioteke OpenAL32.dll je uklonjen, umjesto kojeg se sada koristi izvorna Windows biblioteka OpenAL32.dll, isporučena s aplikacijama.
    • Media Foundation Player ima poboljšano otkrivanje vrste sadržaja.
    • Implementirana je mogućnost kontrole brzine prijenosa podataka (Rate control).
    • Poboljšana podrška za zadani mikser i izlagač u Enhanced Video Renderer (EVR).
    • Dodana početna implementacija Writer Encoding API-ja.
    • Poboljšana podrška za učitavanje topologije.
  • Uređaji za unos
    • Značajno poboljšana podrška za vruće uključivanje kontrolera.
    • Predlaže se poboljšana implementacija koda za određivanje upravljača igre, izgrađenog na temelju SDL biblioteke.
    • Poboljšana podrška za učinak povratne sile pri korištenju kotača za igre.
    • Implementirana je mogućnost upravljanja lijevim i desnim vibracijskim motorima pomoću HID Haptic specifikacije.
    • Promijenio je dizajn upravljačke ploče joysticka.
    • Podrška za kontrolere Sony DualShock i DualSense pruža se upotrebom hidraw backend-a.
    • Predložen je WinRT modul Windows.Gaming.Input s implementacijom softverskog sučelja za pristup gamepadima, joysticcima i kotačima za igranje. Za novi API, između ostalog, implementirana je podrška za dojavu o vrućem uključivanju uređaja, taktilne i vibracijske efekte.
  • Internacionalizacija
    • Osigurano je generiranje ispravne lokalne baze podataka u formatu locale.nls iz Unicode CLDR (Unicode Common Locale Data Repository) repozitorija.
    • Funkcije za usporedbu Unicode nizova premještene su tako da koriste bazu podataka i algoritam Windows Sortkey umjesto Unicode Collation algoritma, čime se ponašanje približava sustavu Windows.
    • Većina značajki ima dodanu podršku za gornje raspone Unicode kodova (ravnine).
    • Moguće je koristiti UTF-8 kao ANSI kodiranje.
    • Tablice znakova ažurirane su na specifikaciju Unicode 15.0.0.
  • Tekst i fontovi
    • Povezivanje fontova je omogućeno za većinu sistemskih fontova, rješavajući problem nedostajućih glifova na sustavima s kineskim, korejskim i japanskim lokalitetima.
    • Prerađeni zamjenski font za DirectWrite.
  • Kernel (Windows kernel sučelja)
    • Implementirana je baza podataka ApiSetSchema koja je zamijenila api-ms-* module i smanjila potrošnju diskovnog i adresnog prostora.
    • Atributi DOS datoteke spremaju se na disk u formatu koji je kompatibilan sa Sambom koristeći proširene FS atribute.
  • Značajke umrežavanja
    • Dodana podrška za OCSP (Online Certificate Status Protocol), koji se koristi za provjeru opozvanih certifikata.
    • Raspon značajki EcmaScripta dostupnih u načinu usklađenosti sa standardima JavaScripta je proširen.
    • Implementiran skupljač smeća za JavaScript.
    • Paket motora Gecko uključuje značajke za osobe s invaliditetom.
    • MSHTML dodaje podršku za API za web pohranu, Performance objekt i dodatne objekte za rukovanje događajima.
  • Ugrađene aplikacije
    • Sve ugrađene aplikacije pretvorene su za korištenje biblioteke Common Controls 6, uz podršku za teme dizajna i renderiranje uzimajući u obzir zaslone s visokom gustoćom piksela.
    • Poboljšane mogućnosti za otklanjanje pogrešaka niti u Wine Debuggeru (winedbg).
    • Pomoćni programi registra (REGEDIT i REG) sada podržavaju tip QWORD.
    • Bilježnica je dodala statusnu traku s informacijama o položaju kursora i funkciju Goto Line za skok na određeni broj retka
    • Ugrađena konzola pruža izlaz podataka na OEM kodnoj stranici.
    • Naredba 'query' dodana je uslužnom programu sc.exe (Service Control).
  • Montažni sustav
    • Omogućena je mogućnost izrade izvršnih datoteka u PE formatu za nekoliko arhitektura (na primjer, '—enable-archs=i386,x86_64').
    • Na svim platformama s 32-bitnim dugim tipom, tipovi podataka definirani kao dugi u sustavu Windows sada su redefinirani kao 'dugi' umjesto 'int' u Wineu. U Winelibu se ovo ponašanje može onemogućiti putem definicije WINE_NO_LONG_TYPES.
    • Dodana mogućnost generiranja biblioteka bez korištenja dlltoola (omogućeno postavljanjem opcije '—without-dlltool' u winebuildu).
    • Kako bi se poboljšala učinkovitost učitavanja i smanjila veličina biblioteka bez koda, samo za resurse, winegcc implementira opciju '--data-only'.
  • Miscelanea
    • Ažurirane verzije ugrađenih biblioteka 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.
    • Wine Mono engine s implementacijom .NET platforme ažuriran je na izdanje 7.4.
    • Implementirana je podrška za enkripciju temeljenu na RSA algoritmu i RSA-PSS digitalnim potpisima.
    • Dodana početna verzija UI Automation API-ja.
    • Izvorno stablo uključuje LDAP i vkd3d biblioteke, koje su kompilirane u PE formatu, eliminirajući potrebu za isporukom Unix sklopova ovih biblioteka.
    • OpenAL biblioteka je ukinuta.

Izvor: opennet.ru

Dodajte komentar