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, koje je uključilo više od 8600 izmjena. Ključno dostignuće u novoj verziji označava završetak posla na prevođenju Wine modula u format.

Wine je potvrdio potpuni 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 sa dodatnim postavkama i eksternim DLL-ovima. 3888 programa (3813 prije godinu dana, 3703 prije dvije godine) imaju manje operativne probleme koji ne ometaju korištenje glavnih funkcija aplikacija.

Ključne inovacije u Wine 8.0:

  • Moduli u PE formatu
    • Nakon četiri godine rada, završena je konverzija svih DLL biblioteka u format izvršne datoteke PE (Portable Executable, koji se koristi u Windowsima). Upotreba PE omogućava korištenje programa za otklanjanje grešaka dostupnih za Windows i rješava probleme s podrškom različitih šema zaštite od kopiranja koje provjeravaju identitet sistemskih modula na disku iu memoriji. Problemi sa pokretanjem 32-bitnih aplikacija na 64-bitnim hostovima i x86 aplikacijama na ARM sistemima su također riješeni. Među preostalim zadacima koji se planiraju riješiti u narednim eksperimentalnim izdanjima Wine 8.x, nalazi se prelazak modula na NT interfejs sistemskog poziva umjesto direktnih poziva između PE i Unix slojeva.
    • Implementiran je poseban menadžer sistemskih poziva koji se koristi za prevođenje poziva iz PE u Unix biblioteke kako bi se smanjili troškovi izvršavanja punog NT sistemskog poziva. Na primjer, optimizacija je omogućila smanjenje degradacije performansi kada se koriste OpenGL i Vulkan biblioteke.
    • 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 preko NT interfejsa sistemskog poziva, kao što je WoW64.
  • WoW64
    • WoW64 (64-bitni Windows-na-Windows) slojevi su obezbeđeni za sve Unix biblioteke, omogućavajući 32-bitnim modulima u PE formatu da pristupe 64-bitnim Unix bibliotekama, koje će, nakon što se oslobode direktnih PE/Unix poziva, učiniti da moguće izvršiti 32-bitne Windows aplikacije bez instaliranja 32-bitnih Unix biblioteka.
    • U nedostatku 32-bitnog Wine loadera, 32-bitne aplikacije mogu raditi u novom eksperimentalnom načinu WoW64 sličnom Windows-u, u kojem se 32-bitni kod pokreće unutar 64-bitnog procesa. Režim je omogućen kada se gradi Wine sa opcijom '—enable-archs'.
  • Grafički podsistem
    • Podrazumevana konfiguracija koristi svetlosnu temu (“Svetlo”). Možete promijeniti temu pomoću uslužnog programa WineCfg.
      Stabilno izdanje Wine 8.0
    • Grafički drajveri (winex11.drv, winemac.drv, wineandroid.drv) se konvertuju da izvršavaju sistemske pozive na nivou Unix-a i pristupaju drajverima preko Win32u biblioteke.
      Stabilno izdanje Wine 8.0
    • Arhitektura procesora za štampanje je implementirana i koristi se za eliminisanje direktnih poziva između PE i Unix nivoa u drajveru štampača.
    • Direct2D API sada podržava efekte.
    • Direct2D API je dodao mogućnost snimanja i reprodukcije lista komandi.
    • Drajver za Vulkan grafički API je dodao podršku za specifikaciju Vulkan 1.3.237 (Vulkan 7 je podržan u Wine 1.2).
  • Direct3D
    • Dodan je novi kompajler shadera za HLSL (High-Level Shader Language), implementiran na bazi vkd3d-shader biblioteke. Takođe na bazi vkd3d-shadera, pripremljeni su HLSL disambler i HLSL preprocesor.
    • Interfejs Thread Pump uveden u D3DX 10 je implementiran.
    • Direct3D 10 efekti dodaju podršku za mnoge nove izraze.
    • Biblioteka podrške za D3DX 9 sada podržava Cubemap projekciju teksture.
  • Zvuk i video
    • Na osnovu okvira GStreamer implementirana je podrška za filtere za dekodiranje zvuka u MPEG-1 formatu.
    • Dodan filter za čitanje streaming audio i video zapisa u ASF (Advanced Systems Format) formatu.
    • Srednji sloj biblioteke OpenAL32.dll je uklonjen, umjesto kojeg se sada koristi izvorna Windows biblioteka OpenAL32.dll, isporučena s aplikacijama.
    • Media Foundation Player je poboljšao detekciju tipa sadržaja.
    • Implementirana je mogućnost kontrole brzine prijenosa podataka (Rate control).
    • Poboljšana podrška za podrazumevani mikser i prezenter u Enhanced Video Renderer (EVR).
    • Dodata 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 hot plugging kontrolera.
    • Predložena je poboljšana implementacija koda za određivanje volana za igru, izgrađena na bazi SDL biblioteke.
    • Poboljšana podrška za efekat povratne sprege Force kada koristite točkove za igre.
    • Implementirana je mogućnost upravljanja lijevim i desnim vibracionim motorima koristeći HID Haptic specifikaciju.
    • Promijenjen dizajn kontrolne ploče džojstika.
    • Podrška za Sony DualShock i DualSense kontrolere je obezbeđena korišćenjem hidraw backend-a.
    • WinRT modul Windows.Gaming.Input je predložen sa implementacijom softverskog interfejsa za pristup gamepadovima, džojsticima i točkovima za igre. Za novi API, između ostalog, implementirana je podrška za obavještavanje o vrućem uključivanju uređaja, taktilnim i vibracijskim efektima.
  • Internacionalizacija
    • Osigurano je generiranje ispravne baze podataka lokalizacije u formatu locale.nls iz Unicode CLDR (Unicode Common Locale Data Repository) spremišta.
    • Funkcije poređenja Unicode stringova premještene su na korištenje baze podataka i Windows algoritma za razvrstavanje umjesto Unicode algoritma Collation, čime se ponašanje približava Windowsu.
    • Većina funkcija ima dodatnu podršku za gornji raspon Unicode kodova (ravnine).
    • Moguće je koristiti UTF-8 kao ANSI kodiranje.
    • Tabele znakova su ažurirane na Unicode 15.0.0 specifikaciju.
  • Tekst i fontovi
    • Povezivanje fontova je omogućeno za većinu sistemskih fontova, rješavajući problem nedostajućih glifova na sistemima sa kineskim, korejskim i japanskim lokacijama.
    • Prerađen rezervni font u DirectWrite-u.
  • Kernel (Windows Kernel Interface)
    • Implementirana je baza podataka ApiSetSchema koja je zamijenila api-ms-* module i smanjila potrošnju diskovnog i adresnog prostora.
    • Atributi DOS datoteke se pohranjuju na disk u formatu kompatibilnom sa Samba koristeći proširene FS atribute.
  • Značajke umrežavanja
    • Dodata podrška za OCSP (Online Certificate Status Protocol), koji se koristi za provjeru opozvanih certifikata.
    • Raspon funkcija EcmaScript dostupnih u načinu usklađenosti sa JavaScript standardima je proširen.
    • Implementirao sakupljač smeća za JavaScript.
    • Paket motora Gecko uključuje funkcije za osobe sa invaliditetom.
    • MSHTML dodaje podršku za Web Storage API, objekt Performance i dodatne objekte za rukovanje događajima.
  • Ugrađene aplikacije
    • Sve ugrađene aplikacije su konvertovane da koriste biblioteku Common Controls 6, sa podrškom za teme dizajna i renderovanje uzimajući u obzir ekrane sa velikom gustinom piksela.
    • Poboljšane mogućnosti za otklanjanje grešaka u nitima u Wine Debugger-u (winedbg).
    • Pomoćni programi registra (REGEDIT i REG) sada podržavaju tip QWORD.
    • Notepad je dodao statusnu traku s informacijama o poziciji kursora i funkciju Goto Line za skok na određeni broj reda
    • Ugrađena konzola pruža izlaz podataka u OEM kodnoj stranici.
    • Komanda 'query' je dodana uslužnom programu sc.exe (Kontrola usluga).
  • Sistem montaže
    • 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 sa 32-bitnim long tipom, tipovi podataka definisani kao long u Windowsu sada su redefinisani kao 'long' umjesto 'int' u Wine-u. U Winelibu, ovo ponašanje se može onemogućiti preko WINE_NO_LONG_TYPES definicije.
    • Dodata je mogućnost generiranja biblioteka bez korištenja dlltool-a (omogućeno postavljanjem opcije '—without-dlltool' u winebuild-u).
    • Da bi se poboljšala efikasnost učitavanja i smanjila veličina biblioteka bez koda, samo resursa, winegcc implementira opciju '--data-only'.
  • Разное
    • 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, Lib1.1.37b.1.2.13 ltXNUMX.
    • Wine Mono engine sa implementacijom .NET platforme je ažuriran u izdanje 7.4.
    • Implementirana je podrška za enkripciju zasnovanu na RSA algoritmu i RSA-PSS digitalnim potpisima.
    • Dodata početna verzija API-ja za automatizaciju korisničkog sučelja.
    • Izvorno stablo uključuje LDAP i vkd3d biblioteke, koje su kompajlirane u PE formatu, eliminišući potrebu za isporukom Unix sklopova ovih biblioteka.
    • OpenAL biblioteka je ukinuta.

izvor: opennet.ru

Dodajte komentar