Liberazione stabile di Wine 5.0

Dopu un annu di sviluppu è 28 versioni sperimentali prisentatu liberazione stabile di l'implementazione aperta di l'API Win32 - Vinu 5.0, chì includeva più di 7400 cambiamenti. I rializazioni chjave di a nova versione includenu a consegna di moduli Wine integrati in formatu PE, supportu per cunfigurazioni multi-monitor, una nova implementazione di l'API audio XAudio2 è supportu per l'API grafica Vulkan 1.1.

In u vinu cunfirmatu travagliu cumpletu di 4869 (un annu fà 4737) prugrammi per WindowsAltri 4136 prugrammi (4045 un annu fà) funzionanu perfettamente cù paràmetri supplementari è DLL esterne. 3635 prugrammi anu prublemi minori chì ùn interferiscenu micca cù a funzionalità basica di l'applicazioni.

Chjave innovazioni Vinu 5.0:

  • Moduli in formatu PE
    • Cù u cumpilatore MinGW, a maiò parte di i moduli Wine sò avà custruiti in u PE (Portable Executable, utilizatu in Windows) invece di ELF. L'usu di PE risolve u prublema di supportà diversi schemi di prutezzione di copia chì verificanu l'identità di i moduli di sistema nantu à u discu è in memoria;
    • L'eseguibili PE sò avà copiati in u cartulare ~/.wine ($WINEPREFIX) invece di utilizà fugliali DLL fittizi, rendendu l'installazione più simile à l'installazioni reali. Windows, à u costu di cunsumà spaziu di discu supplementu;
    • Moduli cunvertiti in formatu PE ponu aduprà standard wchar Funzioni C è custanti cù Unicode (per esempiu, L"abc");
    • Wine C runtime hà aghjustatu supportu per ligà cù binari custruiti in MinGW, chì hè utilizatu per difettu invece di MinGW runtime quandu custruisce DLLs;
  • Sottusistema graficu
    • Aghjunghje supportu per travaglià cù più monitori è adattatori grafici, cumprese a capacità di cambià dinamicamente i paràmetri;
    • U driver per l'API grafica Vulkan hè stata aghjurnata per rispettà a specificazione Vulkan 1.1.126;
    • In biblioteca WindowsI codecs implementanu a capacità di cunvertisce furmati raster supplementari, cumpresi i furmati cù una paleta indicizzata;
  • Direct3D
    • Quandu eseguite l'applicazioni Direct3D full-screen, a chjama di screen saver hè bluccata;
    • DXGI (DirectX Graphics Infrastructure) hà aghjustatu supportu per informà una applicazione quandu a so finestra hè minimizzata, chì permette à l'applicazione di riduce u rendiment di l'operazioni intensivi di risorse quandu minimizeghja a finestra;
    • Per l'applicazioni chì utilizanu DXGI, hè avà pussibule di cambià trà u modalità full-screen è windowed usendu a combinazione Alt + Enter;
    • E capacità di l'implementazione Direct3D 12 sò state allargate, per esempiu, ci hè issa supportu per cambià trà i modi full-screen è windowed, mudificà i modi di schermu, scaling output è gestione l'intervallu di rimpiazzamentu di u buffer di rendering (intervallu di swap);
    • Gestione mejorata di diverse situazioni borderline, cum'è l'usu di valori di input fora di u range per teste di trasparenza è di prufundità, rendering cù textures riflesse è buffer, è l'usu di oggetti DirectDraw sbagliati. Clip, creendu dispusitivi Direct3 per Windows incorrecte, utilizendu zoni visibili chì i valori minimi di parametri sò uguali à u massimu, etc.
    • Direct3D 8 è 9 furnisce un seguimentu più precisu "brutta» zone di texture caricate;
    • A dimensione di u spaziu di l'indirizzu necessariu quandu si caricanu texturizazioni 3D cumpressi cù u metudu S3TC hè stata ridutta (invece di carricà interamente, e texture sò caricate in pezzi).
    • Interfaccia implementata ID3D11Multithread per prutege e sezioni critiche in applicazioni multi-threaded;
    • Diversi miglioramenti è correzioni in relazione à i calculi di l'illuminazione sò stati fatti per l'applicazioni DirectDraw più vechje;
    • Implementatu chjama supplementari per ottene infurmazioni nantu à i shaders in l'API ShaderReflection;
    • wined3d supporta avà blister Basatu in CPU per u processu di risorse cumpressi;
    • A basa di dati di carte grafiche ricunnisciute in Direct3D hè stata allargata;
    • Aghjunghjite novi chjave di registru HKEY_CURRENT_USER\Software\Wine\Direct3D: "shader_backend" (backend per travaglià cù shaders: "glsl" per GLSL, "arb" per ARB vertex / fragment è "none" per disattivà u supportu di shader), "strict_shader_math" ( 0x1 - attivà, 0x0 - disattivà a cunversione di Direct3D shader). Deprecated a chjave "UseGLSL" (duverebbe aduprà "shader_backend");
  • D3DX
    • U supportu per u mecanismu di cumpressione di texture 3D S3TC (S3 Texture Compression) hè statu implementatu;
    • Aghjunghjite implementazioni currette di operazioni cum'è riempimentu di texture è superfici inmappabili;
    • Diversi miglioramenti è correzioni sò stati fatti à u quadru di creazione effetti visuali;
  • Kernel (interfacce di u kernel Windows)
    • A maiò parte di e funzioni aduprate in Kernel32 sò state spustate
      KernelBase, dopu à i cambiamenti in l'architettura Windows;
    • Capacità di mischjà DLL di 32 è 64 bit in cartulari utilizati per a carica. Assicura chì e librerie chì ùn currispondenu micca à a prufundità di bit attuale sò ignorate (32/64), in casu più longu u percorsu hè pussibule truvà una biblioteca chì hè curretta per a prufundità di bit attuale;
    • Per i cunduttori di u dispositivu, l'emulazione di l'oggetti di u kernel hè stata migliurata;
    • Oggetti di sincronizazione implementati chì travaglianu à u livellu di u kernel, cum'è spin locks, mutexes veloci è variabili attaccati à una risorsa;
    • Assicura chì l'applicazioni sò infurmati currettamente di u statutu di a bateria;
  • Interfaccia d'utilizatore è Integrazione Desktop
    • E finestre minimizate sò avà visualizate cù una barra di tìtulu invece di un'icona di stile Windows 3.1;
    • Aggiunti novi stili di buttone SplitButton (buttone cù una lista di azzione di azzione) è Ligami di cumanda (ligami in scatuli di dialogu utilizati per passà à a tappa dopu);
    • I ligami simbolichi sò stati creati per i cartulare "Downloads" è "Templates", chì puntanu à i repertorii currispundenti nantu à i sistemi Unix;
  • Input Devices
    • À l'iniziu, i drivers di u dispositivu Plug & Play necessarii sò stallati è caricati;
    • Supportu migliuratu per i cuntrolli di ghjocu, cumprese un mini-joystick (interruttore di cappellu), volante, pedali di gas è frenu.
    • U supportu per u vechju hè statu interrottu Linux API d'interazione di joystick aduprata in i kernel Linux finu à a versione 2.2;
  • .net
    • U mutore Mono hè statu aggiornatu à a versione 4.9.4 è avà include parti di u framework. Windows Fundazione di Presentazione (WPF);
    • Aggiunta l'abilità di installà add-ons cù Mono è Gecko in un repertoriu cumuni, pusendu i schedari in a ghjerarchia /usr/share/wine invece di cupià à novi prefissi;
  • Funzioni di rete
    • U mutore di navigatore Wine Gecko, chì hè utilizatu in a biblioteca MSHTML, hè stata aghjurnata per liberà 2.47.1. U supportu per i novi API HTML hè statu implementatu;
    • MSHTML supporta avà elementi SVG;
    • Aghjunghjite assai novi funzioni VBScript (per esempiu, i gestori di errore è eccezzioni, Hour, Day, Month, String, LBound, RegExp.Replace, РScriptTypeInfo_* è ScriptTypeComp_Bind * funzioni, etc.);
    • Fornitu a preservazione di u statu di codice in VBScript è JScript (persistenza di script);
    • Aghjunghje una implementazione iniziale di u serviziu HTTP (WinHTTP) è l'API assuciata (HTTPAPI) per l'applicazioni di u cliente è di u servitore chì mandanu è ricevenu richieste cù u protocolu HTTP;
    • Implementatu a capacità di ottene paràmetri di proxy HTTP via DHCP;
    • Aghjunghje supportu per a redirezzione di e richieste di autentificazione attraversu u serviziu Microsoft Passport;
  • Criptografia
    • Supportu implementatu per e chjave criptografiche di curva ellittica (ECC) quandu si usa GnuTLS;
    • Aggiunta l'abilità di impurtà chjave è certificati da i schedari in formatu PFX;
    • Aghjunghje supportu per u schema di generazione di chjave basatu nantu à a password PBKDF2;
  • Testu è fonti
    • L'implementazione di l'API DirectWrite hà aghjuntu un supportu per e funzioni OpenType ligati à posizionamentu di glifi, chì sò attivati ​​per difettu per u stilu latinu, cumpresu u kerning;
    • Sicurezza mejorata per u processu di dati di fonti cuntrollanu a correttezza di diverse tabelle di dati prima di usà;
    • L'interfaccia di DirectWrite sò state purtate in linea cù l'ultime SDK;
  • Sonu è video
    • Una nova implementazione di l'API di sonu hè stata pruposta XAudio2, custruitu nantu à a basa di u prugettu Faudio. Utilizà FAudio in Wine permette di ottene una qualità di sonu più altu in i ghjoculi è aduprà funzioni cum'è u mischju di volumi è effetti di sonu avanzati;
    • Un gran numaru di novi chjamati sò stati aghjuntu à l'implementazione di u quadru di a Fundazione Media, cumpresu u supportu per file asincrone integrate è persunalizate, API Source Reader, Media Session, etc.
    • U filtru di cattura video hè stata cambiata per utilizà l'API v4l2 invece di l'API v4l1, chì hà allargatu a gamma di càmera supportata;
    • I decodificatori AVI, MPEG-I è WAVE integrati sò stati eliminati, invece di quale u sistema GStreamer o QuickTime sò oghji utilizati;
    • Aggiuntu un subset di API di cunfigurazione VMR7;
    • Aghjunghje supportu per aghjustà u voluminu di i canali individuali à i cunduttori di sonu;
  • Internaziunalizazione
    • Tavule Unicode aghjurnata à a versione 12.1.0;
    • Supportu implementatu per a normalizazione Unicode;
    • Fornitu installazione automatica di a regione geografica (HKEY_CURRENT_USER\Control Panel\International\Geo) basatu annantu à u locale attuale;
  • RPC/COM
    • Aghjunghje supportu per strutture cumplessi è array à typelib;
    • Aggiunta l'implementazione iniziale di a biblioteca di runtime Windows script;
    • Aggiunta implementazione iniziale di a libreria ADO (Microsoft ActiveX Data Objects);
  • Installatori
    • U supportu per a consegna di patch (Patch Files) hè statu implementatu per l'installatore MSI;
    • In l'utilità WUSA (Windows L'installatore autonomu di l'aghjurnamentu) permette avà d'installà l'aghjurnamenti in furmatu .MSU;
  • piattaforma ARM
    • Per l'architettura ARM64, u supportu per stack unwinding hè statu aghjuntu à ntdll. Aghjunghje supportu per a cunnessione di e librerie esterne di libunwind;
    • Per l'architettura ARM64, u supportu per i proxy senza saldatura hè statu implementatu per l'interfacce d'ughjettu;
  • Strumenti di sviluppu / Winelib
    • Aggiunta a capacità di utilizà u debugger da Visual Studio per debug remotamente l'applicazioni in esecuzione in Wine;
    • A biblioteca DBGENG (Debug Engine) hè stata implementata parzialmente;
    • Raccoltu per Windows L'eseguibili ùn dipendenu più da libwine, ciò chì permette di esse eseguiti in Windows nisuna dipendenza supplementaria;
    • Aggiunta l'opzione "--sysroot" à u compilatore di risorse è u compilatore IDL per determinà a strada per i fugliali di l'intestazione;
    • Aghjunghjite l'opzioni '—target', '—wine-objdir' à winegcc
      '—winebuild' è '-fuse-ld', chì simplificà a creazione di l'ambienti per a cumpilazione incruciata;
  • Applicazioni integrate
    • Implementatu una utilità CHCP per cunfigurà a codificazione di a cunsola;
    • L'utilità MSIDB per a manipulazione di basa di dati in u formatu MSI hè stata implementata;
  • Ottimizazione di e prestazioni
    • Diverse funzioni di timing sò state migrate per utilizà funzioni di timer di u sistema d'altu rendiment, riducendu l'overhead in u ciclu di rende di parechji ghjochi;
    • Aggiunta a capacità di utilizà Ext4 in FS regime travaglià senza sensibilità di casu;
    • A prestazione di processà un gran numaru d'elementi in i dialoghi di visualizazione di lista chì operanu in u modu LBS_NODATA hè stata ottimizzata;
    • Aggiunta una implementazione più rapida di i blocchi SRW (Slim Reader/Writer) per Linux, traduttu in Futex;
  • Dipendenze esterne
    • Per assemblà moduli in u formatu PE, u MinGW-w64 cross-compiler hè utilizatu;
    • L'implementazione di XAudio2 richiede a libreria FAudio;
    • Per seguità i cambiamenti di i schedari nantu à i sistemi BSD
      a biblioteca Inotify hè aduprata;
    • Per trattà l'eccezzioni nantu à a piattaforma ARM64, a biblioteca Unwind hè necessaria;
    • Invece di Video4Linux1 avà richiede a biblioteca Video4Linux2.

Source: opennet.ru

Cumprate un hosting affidabile per i siti cù prutezzione DDoS, servitori VPS VDS 🔥 Cumprate un hosting di siti web affidabile cù prutezzione DDoS, servitori VPS VDS | ProHoster