Itusilẹ iduroṣinṣin ti Waini 7.0

Lẹhin ọdun kan ti idagbasoke ati awọn ẹya idanwo 30, itusilẹ iduroṣinṣin ti imuse ṣiṣi ti Win32 API ti gbekalẹ - Wine 7.0, eyiti o ṣafikun diẹ sii ju awọn iyipada 9100. Awọn aṣeyọri bọtini ti ẹya tuntun pẹlu itumọ ti ọpọlọpọ awọn modulu Waini sinu ọna kika PE, atilẹyin fun awọn akori, imugboroja ti akopọ fun joysticks ati awọn ẹrọ igbewọle pẹlu wiwo HID, ati imuse ti faaji WoW64 fun ṣiṣe awọn eto 32-bit ni a 64-bit ayika.

Waini ti jẹrisi iṣẹ ṣiṣe ni kikun ti awọn eto 5156 (ọdun kan sẹhin 5049) fun Windows, awọn eto 4312 miiran (ọdun kan sẹhin 4227) ṣiṣẹ ni pipe pẹlu awọn eto afikun ati awọn DLL ita. Awọn eto 3813 (3703 ọdun sẹyin) ni awọn iṣoro iṣẹ ṣiṣe kekere ti ko dabaru pẹlu lilo awọn iṣẹ akọkọ ti awọn ohun elo.

