Alliberament estable de Wine 5.0

Després d'un any de desenvolupament i 28 versions experimentals presentat llançament estable d'una implementació oberta de l'API Win32 - Vi 5.0, que va incloure més de 7400 canvis. Els èxits clau de la nova versió inclouen el lliurament de mòduls Wine integrats en format PE, suport per a configuracions de diversos monitors, una nova implementació de l'API d'àudio XAudio2 i suport per a l'API gràfica Vulkan 1.1.

En vi confirmat treball complet de 4869 (fa un any 4737) programes per a WindowsAltres 4136 programes (4045 fa un any) funcionen perfectament amb configuracions addicionals i DLL externes. 3635 programes tenen problemes menors que no interfereixen amb la funcionalitat bàsica de les aplicacions.

Clau innovacions Vi 5.0:

  • Mòduls en format PE
    • Amb el compilador MinGW, la majoria dels mòduls de Wine ara estan integrats al PE (Portable Executable, utilitzat en Windows) en lloc d'ELF. L'ús de PE resol el problema de donar suport a diversos esquemes de protecció contra còpies que verifiquen la identitat dels mòduls del sistema al disc i a la memòria;
    • Els executables de PE ara es copien al directori ~/.wine ($WINEPREFIX) en comptes d'utilitzar fitxers DLL de rebuig, cosa que fa que la instal·lació sigui més similar a les instal·lacions reals. Windows, a costa de consumir espai de disc addicional;
    • Els mòduls convertits al format PE poden utilitzar l'estàndard wchar Funcions i constants C amb Unicode (per exemple, L"abc");
    • El temps d'execució Wine C ha afegit suport per enllaçar amb binaris construïts a MinGW, que s'utilitza per defecte en lloc del temps d'execució MinGW quan es construeixen DLL;
  • Subsistema gràfic
    • S'ha afegit suport per treballar amb diversos monitors i adaptadors de gràfics, inclosa la possibilitat de canviar dinàmicament la configuració;
    • El controlador de l'API de gràfics Vulkan s'ha actualitzat per complir amb l'especificació Vulkan 1.1.126;
    • A la biblioteca WindowsEls còdecs implementen la capacitat de convertir formats ràster addicionals, inclosos els formats amb una paleta indexada;
  • Direct3D
    • Quan s'executen aplicacions Direct3D a pantalla completa, es bloqueja la trucada de l'estalvi de pantalla;
    • DXGI (DirectX Graphics Infrastructure) ha afegit suport per informar una aplicació quan la seva finestra es redueix al mínim, la qual cosa permet que l'aplicació redueixi el rendiment de les operacions intensives en recursos quan es minimitza la finestra;
    • Per a les aplicacions que utilitzen DXGI, ara és possible canviar entre el mode de pantalla completa i el de finestra mitjançant la combinació Alt+Enter;
    • Les capacitats de la implementació de Direct3D 12 s'han ampliat, per exemple, ara hi ha suport per canviar entre els modes de pantalla completa i de finestra, canviar els modes de pantalla, escalar la sortida i gestionar l'interval de substitució del buffer de renderització (interval d'intercanvi);
    • Gestió millorada de diverses situacions límit, com ara l'ús de valors d'entrada fora de rang per a proves de transparència i profunditat, renderització amb textures reflectides i buffers i l'ús d'objectes DirectDraw incorrectes Clipper, creant dispositius Direct3 per a finestres incorrectes, utilitzant àrees visibles els valors mínims dels paràmetres són iguals als màxims, etc.
    • Direct3D 8 i 9 proporcionen un seguiment més precís "brut» zones de textures carregades;
    • La mida de l'espai d'adreces necessari quan es carreguen textures 3D comprimides amb el mètode S3TC s'ha reduït (en lloc de carregar-se completament, les textures es carreguen en trossos).
    • Interfície implementada ID3D11Multithread per protegir les seccions crítiques en aplicacions multifils;
    • S'han fet diverses millores i correccions relacionades amb els càlculs d'il·luminació per a aplicacions de DirectDraw més antigues;
    • S'han implementat trucades addicionals per obtenir informació sobre shaders a l'API ShaderReflection;
    • wined3d ara és compatible ampolla Basat en CPU per processar recursos comprimits;
    • S'ha ampliat la base de dades de targetes gràfiques reconegudes a Direct3D;
    • S'han afegit noves claus de registre HKEY_CURRENT_USER\Software\Wine\Direct3D: "shader_backend" (backend per treballar amb shaders: "glsl" per a GLSL, "arb" per a vèrtex/fragment ARB i "none" per desactivar el suport de shader), "strict_shader_math" ( 0x1 - activar, 0x0 - desactivar la conversió d'ombres Direct3D). S'ha obsolet la clau "UseGLSL" (hauria d'utilitzar "shader_backend");
  • D3DX
    • S'ha implementat el suport per al mecanisme de compressió de textures 3D S3TC (S3 Texture Compression);
    • S'han afegit implementacions correctes d'operacions com l'ompliment de textures i superfícies no mapeables;
    • S'han fet diverses millores i correccions al marc de creació efectes visuals;
  • Nucli (interfícies del nucli) Windows)
    • La majoria de les funcions utilitzades al Kernel32 s'han mogut a
      KernelBase, després dels canvis en l'arquitectura Windows;
    • Capacitat de barrejar DLL de 32 i 64 bits als directoris utilitzats per a la càrrega. Assegura que les biblioteques que no coincideixen amb la profunditat de bits actual s'ignoren (32/64), en cas que més al llarg del camí sigui possible trobar una biblioteca que sigui correcta per a la profunditat de bits actual;
    • Per als controladors de dispositiu, s'ha millorat l'emulació dels objectes del nucli;
    • S'han implementat objectes de sincronització que treballen a nivell del nucli, com ara bloquejos de rotació, mutex ràpid i variables adjuntes a un recurs;
    • Assegura que les aplicacions estan correctament informades sobre l'estat de la bateria;
  • Interfície d'usuari i integració d'escriptori
    • Les finestres minimitzades ara es mostren mitjançant una barra de títol en lloc d'una icona d'estil Windows 3.1;
    • S'han afegit nous estils de botons SplitButton (botó amb una llista desplegable d'accions) i Enllaços de comandaments (enllaços als quadres de diàleg utilitzats per passar a la següent etapa);
    • S'han creat enllaços simbòlics per a les carpetes 'Descàrregues' i 'Plantilles', que apunten als directoris corresponents dels sistemes Unix;
  • Dispositius d’entrada
    • A l'inici, s'instal·len i es carreguen els controladors de dispositiu Plug & Play necessaris;
    • Suport millorat per als controladors de joc, inclòs un mini-joystick (interruptor de barret), volant, pedals de gas i fre.
    • S'ha interromput el suport per a l'antic Linux API d'interacció del joystick utilitzada als nuclis Linux fins a la versió 2.2;
  • . NET
    • El motor Mono s'ha actualitzat a la versió 4.9.4 i ara inclou parts del framework. Windows Fundació de Presentacions (WPF);
    • S'ha afegit la possibilitat d'instal·lar complements amb Mono i Gecko en un directori comú, col·locant fitxers a la jerarquia /usr/share/wine en lloc de copiar-los a nous prefixos;
  • Funcions de xarxa
    • El motor del navegador Wine Gecko, que s'utilitza a la biblioteca MSHTML, s'ha actualitzat per al llançament 2.47.1. S'ha implementat el suport per a noves API HTML;
    • MSHTML ara admet elements SVG;
    • S'han afegit moltes funcions de VBScript noves (per exemple, controladors d'errors i excepcions, funcions Hora, Dia, Mes, String, LBound, RegExp.Replace, РScriptTypeInfo_* i ScriptTypeComp_Bind*, etc.);
    • Preservació de l'estat del codi en VBScript i JScript (persistència de l'script);
    • S'ha afegit una implementació inicial del servei HTTP (WinHTTP) i l'API associada (HTTPAPI) per a aplicacions de client i servidor que envien i reben peticions mitjançant el protocol HTTP;
    • S'ha implementat la possibilitat d'obtenir la configuració del servidor intermediari HTTP mitjançant DHCP;
    • S'ha afegit suport per redirigir les sol·licituds d'autenticació mitjançant el servei Microsoft Passport;
  • Criptografia
    • Suport implementat per a claus criptogràfiques de corba el·líptica (ECC) quan s'utilitza GnuTLS;
    • S'ha afegit la possibilitat d'importar claus i certificats des de fitxers en format PFX;
    • S'ha afegit suport per a l'esquema de generació de claus basat en la contrasenya PBKDF2;
  • Text i tipus de lletra
    • La implementació de l'API de DirectWrite ha afegit suport per a les funcions d'OpenType relacionades posicionament de glifs, que estan habilitats per defecte per a l'estil llatí, inclòs el kerning;
    • Seguretat millorada per al processament de dades de tipus de lletra comprovant la correcció de diverses taules de dades abans d'utilitzar-les;
    • Les interfícies DirectWrite s'han adaptat a l'últim SDK;
  • So i vídeo
    • S'ha proposat una nova implementació de l'API de so XAudio2, construït sobre la base del projecte FAudi. L'ús de FAudio in Wine us permet aconseguir una qualitat de so més alta als jocs i utilitzar funcions com ara la mescla de volum i efectes de so avançats;
    • S'ha afegit un gran nombre de trucades noves a la implementació del marc de Media Foundation, inclòs el suport per a les cues asíncrones integrades i personalitzades, l'API del lector de fonts, la sessió de mitjans, etc.
    • El filtre de captura de vídeo s'ha canviat per utilitzar l'API v4l2 en comptes de l'API v4l1, que ha ampliat la gamma de càmeres compatibles;
    • S'han eliminat els descodificadors AVI, MPEG-I i WAVE integrats, en comptes dels quals ara s'utilitza el sistema GStreamer o QuickTime;
    • S'ha afegit un subconjunt d'API de configuració VMR7;
    • S'ha afegit suport per ajustar el volum dels canals individuals als controladors de so;
  • Internacionalització
    • Taules Unicode actualitzades a la versió 12.1.0;
    • Suport implementat per a la normalització Unicode;
    • Instal·lació automàtica proporcionada de la regió geogràfica (HKEY_CURRENT_USER\Control Panel\International\Geo) basada en la configuració regional actual;
  • RPC/COM
    • S'ha afegit suport per a estructures i matrius complexes a typelib;
    • Afegida la implementació inicial de la biblioteca d'execució Windows Script;
    • S'ha afegit la implementació inicial de la biblioteca ADO (Microsoft ActiveX Data Objects);
  • Instal·ladors
    • S'ha implementat el suport per al lliurament de pedaços (Fitxers de pedaços) per a l'instal·lador MSI;
    • A la utilitat WUSA (Windows L'instal·lador independent d'actualitzacions ara permet instal·lar actualitzacions en format .MSU;
  • Plataforma ARM
    • Per a l'arquitectura ARM64, s'ha afegit suport per al desenrotllament de la pila a ntdll. S'ha afegit suport per connectar biblioteques externes de libunwind;
    • Per a l'arquitectura ARM64, s'ha implementat suport per a servidors intermediaris sense problemes per a interfícies d'objectes;
  • Eines de desenvolupament / Winelib
    • S'ha afegit la possibilitat d'utilitzar el depurador de Visual Studio per depurar de forma remota les aplicacions que s'executen al Wine;
    • La biblioteca DBGENG (Debug Engine) s'ha implementat parcialment;
    • Recollit per Windows Els executables ja no depenen de libwine, cosa que permet executar-los en Windows sense dependències addicionals;
    • S'ha afegit l'opció "--sysroot" al compilador de recursos i al compilador IDL per determinar el camí dels fitxers de capçalera;
    • S'han afegit opcions '—target', '—wine-objdir' a winegcc
      '—winebuild' i '-fuse-ld', que simplifiquen la configuració de l'entorn per a la compilació creuada;
  • Aplicacions incrustades
    • S'ha implementat una utilitat CHCP per configurar la codificació de la consola;
    • S'ha implementat la utilitat MSIDB per manipular bases de dades en format MSI;
  • Optimització del rendiment
    • S'han migrat diverses funcions de temporització per utilitzar funcions de temporitzador del sistema d'alt rendiment, reduint la sobrecàrrega en el bucle de renderització de molts jocs;
    • S'ha afegit la possibilitat d'utilitzar Ext4 a FS règim treballar sense distinció de majúscules i minúscules;
    • S'ha optimitzat el rendiment de processar un gran nombre d'elements als diàlegs de visualització de llistes que operen en mode LBS_NODATA;
    • S'ha afegit una implementació més ràpida dels bloquejos SRW (Slim Reader/Writer) per a Linux, traduït a Futex;
  • Dependències externes
    • Per muntar mòduls en format PE, s'utilitza el compilador creuat MinGW-w64;
    • La implementació de XAudio2 requereix la biblioteca FAudio;
    • Per fer un seguiment dels canvis de fitxers als sistemes BSD
      s'utilitza la biblioteca Inotify;
    • Per gestionar excepcions a la plataforma ARM64, cal la biblioteca Unwind;
    • En lloc de Video4Linux1 ara requereix la biblioteca Video4Linux2.

Font: opennet.ru

Compreu allotjament fiable per a llocs amb protecció DDoS, servidors VPS VDS 🔥 Compra allotjament web fiable amb protecció DDoS, servidors VPS VDS | ProHoster