Dopu un annu di sviluppu è 28 versioni sperimentali, una liberazione stabile di l'implementazione aperta di l'API Win32 - Wine 8.0, chì incorpore più di 8600 XNUMX cambiamenti, hè stata presentata. U successu chjave in a nova versione marca u cumpletu di u travagliu nantu à a traduzzione di moduli Wine in u formatu.
Wine hà cunfirmatu u funziunamentu cumpletu di 5266 (un annu fà 5156, dui anni fà 5049) prugrammi per Windows, un altru 4370 (un annu fà 4312, dui anni fà 4227) i prugrammi funzionanu perfettamente cù paràmetri supplementari è DLL esterni. I prugrammi 3888 (3813 un annu fà, 3703 dui anni fà) anu prublemi minuri operativi chì ùn interferiscenu micca cù l'usu di e funzioni principali di l'applicazioni.
Innuvazioni chjave in Wine 8.0:
- Moduli in formatu PE
- Dopu quattru anni di travagliu, a cunversione di tutte e biblioteche DLL per utilizà u formatu di file eseguibile PE (Portable Executable, utilizatu in Windows) hè stata cumpletata. L'usu di PE permette l'usu di debuggers dispunibuli per Windows è risolve i prublemi cù u sustegnu di diversi schemi di prutezzione di copia chì verificanu l'identità di i moduli di u sistema in u discu è in memoria. I prublemi cù l'esecuzione di l'applicazioni 32-bit in host 64-bit è l'applicazioni x86 in i sistemi ARM sò stati risolti ancu. Trà i travaglii rimanenti chì sò previsti per esse risolti in successive versioni sperimentali di Wine 8.x, ci hè una transizione di moduli à l'interfaccia di chjama di u sistema NT invece di fà chjamate dirette trà i strati PE è Unix.
- Hè statu implementatu un gestore di chjama di u sistema speciale, utilizatu per traduce e chjama da PE à biblioteche Unix per riduce l'overhead di eseguisce una chjama di sistema NT cumpleta. Per esempiu, l'ottimisazione hà permessu di riduce a degradazione di u rendiment quandu si usanu e librerie OpenGL è Vulkan.
- L'applicazioni Winelib conservanu a capacità d'utilizà assemblee miste Windows / Unix di biblioteche ELF (.dll.so), ma tali applicazioni senza biblioteche 32-bit ùn susteneranu micca e funziunalità dispunibuli attraversu l'interfaccia di chjama di u sistema NT, cum'è WoW64.
- WoW64
- I strati WoW64 (64-bit Windows-on-Windows) sò furniti per tutte e biblioteche Unix, chì permettenu à i moduli di 32-bit in formatu PE per accede à e librerie Unix 64-bit, chì, dopu avè sbarazzatu di e chjama dirette PE / Unix, farà. pussibule eseguisce applicazioni Windows 32-bit senza installà librerie Unix 32-bit.
- In l'absenza di un caricatore di vinu 32-bit, l'applicazioni 32-bit ponu eseguisce in u novu modu sperimentale di Windows-like WoW64, in quale u codice 32-bit corre in un prucessu di 64-bit. U modu hè attivatu quandu si custruisce Wine cù l'opzione '-enable-archs'.
- Sottusistema graficu
- A cunfigurazione predeterminata usa u tema di luce ("Luce"). Pudete cambià u tema cù l'utilità WineCfg.
- I cunduttori grafici (winex11.drv, winemac.drv, wineandroid.drv) sò cunvertiti per eseguisce e chjama di u sistema à u livellu Unix è accede à i cunduttori attraversu a biblioteca Win32u.
- L'architettura di u Processore di Stampa hè stata implementata è hè aduprata per eliminà e chjama diretta trà i livelli PE è Unix in u driver di l'impresora.
- L'API Direct2D supporta avà l'effetti.
- L'API Direct2D hà aghjustatu l'abilità di registrà è ghjucà liste di cumandamenti.
- U driver per l'API grafica Vulkan hà aghjustatu u supportu per a specificazione Vulkan 1.3.237 (Vulkan 7 hè stata supportata in Wine 1.2).
- A cunfigurazione predeterminata usa u tema di luce ("Luce"). Pudete cambià u tema cù l'utilità WineCfg.
- Direct3D
- Aggiuntu un novu compilatore di shader per u HLSL (High-Level Shader Language), implementatu basatu annantu à a biblioteca vkd3d-shader. Basatu ancu in vkd3d-shader, un disassembler HLSL è un preprocessore HLSL sò stati preparati.
- L'interfaccia Thread Pump introdotta in D3DX 10 hè stata implementata.
- L'effetti Direct3D 10 aghjunghjenu supportu per parechje espressioni novi.
- A biblioteca di supportu per D3DX 9 supporta avà a prughjezzione di texture Cubemap.
- Sonu è video
- Basatu nantu à u framework GStreamer, u supportu per i filtri per a decodificazione di l'audio in u formatu MPEG-1 hè statu implementatu.
- Aggiuntu un filtru per leghje streaming audio è video in u furmatu ASF (Advanced Systems Format).
- A biblioteca-layer intermediate OpenAL32.dll hè stata sguassata, invece chì a libreria nativa di Windows OpenAL32.dll, furnita cù applicazioni, hè issa aduprata.
- Media Foundation Player hà migliuratu a rilevazione di u tipu di cuntenutu.
- A capacità di cuntrullà a tarifa di trasferimentu di dati (Control di Rate) hè stata implementata.
- Supportu migliuratu per u mixer predeterminatu è u presentatore in u Video Renderer Enhanced (EVR).
- Aggiunta implementazione iniziale di Writer Encoding API.
- Supportu per u caricatore di topologia mejoratu.
- Input Devices
- Supportu significativamente migliuratu per u hot plugg di i controller.
- Hè pruposta una implementazione mejorata di u codice per a determinazione di i volanti di u ghjocu, custruitu nantu à a basa di a biblioteca SDL.
- Supportu migliuratu per l'effettu di feedback di a Forza quandu utilizate roti di ghjocu.
- A capacità di cuntrullà i mutori di vibrazione di sinistra è di diritta utilizendu a specificazione HID Haptic hè stata implementata.
- Cambiatu u disignu di u pannellu di cuntrollu di joystick.
- U supportu per i controller Sony DualShock è DualSense hè furnitu cù l'usu di u backend hidraw.
- U modulu WinRT Windows.Gaming.Input hè prupostu cù l'implementazione di una interfaccia di software per accede à gamepads, joysticks è roti di ghjocu. Per a nova API, tra l'altri cose, hè implementatu u supportu per a notificazione di u hot pluggging di i dispositi, l'effetti tattili è di vibrazione.
- Internaziunalizazione
- A generazione di a basa di dati locale curretta in u formatu locale.nls da u repository Unicode CLDR (Unicode Common Locale Data Repository) hè assicurata.
- E funzioni di paragone di stringa Unicode sò state spustate per utilizà a basa di dati è l'algoritmu Sortkey di Windows invece di l'algoritmu Unicode Collation, avvicinandu u cumpurtamentu più vicinu à Windows.
- A maiò parte di e funzioni anu aghjustatu supportu per i intervalli di codice Unicode superiore (aerei).
- Hè pussibule aduprà UTF-8 cum'è codificazione ANSI.
- I tavule di caratteri sò stati aghjurnati à a specificazione Unicode 15.0.0.
- Testu è fonti
- U ligame di fonti hè statu attivatu per a maiò parte di i fonti di u sistema, risolvendu u prublema di glifi mancanti in sistemi cù locali cinesi, coreani è giapponese.
- Rielaborazione di fontback fallback in DirectWrite.
- Kernel (Interfacce Kernel Windows)
- A basa di dati ApiSetSchema hè stata implementata, chì rimpiazzà i moduli api-ms-* è riduce u cunsumu di u spaziu di discu è indirizzu.
- L'attributi di u schedariu DOS sò salvati nantu à u discu in un formatu compatibile cù Samba utilizendu attributi FS estesi.
- Funzioni di rete
- Supportu aghjuntu per l'OCSP (Protokollu di Status di Certificatu Online), utilizatu per verificà i certificati revocati.
- A gamma di funzioni EcmaScript dispunibuli in u modu di rispettu di i standard JavaScript hè stata allargata.
- Implementatu un cullettore di basura per JavaScript.
- U pacchettu di u mutore Gecko include caratteristiche per e persone cù disabilità.
- MSHTML aghjusta supportu per l'API Web Storage, l'ughjettu Performance, è l'oggetti supplementari per a gestione di l'avvenimenti.
- Applicazioni integrate
- Tutte l'applicazioni integrate sò state cunvertite per utilizà a libreria Common Controls 6, cù supportu per i temi di cuncepimentu è u rendering tenendu in contu schermi cù alta densità di pixel.
- Capacità rinfurzate per debugging threads in u Wine Debugger (winedbg).
- L'utilità di registru (REGEDIT è REG) supportanu avà u tipu QWORD.
- Notepad hà aghjustatu una barra di statutu cù infurmazioni nantu à a pusizione di u cursore è una funzione Goto Line per saltà à un numeru di linea specifica.
- A cunsola integrata furnisce l'output di dati in a pagina di codice OEM.
- U cumandimu "query" hè statu aghjuntu à l'utilità sc.exe (Service Control).
- Sistema di assemblea
- A capacità di custruisce fugliali eseguibili in formatu PE per parechje architetture hè stata furnita (per esempiu, '—enable-archs=i386,x86_64').
- Nantu à tutte e plataforme cù u tipu di 32-bit long, i tipi di dati definiti cum'è longu in Windows sò avà ridefiniti cum'è "long" invece di "int" in Wine. In Winelib, stu cumpurtamentu pò esse disattivatu via a definizione WINE_NO_LONG_TYPES.
- Aggiunta a capacità di generà biblioteche senza usà dlltool (attivatu cù l'opzione '—without-dlltool' in winebuild).
- Per migliurà l'efficienza di carica è riduce a dimensione di biblioteche senza codice, solu risorse, winegcc implementa l'opzione '--data-only'.
- Разное
- Versioni aghjurnate di e librerie integrate 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, LibXslt 1.2.13, Z.lib.
- U mutore Wine Mono cù l'implementazione di a piattaforma .NET hè stata aghjurnata per liberà 7.4.
- U supportu per a criptografia basatu annantu à l'algoritmu RSA è a firma digitale RSA-PSS hè stata implementata.
- Aggiunta a versione iniziale di UI Automation API.
- L'arbulu di l'origine include e librerie LDAP è vkd3d, chì sò cumpilati in formatu PE, eliminendu a necessità di furnisce assemblee Unix di queste librerie.
- A biblioteca OpenAL hè stata interrotta.
Source: opennet.ru