Awọn imotuntun bọtini ni Waini 7.0:

  • Awọn modulu ni ọna kika PE
    • O fẹrẹ jẹ pe gbogbo awọn DLL ti yipada lati lo 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 modulu eto lori disiki ati ni iranti.
    • Agbara lati ṣe ajọṣepọ awọn modulu PE pẹlu awọn ile-ikawe Unix nipa lilo ipe eto ekuro boṣewa NT ti jẹ imuse, eyiti o fun ọ laaye lati tọju iraye si koodu Unix lati awọn olutọpa Windows ati ṣetọju iforukọsilẹ okun.
    • Awọn DLL ti a ṣe sinu ti wa ni bayi ti kojọpọ nikan ti faili PE ti o baamu wa lori disiki, laibikita boya o jẹ ile-ikawe gidi tabi stub kan. Iyipada yii ngbanilaaye ohun elo lati rii nigbagbogbo abuda to tọ si awọn faili PE. Lati mu ihuwasi yii jẹ, o le lo oniyipada ayika WINEBOOTSTRAPMODE.
  • WoW64
    • WoW64 faaji (64-bit Windows-on-Windows) ti ni imuse, gbigba ọ laaye lati ṣiṣe awọn ohun elo Windows 32-bit ni awọn ilana Unix 64-bit. Atilẹyin jẹ imuse nipasẹ asopọ ti Layer ti o tumọ awọn ipe eto 32-bit NT sinu awọn ipe 64-bit si NTDLL.
    • Awọn fẹlẹfẹlẹ WoW64 ti pese sile fun ọpọlọpọ awọn ile-ikawe Unix ati gba awọn modulu PE 32-bit laaye lati wọle si awọn ile-ikawe Unix 64-bit. Ni kete ti gbogbo awọn modulu ti yipada si ọna kika PE, yoo ṣee ṣe lati ṣiṣẹ awọn ohun elo Windows 32-bit laisi fifi awọn ile-ikawe Unix 32-bit sori ẹrọ.
  • Awọn akori
    • Atilẹyin akori ti ni imuse. Awọn akori apẹrẹ "Imọlẹ", "Blue" ati "Blue Alailẹgbẹ" wa ninu, eyiti o le yan nipasẹ oluṣeto WineCfg.
    • Ṣe afikun agbara lati ṣe akanṣe hihan gbogbo awọn iṣakoso wiwo nipasẹ awọn akori. Irisi awọn eroja ti ni imudojuiwọn laifọwọyi lẹhin iyipada akori apẹrẹ.
    • Atilẹyin akori ti jẹ afikun si gbogbo awọn ohun elo Waini ti a ṣe sinu. Awọn ohun elo ti ni ibamu si awọn iboju pẹlu iwuwo piksẹli giga (DPI giga).
  • Graphics subsystem
    • A ti ṣafikun ile-ikawe Win32u tuntun, eyiti o pẹlu awọn apakan ti GDI32 ati awọn ile-ikawe USER32 ti o ni ibatan si sisẹ awọn aworan ati iṣakoso awọn window ni ipele kernel. Ni ọjọ iwaju, iṣẹ yoo bẹrẹ lori gbigbe awọn paati awakọ bii winex32.drv ati winemac.drv si Win11u.
    • Awakọ Vulkan ṣe atilẹyin awọn ẹya API pato Vulkan 1.2.201.
    • Atilẹyin ti a pese fun ṣiṣejade awọn nkan jiometirika ti hatched nipasẹ Direct2D API, pẹlu agbara lati ṣayẹwo boya titẹ kan deba (idanwo kọlu).
    • Direct2D API n pese atilẹyin akọkọ fun awọn ipa wiwo ti a lo nipa lilo wiwo ID2D1Effect.
    • Direct2D API ti ṣafikun atilẹyin fun wiwo ID2D1MultiThread, eyiti o lo lati ṣeto iraye si iyasọtọ si awọn orisun ni awọn ohun elo asapo pupọ.
    • Eto awọn ile-ikawe WindowsCodec n pese atilẹyin fun yiyan awọn aworan ni ọna kika WMP (Fọto Windows Media) ati awọn aworan fifi koodu ni ọna kika DDS (Darika Surface). A ko ṣe atilẹyin fifi koodu si awọn aworan ni ọna kika ICNS (fun macOS), eyiti ko ṣe atilẹyin lori Windows.
  • Direct3D
    • Ẹnjini tuntun ti a ti ni ilọsiwaju ni pataki, titumọ awọn ipe Direct3D si API awọn aworan Vulkan. Ni ọpọlọpọ awọn ipo, ipele atilẹyin fun Direct3D 10 ati 11 ninu ẹrọ orisun Vulkan ni a ti mu wa ni ibamu pẹlu ẹrọ orisun OpenGL agbalagba. Lati jeki engine Rendering Vulkan, ṣeto Direct3D iforukọsilẹ oniyipada "olugbese" to "vulkan".
    • Ọpọlọpọ awọn ẹya ti Direct3D 10 ati 11 ti wa ni imuse, pẹlu Awọn ọrọ ti a da duro, awọn ohun ipinlẹ ti n ṣiṣẹ ni agbegbe ẹrọ, awọn aiṣedeede itẹramọṣẹ ni awọn buffers, imukuro awọn iwo ọrọ-ọrọ ti aṣẹ, didakọ data laarin awọn orisun ni awọn ọna kika ti ko ni iru (DXGI_FORMAT_BC3_TYPELESS, DXGI_FORMAT_R32GLESS, DXGI_FORMAT_R32G,32B32ASSXNUMX) .
    • Atilẹyin ti a ṣafikun fun awọn atunto atẹle pupọ, gbigba ọ laaye lati yan atẹle kan lati ṣafihan ohun elo Direct3D ni ipo iboju kikun.
    • DXGI API n pese atunṣe gamma iboju, eyiti o le ṣee lo nipasẹ Direct3D 10 ati awọn ohun elo orisun 11 lati yi imọlẹ iboju pada. Ti ṣiṣẹ igbapada ti foju framebuffers counter (SwapChain).
    • Direct3D 12 ṣe afikun atilẹyin fun ẹya 1.1 awọn ibuwọlu root.
    • Ninu koodu fifisilẹ nipasẹ Vulkan API, ṣiṣe ṣiṣe ṣiṣe ibeere ti ni ilọsiwaju nigbati eto naa ṣe atilẹyin itẹsiwaju VK_EXT_host_query_reset.
    • Ṣe afikun agbara lati ṣe agbejade awọn fireemu foju foju (SwapChain) nipasẹ GDI ti OpenGL tabi Vulkan ko ba le ṣee lo fun ifihan, fun apẹẹrẹ, nigbati o ba n jade si window lati awọn ilana oriṣiriṣi, fun apẹẹrẹ, ninu awọn eto ti o da lori ilana CEF (Chromium Embedded Framework).
    • Nigba lilo GLSL shader backend, awọn “konge” modifier ni idaniloju fun shader ilana.
    • DirectDraw API ṣe afikun atilẹyin fun ṣiṣe 3D sinu iranti eto nipa lilo awọn ẹrọ sọfitiwia bii “RGB”, “MMX” ati “Ramp”.
    • AMD Radeon RX 3M, AMD Radeon RX 5500/6800 XT/6800 XT, AMD Van Gogh, Intel UHD Graphics 6900 ati NVIDIA GT 630 awọn kaadi ti a ti fi kun si Direct1030D eya kaadi database.
    • Bọtini “UseGLSL” ti yọkuro lati iforukọsilẹ HKEY_CURRENT_USERSoftwareWine Direct3D, dipo eyiti, bẹrẹ pẹlu Wine 5.0, o nilo lati lo “shader_backend”.
    • Lati ṣe atilẹyin Direct3D 12, o nilo o kere ju ẹya 3 ti ile-ikawe vkd1.2d.
  • D3DX
    • Imuse D3DX 10 ti ni ilọsiwaju atilẹyin fun ilana awọn ipa wiwo ati afikun atilẹyin fun ọna kika aworan Aworan Windows Media (JPEG XR)
    • Awọn iṣẹ ẹda ti a ṣafikun ti a pese ni D3DX10, gẹgẹbi D3DX10CreateTextureFromMemory ().
    • Awọn atọkun sọfitiwia ID3DX10Sprite ati ID3DX10Font ti ni imuse ni apakan.
  • Ohun ati fidio
    • Awọn afikun GStreamer fun DirectShow ati ilana Media Foundation ti wa ni idapo sinu ọkan ti o wọpọ WineGStreamer backend, eyi ti o yẹ ki o rọrun idagbasoke ti awọn API ti n ṣatunṣe akoonu titun.
    • Da lori ẹhin WineGStreamer, awọn ohun elo Media Windows jẹ imuse fun amuṣiṣẹpọ ati kika asynchronous.
    • Imuse ti ilana ipilẹ Media ti ni atunṣe siwaju sii, atilẹyin fun iṣẹ ṣiṣe IMFPMediaPlayer ati allocator apẹẹrẹ ti ṣafikun, ati atilẹyin fun EVR ati awọn buffer Rendering SAR ti ni ilọsiwaju.
    • Ile-ikawe wineqtdecoder, eyiti o pese decoder fun ọna kika QuickTime, ti yọkuro (gbogbo awọn kodẹki lo bayi GStreamer).
  • Awọn ẹrọ input
    • Akopọ fun awọn ẹrọ titẹ sii ti o ṣe atilẹyin ilana HID (Awọn Ẹrọ Ibaraẹnisọrọ Eniyan) ti ni ilọsiwaju ni pataki, pese awọn agbara bii sisọ awọn asọye HID, ṣiṣe awọn ifiranṣẹ HID, ati pese awọn awakọ mini-HID.
    • Ni awọn ẹhin ti awakọ winebus.sys, itumọ awọn apejuwe ẹrọ sinu awọn ifiranṣẹ HID ti ni ilọsiwaju.
    • Ṣafikun ẹhin DirectInput tuntun fun awọn ọtẹ ayọ ti o ṣe atilẹyin ilana HID. Agbara lati lo awọn ipa esi ni joysticks ti ni imuse. Ilọsiwaju joystick Iṣakoso nronu. Ibaraṣepọ iṣapeye pẹlu awọn ẹrọ ibaramu XIinput. Ni WinMM, atilẹyin joystick ti gbe lọ si DINput, dipo lilo evdev backend lori Lainos ati IOHID lori macOS IOHID. Awakọ joystick atijọ winejoystick.drv ti yọkuro.
    • Awọn idanwo tuntun ti ṣafikun si module DINput, da lori lilo awọn ẹrọ HID foju ko nilo ẹrọ ti ara.
  • Ọrọ ati awọn nkọwe
    • Fikun Font Ṣeto nkan si DirectWrite.
    • RichEdit ṣe imuse ni wiwo TextHost ni deede.
  • Ekuro (Awọn atọkun Ekuro Windows)
    • Nigbati o ba nṣiṣẹ faili imuṣiṣẹ ti a ko mọ (bii 'waini foo.msi') ni Waini, start.exe ni a npe ni bayi, eyiti o pe awọn olutọju ti o ni nkan ṣe pẹlu iru faili naa.
    • Atilẹyin ti a ṣafikun fun awọn ọna amuṣiṣẹpọ NtAlertThreadByThreadId ati NtWaitForAlertByThreadId, iru si awọn futexes ni Lainos.
    • Atilẹyin ti a ṣafikun fun awọn nkan n ṣatunṣe aṣiṣe NT ti a lo lati ṣatunṣe awọn iṣẹ ekuro.
    • Atilẹyin ti a ṣafikun fun awọn bọtini iforukọsilẹ agbara lati ṣafipamọ data iṣẹ ṣiṣe.
  • C asiko isise
    • Akoko asiko C naa n ṣe imuse eto kikun ti awọn iṣẹ mathematiki, eyiti a gbejade ni pataki lati ile-ikawe Musl.
    • Gbogbo awọn iru ẹrọ Sipiyu pese atilẹyin ti o pe fun awọn iṣẹ aaye lilefoofo.
  • Awọn ẹya Nẹtiwọki
    • Ipo ibaramu ilọsiwaju fun Internet Explorer 11 (IE11), eyiti o jẹ lilo nipasẹ aiyipada fun ṣiṣe awọn iwe aṣẹ HTML.
    • Ile-ikawe mshtml n ṣe imuse ipo ES6 JavaScript (ECMAScript 2015), eyiti o pese atilẹyin fun awọn ẹya bii ikosile ati ohun elo maapu.
    • Fifi sori ẹrọ ti awọn idii MSI pẹlu awọn afikun si ẹrọ Gecko sinu itọsọna iṣẹ Waini ti ṣe ni bayi nigbati o jẹ dandan, kii ṣe lakoko imudojuiwọn Waini kan.
    • Atilẹyin ti a ṣafikun fun Ilana DTLS.
    • Iṣẹ NSI (Interface Itaja Nẹtiwọọki) ti ni imuse, titoju ati gbigbe alaye nipa ipa-ọna ati awọn atọkun nẹtiwọọki lori kọnputa si awọn iṣẹ miiran.
    • Awọn olutọju WinSock API gẹgẹbi setsockot ati getsockopt ni a ti gbe lọ si NTDLL ati awakọ afd.sys lati ni ibamu si faaji Windows.
    • Awọn faili data data nẹtiwọọki ti Waini, gẹgẹbi / ati be be lo / awọn ilana ati / ati be be lo / awọn nẹtiwọọki, ti wa ni bayi ti fi sori ẹrọ ni itọsọna iṣẹ Waini, dipo iwọle si iru awọn apoti isura data Unix.
  • Yiyan awọn iru ẹrọ
    • Atilẹyin ti a ṣafikun fun ohun elo Apple ti o da lori awọn eerun M1 ARM (Apple Silicon).
    • Atilẹyin fun awọn ẹya BCrypt ati Secur32 lori macOS ni bayi nilo fifi sori ẹrọ ikawe GnuTLS.
    • 32-bit executables fun awọn iru ẹrọ ARM ti wa ni itumọ ti ni ipo Atanpako-2, iru si Windows. A ti lo ẹrọ iṣaju lati gbe iru awọn faili bẹẹ.
    • Fun awọn iru ẹrọ ARM 32-bit, atilẹyin fun awọn imukuro ṣiṣi silẹ ti ni imuse.
    • Fun FreeBSD, nọmba awọn ibeere atilẹyin fun alaye eto ipele-kekere, gẹgẹbi ipo iranti ati ipele idiyele batiri, ti gbooro sii.
  • Awọn ohun elo ti a ṣe sinu ati awọn irinṣẹ idagbasoke
    • IwUlO reg.exe ti ṣafikun atilẹyin fun awọn iwo iforukọsilẹ 32- ati 64-bit. Atilẹyin ti a ṣafikun fun didakọ awọn bọtini iforukọsilẹ.
    • IwUlO WineDump ti ṣafikun atilẹyin fun sisọnu metadata Windows ati iṣafihan alaye alaye nipa awọn titẹ sii CodeView.
    • Debugger Waini (winedbg) n pese agbara lati ṣatunṣe awọn ilana 32-bit lati oluyipada 64-bit.
    • Agbara lati kojọpọ awọn ile-ikawe ti a ṣe sinu awọn faili PE ti ni afikun si akopọ IDL (widl), atilẹyin fun awọn abuda kan pato ati awọn itumọ ti WinRT, ati wiwa ile-ikawe kan pato ti pẹpẹ ti ti ṣe imuse.
  • Apejọ eto
    • Ninu awọn ilana ilana-itumọ, awọn ile-ikawe ti wa ni ipamọ bayi pẹlu awọn orukọ ti o ṣe afihan faaji ati iru iṣẹ ṣiṣe, fun apẹẹrẹ, 'i386-windows' fun ọna kika PE ati 'x86_64-unix' fun awọn ile-ikawe unix, gbigba atilẹyin fun oriṣiriṣi awọn faaji ni a nikan Waini fifi sori ati ki o pese agbelebu-akopo ti Winelib.
    • Lati ṣeto aṣayan kan ninu awọn akọle ti awọn faili PE ti o ṣakoso iyipada si lilo awọn DLL abinibi, asia '-prefer-native option' ti ṣafikun si winebuild (iṣẹ ṣiṣe DLL_WINE_PREATTACH ni DllMain ti duro).
    • Atilẹyin ti a ṣafikun fun ẹya 4 ti ọna kika data yokokoro Dwarf, eyiti o jẹ lilo nipasẹ aiyipada nigba kikọ awọn ile ikawe Waini.
    • Aṣayan kikọ ti a ṣafikun '—enable-build-id' lati ṣafipamọ awọn idamọ ikọle alailẹgbẹ ni awọn faili ṣiṣe.
    • Atilẹyin ti a ṣafikun fun lilo alakojo Clang ni ipo ibaramu MSVC.
  • Разное
    • Awọn orukọ awọn ilana aṣoju ninu ikarahun olumulo (Windows Shell) ni a fun si ero ti a lo lati bẹrẹ pẹlu Windows Vista, i.e. Dipo 'Awọn Akọṣilẹ iwe Mi', ilana 'Awọn Akọṣilẹ iwe' kan ti ṣẹda bayi, ati pe pupọ julọ data ti wa ni ipamọ si ilana 'AppData'.
    • Atilẹyin fun sipesifikesonu OpenCL 1.2 ti ṣafikun si Layer ikawe OpenCL.
    • Awakọ WinSpool ti ṣafikun atilẹyin fun awọn titobi oju-iwe ti o yatọ nigbati titẹ sita.
    • Ṣe afikun atilẹyin ibẹrẹ fun MSDASQL, olupese Microsoft OLE DB fun awakọ ODBC.
    • Ẹrọ Mono Waini pẹlu imuse ti Syeed NET ti ni imudojuiwọn lati tu 7.0.0 silẹ.
    • Awọn data Unicode ti ni imudojuiwọn si sipesifikesonu Unicode 14.
    • Igi orisun pẹlu Faudio, GSM, LCMS2, LibJPEG, LibJXR, LibMPG123, LibPng, LibTiff, LibXml2, LibXslt ati awọn ile-ikawe Zlib, eyiti a ṣe akojọpọ ni ọna kika PE ati pe ko nilo ẹya ni ọna kika Unix. Ni akoko kanna, awọn ile-ikawe wọnyi tun le gbe wọle lati inu eto lati lo awọn apejọ ita dipo awọn aṣayan PE ti a ṣe sinu.

orisun: opennet.ru

Fi ọrọìwòye kun