Itusilẹ iduroṣinṣin ti Waini 5.0

Lẹhin ọdun kan ti idagbasoke ati awọn ẹya esiperimenta 28 gbekalẹ itusilẹ iduroṣinṣin ti imuse ṣiṣi ti Win32 API - 5.0 Wine, eyiti o pẹlu diẹ sii ju awọn iyipada 7400. Awọn aṣeyọri bọtini ti ẹya tuntun pẹlu ifijiṣẹ awọn modulu Waini ti a ṣe sinu ni ọna kika PE, atilẹyin fun awọn atunto ibojuwo pupọ, imuse tuntun ti XAudio2 ohun API ati atilẹyin fun awọn aworan Vulkan 1.1 API.

Ninu Waini timo ni kikun isẹ ti 4869 (odun kan seyin 4737) awọn eto fun Windows, miiran 4136 (odun kan seyin 4045) awọn eto ṣiṣẹ daradara pẹlu afikun eto ati ita DLLs. Awọn eto 3635 ni awọn ọran iṣẹ ṣiṣe kekere ti ko dabaru pẹlu lilo awọn iṣẹ ohun elo ipilẹ.

Bọtini awọn imotuntun Waini 5.0:

  • Awọn modulu ni ọna kika PE
    • Pẹlu olupilẹṣẹ MinGW, ọpọlọpọ awọn modulu Waini ti wa ni itumọ ni bayi ni PE (Portable Executable, ti a lo lori Windows) ọna kika faili ti o ṣiṣẹ dipo ELF. Lilo PE yanju awọn iṣoro pẹlu atilẹyin ọpọlọpọ awọn eto aabo ẹda ti o rii daju idanimọ ti awọn eto eto lori disiki ati ni iranti;
    • PE executables ti wa ni bayi daakọ si ~ / .waini ($ WINEPREFIX) liana dipo ti lilo idinwon faili DLL, ṣiṣe awọn nkan na diẹ iru si gidi Windows awọn fifi sori ẹrọ, ni iye owo ti n gba afikun disk aaye;
    • Awọn modulu ti o yipada si ọna kika PE le lo boṣewa wchar Awọn iṣẹ C ati awọn iduro pẹlu Unicode (fun apẹẹrẹ, L "abc");
    • Wine C asiko isise ti fi kun support fun sisopo pẹlu alakomeji itumọ ti ni MinGW, eyi ti o ti lo nipa aiyipada dipo ti MinGW asiko isise nigba ti Ilé DLLs;
  • Graphics subsystem
    • Atilẹyin ti a ṣafikun fun ṣiṣẹ pẹlu awọn diigi pupọ ati awọn oluyipada eya aworan, pẹlu agbara lati yi awọn eto pada ni agbara;
    • Awakọ fun Vulkan eya API ti ni imudojuiwọn lati ni ibamu pẹlu sipesifikesonu Vulkan 1.1.126;
    • Ile-ikawe WindowsCodecs n pese agbara lati yi awọn ọna kika raster afikun pada, pẹlu awọn ọna kika pẹlu paleti atọka;
  • Direct3D
    • Nigbati o ba nṣiṣẹ awọn ohun elo Direct3D iboju kikun, ipe ipamọ iboju ti dina mọ;
    • DXGI (DirectX Graphics Infrastructure) ti ṣafikun atilẹyin fun sisọ ohun elo kan nigbati window rẹ ba dinku, eyiti o fun laaye ohun elo lati dinku iṣẹ ṣiṣe ti awọn iṣẹ agbara-orisun nigbati o ba dinku window;
    • Fun awọn ohun elo nipa lilo DXGI, o ṣee ṣe lati yipada laarin iboju kikun ati ipo window nipa lilo apapo Alt + Tẹ;
    • Awọn agbara ti imuse Direct3D 12 ti ni ilọsiwaju, fun apẹẹrẹ, atilẹyin wa bayi fun yi pada laarin iboju kikun ati awọn ipo window, iyipada awọn ipo iboju, igbejade igbejade ati ṣiṣakoso aarin aropo ifipamọ (aarin aarin);
    • Imudarasi ilọsiwaju ti ọpọlọpọ awọn ipo aala, gẹgẹbi lilo awọn iye titẹ sii ti ita fun akoyawo ati awọn idanwo ijinle, ṣiṣe pẹlu awọn awoara ti o ni afihan ati awọn buffers, ati lilo awọn ohun DirectDraw ti ko tọ ẹyọṢiṣẹda awọn ẹrọ Direct3 fun awọn window ti ko tọ, ni lilo awọn agbegbe ti o han ti awọn iye paramita ti o kere ju dogba si o pọju, bbl
    • Direct3D 8 ati 9 pese ipasẹ deede diẹ sii "idọti»awọn agbegbe ti kojọpọ awoara;
    • Iwọn aaye adirẹsi ti a beere nigbati o ba n ṣajọpọ awọn awoara 3D fisinuirindigbindigbin nipa lilo ọna S3TC ti dinku (dipo ikojọpọ patapata, awọn awoara ti kojọpọ ni awọn chunks).
    • Ni wiwo imuse ID3D11 Multithread lati daabobo awọn apakan pataki ni awọn ohun elo olona-asapo;
    • Awọn ilọsiwaju lọpọlọpọ ati awọn atunṣe ti o ni ibatan si awọn iṣiro ina ni a ti ṣe fun awọn ohun elo DirectDraw agbalagba;
    • Awọn ipe afikun ti a ṣe lati gba alaye nipa awọn ojiji ni API ShaderReflection;
    • wined3d bayi ṣe atilẹyin blitter Sipiyu-orisun fun processing fisinuirindigbindigbin oro;
    • Awọn aaye data ti awọn kaadi eya ti a mọ ni Direct3D ti gbooro;
    • Ṣafikun awọn bọtini iforukọsilẹ tuntun HKEY_CURRENT_USER SoftwareWine Direct3D: “shader_backend” (afẹyinti fun ṣiṣẹ pẹlu awọn shaders: “glsl” fun GLSL, “arb” fun ARB vertex/fragment and “ko si” lati mu atilẹyin shader kuro), “strict_shader_math” ( 0x1 - jeki, 0x0 - mu Direct3D shader iyipada). Ti yọkuro bọtini “UseGLSL” (yẹ ki o lo “shader_backend”);
  • D3DX
    • Atilẹyin fun ẹrọ funmorawon sojurigindin 3D S3TC (S3 Texture Compression) ti ni imuse;
    • Ṣafikun awọn imuse ti o tọ ti awọn iṣẹ bii kikun awoara ati awọn ipele ti ko ṣee ṣe;
    • Awọn ilọsiwaju lọpọlọpọ ati awọn atunṣe ti ṣe si ilana ẹda wiwo ipa;
  • Ekuro (Awọn atọkun Ekuro Windows)
    • Pupọ julọ awọn iṣẹ ti a lo ni Kernel32 ti gbe lọ si
      KernelBase, atẹle awọn ayipada ninu faaji Windows;

    • Agbara lati dapọ 32- ati 64-bit DLLs ninu awọn ilana ti a lo fun ikojọpọ. Ṣe idaniloju pe awọn ile ikawe ti ko baramu ijinle bit ti isiyi jẹ aibikita (32/64), ti o ba jẹ pe siwaju sii ni ọna o ṣee ṣe lati wa ile-ikawe ti o tọ fun ijinle bit ti o wa lọwọlọwọ;
    • Fun awọn awakọ ẹrọ, imudara awọn nkan kernel ti ni ilọsiwaju;
    • Awọn nkan imuṣiṣẹpọ ti a ṣe ti n ṣiṣẹ ni ipele ekuro, gẹgẹbi awọn titiipa iyipo, awọn mutexes yara ati awọn oniyipada ti o somọ awọn orisun kan;
    • Ṣe idaniloju pe awọn ohun elo jẹ alaye ni deede nipa ipo batiri;
  • Olumulo Interface ati Ojú-iṣẹ Integration
    • Awọn ferese ti o dinku ti han ni bayi nipa lilo ọpa akọle dipo aami ara Windows 3.1;
    • Ti ṣafikun awọn aza bọtini tuntun PipinBọtini (bọtini pẹlu kan jabọ-silẹ akojọ ti awọn sise) ati Òfin Links (awọn ọna asopọ ni awọn apoti ibaraẹnisọrọ ti a lo lati lọ si ipele ti o tẹle);
    • Awọn ọna asopọ aami ti ṣẹda fun awọn folda 'Awọn igbasilẹ' ati 'Awọn awoṣe', tọka si awọn ilana ti o baamu lori awọn eto Unix;
  • Awọn ẹrọ input
    • Ni ibẹrẹ, awọn awakọ ẹrọ Plug & Play pataki ti fi sori ẹrọ ati kojọpọ;
    • Atilẹyin ilọsiwaju fun awọn olutona ere, pẹlu mini-joystick (iyipada fila), kẹkẹ idari, gaasi ati awọn ẹlẹsẹ ṣẹẹri.
    • Atilẹyin fun Linux joystick API atijọ ti a lo ninu awọn ekuro Linux ṣaaju si ẹya 2.2 ti dawọ;
  • .NET
    • Mono engine ti ni imudojuiwọn lati tu silẹ 4.9.4 ati nisisiyi pẹlu awọn ẹya ara ti Windows Presentation Foundation (WPF) ilana;
    • Ṣe afikun agbara lati fi sori ẹrọ awọn afikun pẹlu Mono ati Gecko ni itọsọna kan ti o wọpọ, gbigbe awọn faili sinu ipo / usr / pin / ọti-waini dipo didakọ wọn si awọn asọtẹlẹ tuntun;
  • Awọn ẹya Nẹtiwọki
    • Ẹrọ aṣawakiri Waini Gecko, eyiti o lo ninu ile-ikawe MSHTML, ti ni imudojuiwọn lati tu silẹ 2.47.1. Atilẹyin fun awọn API HTML tuntun ti ni imuse;
    • MSHTML ṣe atilẹyin awọn eroja SVG bayi;
    • Ti ṣafikun ọpọlọpọ awọn iṣẹ VBScript tuntun (fun apẹẹrẹ, aṣiṣe ati awọn oluṣakoso imukuro, wakati, Ọjọ, oṣu, okun, LBound, RegExp.Replace, РScriptTypeInfo_* ati awọn iṣẹ ScriptTypeComp_Bind *, ati bẹbẹ lọ);
    • Ti pese ifipamọ ipo koodu ni VBScript ati JScript (itẹramọra iwe afọwọkọ);
    • Ṣafikun imuse ibẹrẹ ti iṣẹ HTTP (WinHTTP) ati API ti o somọ (HTTPAPI) fun alabara ati awọn ohun elo olupin ti o firanṣẹ ati gba awọn ibeere nipa lilo ilana HTTP;
    • Ti ṣe imuse agbara lati gba awọn eto aṣoju HTTP nipasẹ DHCP;
    • Atilẹyin ti a ṣafikun fun ṣiṣatunṣe awọn ibeere ijẹrisi nipasẹ iṣẹ Microsoft Passport;
  • Cryptography
    • Atilẹyin imuse fun awọn bọtini cryptographic curve elliptic (ECC) nigba lilo GnuTLS;
    • Ṣe afikun agbara lati gbe awọn bọtini ati awọn iwe-ẹri wọle lati awọn faili ni ọna kika PFX;
    • Atilẹyin ti a ṣafikun fun ero iran bọtini ti o da lori ọrọ igbaniwọle PBKDF2;
  • Ọrọ ati awọn nkọwe
    • Imuse DirectWrite API ti ṣafikun atilẹyin fun awọn ẹya OpenType ti o ni ibatan si ipo glyph, eyiti o ṣiṣẹ nipasẹ aiyipada fun ara Latin, pẹlu kerning;
    • Ilọsiwaju aabo fun sisẹ data fonti nipa ṣiṣe ayẹwo deede ti ọpọlọpọ awọn tabili data ṣaaju lilo wọn;
    • Awọn atọkun DirectWrite ti mu wa si laini pẹlu SDK tuntun;
  • Ohun ati fidio
    • A ti dabaa imuse tuntun ti API ohun XAudio2, itumọ ti lori ilana ti ise agbese FAudio. Lilo FAudio ni Waini gba ọ laaye lati ṣaṣeyọri didara ohun ti o ga julọ ninu awọn ere ati lo awọn ẹya bii dapọ iwọn didun ati awọn ipa didun ohun to ti ni ilọsiwaju;
    • Nọmba nla ti awọn ipe tuntun ni a ti ṣafikun si imuse ti ilana Media Foundation, pẹlu atilẹyin fun itumọ-sinu ati awọn laini asynchronous aṣa, API Reader Source, Ikoni Media, ati bẹbẹ lọ.
    • Fidio Yaworan àlẹmọ ti a ti yipada si lilo v4l2 API dipo v4l1 API, eyi ti o ti fẹ awọn ibiti o ti ni atilẹyin awọn kamẹra;
    • AVI ti a ṣe sinu, MPEG-I ati awọn decoders WAVE ti yọ kuro, dipo eyiti eto GStreamer tabi QuickTime ti wa ni lilo bayi;
    • Ṣafikun ipin ti awọn API iṣeto VMR7;
    • Atilẹyin ti a ṣafikun fun ṣatunṣe iwọn didun ti awọn ikanni kọọkan si awọn awakọ ohun;
  • Iṣowo ilu okeere
    • Awọn tabili Unicode imudojuiwọn si ẹya 12.1.0;
    • Atilẹyin imuse fun deede Unicode;
    • Ti pese fifi sori ẹrọ laifọwọyi ti agbegbe agbegbe (HKEY_CURRENT_USER\Igbimọ Iṣakoso \ InternationalGeo) ti o da lori agbegbe lọwọlọwọ;
  • RPC/COM
    • Atilẹyin ti a ṣafikun fun awọn ẹya eka ati awọn ilana si typelib;
    • Fi kun imuse ibẹrẹ ti Windows Script runtime ìkàwé;
    • Ṣafikun imuse ibẹrẹ ti ile-ikawe ADO (Microsoft ActiveX Data Objects);
  • Awọn fifi sori ẹrọ
    • Atilẹyin fun ifijiṣẹ awọn abulẹ (Awọn faili Patch) ti ṣe imuse fun insitola MSI;
    • Ohun elo WUSA (Windows Update Standalone Installer) ni bayi ni agbara lati fi awọn imudojuiwọn sori ẹrọ ni ọna kika .MSU;
  • ARM Syeed
    • Fun faaji ARM64, atilẹyin fun ṣiṣi silẹ akopọ ti ṣafikun si ntdll. Atilẹyin ti a ṣafikun fun sisopọ awọn ile-ikawe libunwind ita;
    • Fun ARM64 faaji, atilẹyin fun awọn aṣoju ailopin ti ni imuse fun awọn atọkun ohun;
  • Awọn irinṣẹ Idagbasoke / Winelib
    • Ṣe afikun agbara lati lo olutọpa lati Visual Studio si awọn ohun elo yokokoro latọna jijin ti nṣiṣẹ ni Waini;
    • Ile-ikawe DBGENG (Ẹnjini Atunṣe) ti ni imuse ni apakan;
    • Awọn alakomeji ti a ṣajọ fun Windows ko dale lori libwine mọ, gbigba wọn laaye lati ṣiṣẹ lori Windows laisi awọn igbẹkẹle afikun;
    • Ṣe afikun aṣayan '-sysroot' si Olupilẹṣẹ Oro ati IDL Compiler lati pinnu ọna fun awọn faili akọsori;
    • Awọn aṣayan ti a ṣafikun ‘—afojusun’, ‘—waini-objdir’, ‘—waini-objdir’ si winegcc
      ’— winebuild’ àti ‘-fuse-ld’, èyí tí ó mú kí àgbékalẹ̀ àyíká rọrùn fún àkópọ̀ àgbélébùú;

  • Awọn ohun elo ti a fi sii
    • Ti ṣe imuse ohun elo CHCP kan lati tunto koodu console;
    • IwUlO MSIDB fun ifọwọyi awọn data data ni ọna kika MSI ti ni imuse;
  • Iṣapeye iṣẹ
    • Orisirisi awọn iṣẹ akoko ni a ti lọ kiri lati lo awọn iṣẹ aago eto iṣẹ ṣiṣe ti o ga, idinku oke ni isọdọtun ti ọpọlọpọ awọn ere;
    • Fi kun agbara lati lo Ext4 ni FS ijọba ṣiṣẹ laisi ifamọ ọran;
    • Iṣiṣẹ ti sisẹ nọmba nla ti awọn eroja ni awọn ibaraẹnisọrọ ifihan atokọ ti n ṣiṣẹ ni ipo LBS_NODATA ti ni iṣapeye;
    • Ṣe afikun imuse yiyara ti awọn titiipa SRW (Slim Reader / Writer) fun Linux, ti a tumọ si Futex;
  • Awọn igbẹkẹle ita
    • Lati ṣajọpọ awọn modulu ni ọna kika PE, a ti lo olupilẹṣẹ agbelebu MinGW-w64;
    • Ṣiṣe XAudio2 nilo ile-ikawe FAudio;
    • Lati tọpa awọn iyipada faili lori awọn ọna ṣiṣe BSD
      ile-ikawe Inotify ti lo;

    • Lati mu awọn imukuro kuro lori pẹpẹ ARM64, ile-ikawe Unwind nilo;
    • Dipo Video4Linux1, ile-ikawe Video4Linux2 ti nilo ni bayi.

orisun: opennet.ru

Fi ọrọìwòye kun