Stabila Wine 5.0 izlaiŔana

Pēc gada izstrādes un 28 eksperimentālām versijām uzrādÄ«ts Win32 API atvērtās ievieÅ”anas stabila izlaiÅ”ana - VÄ«ns 5.0, kas ietvēra vairāk nekā 7400 izmaiņas. Jaunās versijas galvenie sasniegumi ietver iebÅ«vētu Wine moduļu piegādi PE formātā, atbalstu vairāku monitoru konfigurācijām, jaunu XAudio2 audio API ievieÅ”anu un Vulkan 1.1 grafikas API atbalstu.

Vīnā apstiprināja pilna darbība 4869 (pirms gada 4737) programmām Windows, vēl 4136 (pirms gada 4045) programmas lieliski strādā ar papildus iestatījumiem un ārējiem DLL. 3635 programmām ir nelielas veiktspējas problēmas, kas netraucē lietot lietojumprogrammas pamatfunkcijas.

Atslēga jauninājumiem VÄ«ns 5.0:

  • Moduļi PE formātā
    • Izmantojot MinGW kompilatoru, lielākā daļa Wine moduļu tagad ir iebÅ«vēti PE (Portable Executable, izmanto operētājsistēmā Windows) izpildāmā faila formātā, nevis ELF. PE izmantoÅ”ana atrisina problēmas ar dažādu kopÄ“Å”anas aizsardzÄ«bas shēmu atbalstÄ«Å”anu, kas pārbauda sistēmas moduļu identitāti diskā un atmiņā;
    • PE izpildāmie faili tagad tiek kopēti direktorijā ~/.wine ($WINEPREFIX), nevis tiek izmantoti fiktÄ«vie DLL faili, padarot tos lÄ«dzÄ«gākus Ä«stām Windows instalācijām, tādējādi patērējot papildu vietu diskā;
    • Moduļi, kas pārveidoti PE formātā, var izmantot standarta wchar C funkcijas un konstantes ar Unicode (piemēram, L"abc");
    • Wine C izpildlaikā ir pievienots atbalsts saistÄ«Å”anai ar binārajiem failiem, kas iebÅ«vēti MinGW, kas pēc noklusējuma tiek izmantots MinGW izpildlaika vietā, veidojot DLL;
  • Grafikas apakÅ”sistēma
    • Pievienots atbalsts darbam ar vairākiem monitoriem un grafikas adapteriem, tostarp iespēja dinamiski mainÄ«t iestatÄ«jumus;
    • Vulkan grafikas API draiveris ir atjaunināts, lai atbilstu Vulkan 1.1.126 specifikācijai;
    • WindowsCodecs bibliotēka nodroÅ”ina iespēju konvertēt papildu rastra formātus, tostarp formātus ar indeksētu paleti;
  • Direct3D
    • Palaižot pilnekrāna Direct3D lietojumprogrammas, ekrānsaudzētāja zvans tiek bloķēts;
    • DXGI (DirectX Graphics Infrastructure) ir pievienots atbalsts lietojumprogrammas informÄ“Å”anai, kad tās logs ir minimizēts, kas ļauj lietojumprogrammai samazināt resursietilpÄ«gu darbÄ«bu veiktspēju, minimizējot logu;
    • Lietojumprogrammām, kas izmanto DXGI, tagad ir iespējams pārslēgties starp pilnekrāna un logu režīmu, izmantojot kombināciju Alt+Enter;
    • Direct3D 12 ievieÅ”anas iespējas ir paplaÅ”inātas, piemēram, tagad ir pieejams pārslēgÅ”anās starp pilnekrāna un logu režīmiem, ekrāna režīmu maiņa, izvades mērogoÅ”ana un renderÄ“Å”anas bufera nomaiņas intervāla (maiņas intervāla) pārvaldÄ«ba;
    • Uzlabota dažādu robežsituāciju apstrāde, piemēram, ārpus diapazona ievades vērtÄ«bu izmantoÅ”ana caurspÄ«dÄ«guma un dziļuma testiem, renderÄ“Å”ana ar atspoguļotām tekstÅ«rām un buferiem un nepareizu DirectDraw objektu izmantoÅ”ana Griezējs, izveidojot Direct3 ierÄ«ces nepareiziem logiem, izmantojot redzamos apgabalus, kuru minimālās parametru vērtÄ«bas ir vienādas ar maksimālo utt.
    • Direct3D 8 un 9 nodroÅ”ina precÄ«zāku izsekoÅ”anu.netÄ«rsĀ» ielādēto tekstÅ«ru apgabali;
    • NepiecieÅ”amās adreÅ”u telpas lielums, ielādējot 3D faktÅ«ras, kas saspiestas, izmantojot S3TC metodi, ir samazināts (tā vietā, lai ielādētu pilnÄ«bā, faktÅ«ras tiek ielādētas gabalos).
    • Interfeiss ir ieviests ID3D11Daudzpavedienu aizsargāt kritiskās sadaļas daudzpavedienu lietojumos;
    • Vecākām DirectDraw lietojumprogrammām ir veikti dažādi uzlabojumi un labojumi, kas saistÄ«ti ar apgaismojuma aprēķiniem;
    • Ieviesti papildu izsaukumi, lai iegÅ«tu informāciju par ēnotājiem API ShaderReflection;
    • wined3d tagad atbalsta blāzma CPU bāzes saspiestu resursu apstrādei;
    • Ir paplaÅ”ināta Direct3D atpazÄ«to grafisko karÅ”u datubāze;
    • Pievienotas jaunas reÄ£istra atslēgas HKEY_CURRENT_USER\Software\Wine\Direct3D: ā€œshader_backendā€ (aizmugursistēma darbam ar ēnotājiem: ā€œglslā€ GLSL, ā€œarbā€ ARB virsotnei/fragmentam un ā€œnoneā€, lai atspējotu ēnotāja atbalstu), ā€œstrict_shader_mathā€ ( 0x1 - iespējot, 0x0 - atspējot Direct3D ēnotāja konvertÄ“Å”anu). Novecojusi atslēga "UseGLSL" (jāizmanto "shader_backend");
  • D3DX
    • Ir ieviests atbalsts 3D tekstÅ«ras saspieÅ”anas mehānismam S3TC (S3 Texture Compression);
    • Pievienotas pareizas operāciju ievieÅ”anas, piemēram, tekstÅ«ras aizpildÄ«Å”ana un nekartējamas virsmas;
    • IzveidoÅ”anas ietvarā ir veikti dažādi uzlabojumi un labojumi vizuālie efekti;
  • Kodols (Windows kodola saskarnes)
    • Lielākā daļa no Kernel32 izmantotajām funkcijām ir pārvietotas uz
      KernelBase pēc izmaiņām Windows arhitektūrā;

    • Iespēja sajaukt 32 un 64 bitu DLL ielādei izmantotajos direktorijos. NodroÅ”ina, ka tiek ignorētas bibliotēkas, kas neatbilst paÅ”reizējam bitu dziļumam (32/64), gadÄ«jumā, ja tālāk pa ceļu ir iespējams atrast bibliotēku, kas atbilst paÅ”reizējam bitu dziļumam;
    • Ierīču draiveriem ir uzlabota kodola objektu emulācija;
    • Ieviestie sinhronizācijas objekti, kas darbojas kodola lÄ«menÄ«, piemēram, grieÅ”anās bloķētāji, ātrie mutex un mainÄ«gie, kas pievienoti resursam;
    • NodroÅ”ina, lai lietojumprogrammas bÅ«tu pareizi informētas par akumulatora stāvokli;
  • Lietotāja interfeisa un darbvirsmas integrācija
    • Minimizētie logi tagad tiek parādÄ«ti, izmantojot virsraksta joslu, nevis Windows 3.1 stila ikonu;
    • Pievienoti jauni pogu stili Split Button (poga ar nolaižamo darbÄ«bu sarakstu) un Komandu saites (saites dialoglodziņos, ko izmanto, lai pārietu uz nākamo posmu);
    • Mapēm 'Lejupielādes' un 'Veidnes' ir izveidotas simboliskas saites, kas norāda uz atbilstoÅ”ajiem Unix sistēmu direktorijiem;
  • Ieejas ierÄ«ces
    • StartÄ“Å”anas laikā tiek instalēti un ielādēti nepiecieÅ”amie Plug & Play ierīču draiveri;
    • Uzlabots atbalsts spēļu kontrolleriem, tostarp mini kursorsvirai (cepures slēdzim), stÅ«rei, gāzes un bremžu pedāļiem.
    • Vecās Linux kursorsviras API, kas tika izmantota Linux kodolos pirms versijas 2.2, atbalsts ir pārtraukts;
  • NET.
    • Mono dzinējs ir atjaunināts, lai atbrÄ«votu versiju 4.9.4, un tagad tajā ir iekļautas Windows prezentācijas fonda (WPF) ietvara daļas;
    • Pievienota iespēja instalēt papildinājumus ar Mono un Gecko vienā kopējā direktorijā, ievietojot failus /usr/share/wine hierarhijā, nevis kopējot tos uz jauniem prefiksiem;
  • TÄ«kla funkcijas
    • Wine Gecko pārlÅ«kprogrammas dzinējs, kas tiek izmantots MSHTML bibliotēkā, ir atjaunināts, lai atbrÄ«votu versiju 2.47.1. Ir ieviests atbalsts jauniem HTML API;
    • MSHTML tagad atbalsta SVG elementus;
    • Pievienotas daudzas jaunas VBScript funkcijas (piemēram, kļūdu un izņēmumu apstrādātāji, Hour, Day, Month, String, LBound, RegExp.Replace, Š ScriptTypeInfo_* un ScriptTypeComp_Bind* funkcijas utt.);
    • NodroÅ”ināta koda stāvokļa saglabāŔana VBScript un JScript (skripta noturÄ«ba);
    • Pievienota sākotnējā HTTP pakalpojuma (WinHTTP) un saistÄ«tā API (HTTPAPI) ievieÅ”ana klientu un servera lietojumprogrammām, kas sÅ«ta un saņem pieprasÄ«jumus, izmantojot HTTP protokolu;
    • Ieviesta iespēja iegÅ«t HTTP starpniekservera iestatÄ«jumus, izmantojot DHCP;
    • Pievienots atbalsts autentifikācijas pieprasÄ«jumu novirzÄ«Å”anai, izmantojot Microsoft Passport pakalpojumu;
  • Kriptogrāfija
    • Ieviests eliptiskās lÄ«knes kriptogrāfisko atslēgu (ECC) atbalsts, izmantojot GnuTLS;
    • Pievienota iespēja importēt atslēgas un sertifikātus no failiem PFX formātā;
    • Pievienots atbalsts atslēgu Ä£enerÄ“Å”anas shēmai, kuras pamatā ir PBKDF2 parole;
  • Teksts un fonti
    • DirectWrite API ievieÅ”anai ir pievienots atbalsts OpenType lÄ«dzekļiem, kas saistÄ«ti ar glifu pozicionÄ“Å”ana, kas pēc noklusējuma ir iespējoti latīņu stilam, ieskaitot atzarojumu;
    • Uzlabota fontu datu apstrādes droŔība, pārbaudot dažādu datu tabulu pareizÄ«bu pirms to izmantoÅ”anas;
    • DirectWrite saskarnes ir pielāgotas jaunākajam SDK;
  • Skaņa un video
    • Ir ierosināta jauna skaņas API ievieÅ”ana XAudio2, bÅ«vēta uz projekta pamata FAaudio. Izmantojot FAudio in Wine, varat sasniegt augstāku skaņas kvalitāti spēlēs un izmantot tādas funkcijas kā skaļuma miksÄ“Å”ana un uzlaboti skaņas efekti;
    • Media Foundation ietvara ievieÅ”anai ir pievienots liels skaits jaunu zvanu, tostarp atbalsts iebÅ«vētām un pielāgotām asinhronajām rindām, Source Reader API, Media Session u.c.
    • Video uzņemÅ”anas filtrs ir pārslēgts uz v4l2 API izmantoÅ”anu, nevis v4l1 API, kas ir paplaÅ”inājis atbalstÄ«to kameru klāstu;
    • Ir izņemti iebÅ«vētie AVI, MPEG-I un WAVE dekoderi, kuru vietā tagad tiek izmantota sistēma GStreamer vai QuickTime;
    • Pievienota VMR7 konfigurācijas API apakÅ”kopa;
    • Pievienots atbalsts atseviŔķu kanālu skaļuma pielāgoÅ”anai skaņas draiveriem;
  • Internacionalizācija
    • Unikoda tabulas atjauninātas uz versiju 12.1.0;
    • Ieviests atbalsts Unicode normalizÄ“Å”anai;
    • NodroÅ”ināta automātiska Ä£eogrāfiskā reÄ£iona (HKEY_CURRENT_USER\Control Panel\International\Geo) instalÄ“Å”ana, pamatojoties uz paÅ”reizējo lokalizāciju;
  • RPC/COM
    • Typelib pievienots atbalsts sarežģītām struktÅ«rām un masÄ«viem;
    • Pievienota Windows Script izpildlaika bibliotēkas sākotnējā ievieÅ”ana;
    • Pievienota ADO (Microsoft ActiveX Data Objects) bibliotēkas sākotnējā ievieÅ”ana;
  • UzstādÄ«tāji
    • MSI instalētājam ir ieviests atbalsts ielāpu (Patch Files) piegādei;
    • WUSA (Windows Update Standalone Installer) utilÄ«tai tagad ir iespēja instalēt atjauninājumus .MSU formātā;
  • ARM platforma
    • ARM64 arhitektÅ«rai ntdll ir pievienots steka attÄ«Å”anas atbalsts. Pievienots atbalsts ārējo libunwind bibliotēku savienoÅ”anai;
    • ARM64 arhitektÅ«rai objektu saskarnēm ir ieviests bezÅ”uvju starpniekserveru atbalsts;
  • Izstrādes rÄ«ki / Winelib
    • Pievienota iespēja izmantot atkļūdotāju no Visual Studio, lai attālināti atkļūdotu programmas, kas darbojas programmā Wine;
    • DBGENG (Debug Engine) bibliotēka ir daļēji ieviesta;
    • Binārie faili, kas kompilēti operētājsistēmai Windows, vairs nav atkarÄ«gi no libwine, ļaujot tiem darboties sistēmā Windows bez papildu atkarÄ«bām;
    • Pievienota opcija "--sysroot" Resource Compiler un IDL Compiler, lai noteiktu ceļu galvenes failiem;
    • Winegcc pievienotas opcijas "ā€”target", "-wine-objdir", "-wine-objdir"
      ā€œā€”winebuildā€ un ā€œ-fuse-ldā€, kas vienkārÅ”o savstarpējās kompilācijas vides izveidi;

  • Iegultās lietojumprogrammas
    • Ieviesta CHCP utilÄ«ta, lai konfigurētu konsoles kodējumu;
    • Ir ieviesta MSIDB utilÄ«ta manipulÄ“Å”anai ar datu bāzēm MSI formātā;
  • Veiktspējas optimizÄ“Å”ana
    • Dažādas laika noteikÅ”anas funkcijas ir migrētas, lai izmantotu augstas veiktspējas sistēmas taimera funkcijas, samazinot pieskaitāmās izmaksas daudzu spēļu renderÄ“Å”anas cilpā;
    • Pievienota iespēja izmantot Ext4 FS režīms strādāt bez reÄ£istrjutÄ«bas;
    • Ir optimizēta liela skaita elementu apstrādes veiktspēja saraksta displeja dialogos, kas darbojas LBS_NODATA režīmā;
    • Pievienota ātrāka SRW slēdzeņu (Slim Reader/Writer) ievieÅ”ana operētājsistēmai Linux, tulkota Futex;
  • Ārējās atkarÄ«bas
    • Moduļu montāžai PE formātā tiek izmantots Ŕķērskompilators MinGW-w64;
    • XAudio2 ievieÅ”anai nepiecieÅ”ama FAudio bibliotēka;
    • Lai izsekotu failu izmaiņām BSD sistēmās
      tiek izmantota bibliotēka Inotify;

    • Lai apstrādātu izņēmumus ARM64 platformā, ir nepiecieÅ”ama Unwind bibliotēka;
    • Video4Linux1 vietā tagad ir nepiecieÅ”ama Video4Linux2 bibliotēka.

Avots: opennet.ru

Pievieno komentāru