Ar ôl blwyddyn o ddatblygiad a 26 fersiwn arbrofol, cyflwynwyd datganiad sefydlog o weithrediad agored API Win32 - Wine 9.0, a oedd yn ymgorffori mwy na 7000 o newidiadau. Mae cyflawniadau allweddol y fersiwn newydd yn cynnwys gweithredu pensaernïaeth WoW64 ar gyfer rhedeg rhaglenni 32-bit mewn amgylchedd 64-bit, integreiddio gyrwyr i gefnogi Wayland, cefnogaeth i bensaernïaeth ARM64, gweithredu'r API DirectMusic a chefnogaeth ar gyfer cardiau smart.
Mae rhaglenni 5336 (5266 flwyddyn yn ôl, 5156 ddwy flynedd yn ôl, 5049 tair blynedd yn ôl) wedi cael eu cadarnhau i weithio'n iawn yn Wine. WindowsMae 4397 o raglenni eraill (4370 flwyddyn yn ôl, 4312 ddwy flynedd yn ôl, 4227 tair blynedd yn ôl) yn gweithio'n iawn gyda gosodiadau ychwanegol a DLLs allanol. Mae gan 3943 o raglenni (3888 flwyddyn yn ôl, 3813 ddwy flynedd yn ôl, 3703 tair blynedd yn ôl) broblemau bach nad ydynt yn ymyrryd â swyddogaeth sylfaenol y cymwysiadau.
Arloesiadau allweddol yn Wine 9.0:
- Mae'r gyrrwr winewayland.drv wedi'i ychwanegu, gan ganiatáu i Wine gael ei ddefnyddio mewn amgylcheddau sy'n seiliedig ar Wayland heb ddefnyddio cydrannau XWayland neu X11. Nod y datblygiad hwn yw darparu amgylchedd Wayland pur gyda chefnogaeth lansio. Windows- cymwysiadau nad oes angen gosod pecynnau sy'n gysylltiedig ag X11 arnynt, sy'n caniatáu perfformiad ac ymatebolrwydd uwch mewn gemau trwy ddileu haenau diangen. Mae defnyddio amgylchedd Wayland pur ar gyfer Wine hefyd yn dileu problemau diogelwch sy'n gynhenid i X11 (er enghraifft, gall gemau X11 di-ymddiried ysbïo ar gymwysiadau eraill oherwydd bod y protocol X11 yn caniatáu mynediad i bob digwyddiad mewnbwn a pherfformio amnewid trawiadau bysell).
Mae'r gyrrwr wedi'i nodi fel un arbrofol ac yn cael ei ddatblygu, ond, serch hynny, mae ganddo gefnogaeth eisoes i lawer o nodweddion, megis rheoli ffenestri, gweithio gyda monitorau lluosog, cefnogaeth ar gyfer graddio allbwn ar sgriniau dwysedd picsel uchel (DPI uchel), gan weithio gyda cyfesurynnau cymharol wrth olrhain symudiad llygoden a chefnogaeth ar gyfer API graffeg Vulkan. Yn ddiofyn, nid yw'r gyrrwr yn weithredol ac i'w alluogi dylech ychwanegu “wayland” at baramedr y gofrestrfa “HKCU\Software\Wine\Drivers” a gwneud yn siŵr nad yw'r newidyn amgylchedd DISPLAY wedi'i osod: wine reg.exe ychwanegu HKCU\ \ Meddalwedd \ Gwin \ Gyrwyr / v Graffeg / d x11,wayland
- Mae'r holl fodiwlau wedi'u trosi i ryngwyneb galwadau system NT, yn hytrach na gwneud galwadau uniongyrchol rhwng yr haenau PE ac Unix, gan nodi cwblhau blynyddoedd lawer o waith i drosi pob DLL i ddefnyddio fformat ffeil gweithredadwy PE (Portable Executable).
- Parhaodd datblygiad yr haen WoW64 (64-bit) Windows-ar-Windows), sy'n eich galluogi i redeg 32-bit Windows- cymwysiadau ar systemau Unix 64-bit. Mae pob modiwl sy'n cyrchu llyfrgelloedd Unix yn defnyddio cyfieithwyr galwadau system WoW64 (thunks), gan ganiatáu i fodiwlau 32-bit ar fformat PE gael mynediad at lyfrgelloedd Unix 64-bit.
Mae modd lansio newydd WoW64 wedi'i wella, gan ganiatáu i god 32-bit redeg o fewn proses 64-bit (yn yr hen fodd WoW64, roedd cymwysiadau 32-bit yn rhedeg mewn prosesau Unix 32-bit). Mae cefnogaeth i ddefnyddio'r modd WoW64 newydd ar y platfform wedi'i ychwanegu. macOSGan fod gan y modd WoW64 newydd rai bygiau bach, fel diffyg cefnogaeth 16-bit a pherfformiad OpenGL is oherwydd diffyg cefnogaeth i'r estyniad ARB_buffer_storage, nid yw wedi'i alluogi'n ddiofyn eto ac mae angen ei adeiladu gyda'r opsiwn "--enable-archs=i386,x86_64" yn y sgript ffurfweddu.
- Ychwanegwyd y gallu i weithredu ffeiliau gweithredadwy presennol Windows Ar systemau gyda phensaernïaeth ARM64. Bellach, gellir adeiladu Wine ar gyfer yr ABI ARM64EC (ARM64 Emulation Compatible), a gellir llwytho modiwlau ARM64EC. Defnyddir y modiwlau hyn i symleiddio'r broses o gludo cymwysiadau a ysgrifennwyd yn wreiddiol ar gyfer y bensaernïaeth x86_64 i systemau ARM64 trwy alluogi gweithredu modiwlau cod x86_64 unigol yn yr amgylchedd ARM64 gan ddefnyddio efelychydd. Ychwanegwyd cefnogaeth ar gyfer y fformat ffeil ARM64X PE, sy'n caniatáu llwytho un ffeil weithredadwy ym mhrosesau x64/Arm64EC ac ARM64. Mae rhyngwyneb ar gyfer efelychu systemau x86 32-bit wedi'i weithredu, ond nid yw'r llyfrgell efelychydd wedi'i chynnwys eto yn y prif ddosbarthiad Wine (gellir defnyddio'r efelychydd FEX allanol i redeg cod x86 yn yr amgylchedd ARM64).
- Is-system graffeg
- Mae'r gyrrwr PostScript wedi'i ailgynllunio i gefnogi ffeiliau sbŵl yn y fformat Windows, sy'n storio data am swyddi argraffu. Mae galwadau uniongyrchol i'r gyrrwr o'r amgylchedd Unix wedi'u heithrio.
- Mae cefnogaeth modd tywyll wedi'i ychwanegu at themâu WinRT. Mae gosodiad wedi'i ychwanegu at WineCfg i alluogi dylunio rhyngwyneb tywyll.
- Mae'r gyrrwr ar gyfer API graffeg Vulkan wedi ychwanegu cefnogaeth i fanyleb Vulkan 1.3.272 (cefnogwyd 8.0 yn Wine 1.3.237).
- Mae swyddogaethau llyfrgell GdiPlus wedi'u hoptimeiddio, gan ganiatáu ar gyfer perfformiad graffeg uwch.
- Direct3D
- Mae dosrannu llif gorchymyn aml-edau yn cael ei atal pan nad oes unrhyw orchmynion rendro yn cael eu prosesu, sy'n caniatáu lleihau'r defnydd o ynni i lefel prosesu un edau wrth weithredu rhaglenni nad ydynt yn meddiannu lled band y ffrwd gorchymyn cyfan.
- Mae Direct3D 10 yn cynnwys cymorth ar gyfer effeithiau ychwanegol.
- Wedi gwneud optimeiddio perfformiad i'r cod WineD3D ac ôl-ben gan ddefnyddio API graffeg Vulkan.
- Mae cod rendro API Vulkan bellach yn gwirio pa alluoedd y mae'r ddyfais yn eu cefnogi ac yn dweud wrth y rhaglen pa lefel o ymarferoldeb Direct3D sydd ar gael.
- Mae swyddogaethau D3DXFillTextureTX a D3DXFillCubeTextureTX wedi'u gweithredu.
- Mae backend arlliwiwr clasurol OpenGL ARB wedi ychwanegu cefnogaeth ar gyfer diffinio cysgodion gan ddefnyddio'r estyniad ARB_fragment_program_shadow.
- Mae D3DXLoadMeshHierarchyFromX a swyddogaethau tebyg wedi ychwanegu cefnogaeth ar gyfer llwytho data defnyddwyr gan ddefnyddio rhyngwyneb ID3DXLoadUserData.
- Sain a fideo
- Mae gweithrediad cychwynnol o'r API DirectMusic wedi'i gynnig. Cefnogaeth ychwanegol ar gyfer casgliadau, offerynnau a samplau sain yn fformat SoundFont. Cefnogaeth ychwanegol i effaith Doppler. Mae profion wedi'u rhoi ar waith i wirio'r gweithrediad cywir wrth weithredu'r dilyniannydd dmime a'r syntheseisydd dmsynth MIDI.
- Mae'r llyfrgell FluidSynth wedi'i chynnwys yn yr API DirectMusic i'w defnyddio.
- Wedi gweithredu cefnogaeth ar gyfer llwytho ffontiau sain (SoundFont - fformatau ar gyfer synthesis seiliedig ar samplau a ddefnyddir i chwarae ffeiliau MIDI) yn y fformatau DLS1 a DLS2, yn ogystal ag yn y fformat SF2 a ddefnyddir yn Linux.
- Ychwanegwyd y gallu i chwarae cynnwys MIDI gan ddefnyddio'r llyfrgell dmsynth, gan ddefnyddio syntheseisydd meddalwedd FluidSynth a'r API DirectSound ar gyfer allbwn sain.
- Ychwanegwyd datgodiwr ar gyfer fideo yn y fformat codec fideo Indeo IV50.
- Sioe Uniongyrchol
- Mae'r gydran DMO (DirectX Media Object) gyda dadgodwr fformat WMV wedi'i weithredu (Windows Fideo Cyfryngau).
- Ychwanegwyd hidlydd dal sain (Hidlen Dal Sain DirectShow).
- Yn ogystal â ffrydiau sain, mae'r MPEG-1 Stream Splitter (DirectShow MPEG-1 Stream Splitter) bellach yn cefnogi ffrydiau fideo a ffrydiau gwasanaeth.
- Mae hidlydd ar gyfer datgodio fideo mewn fformat MPEG-1 (Datgodiwr Fideo DirectShow MPEG-1) wedi'i weithredu.
- Dyfeisiau mewnbwn
- Mae DirectInput yn cefnogi mapio gweithredu, sy'n eich galluogi i glymu botymau ar reolwr gêm i gamau gweithredu penodol mewn gemau.
- Integreiddio bwrdd gwaith
- Mae rhwymiadau wedi'u hallforio i'r prif amgylchedd defnyddwyr, gan ganiatáu i gymwysiadau sy'n rhedeg o dan Wine gael eu galw fel trinwyr protocol wrth agor URL (er enghraifft, lansio spotify.exe wrth agor dolenni fel “spotify:user: spotify: playlist: 848218482355482821”).
- Wedi gweithredu echdynnu data EDID (Data Adnabod Arddangos Estynedig) gyda gwybodaeth am baramedrau'r monitor cysylltiedig, megis enw a model y ddyfais.
- Mae'n bosibl cau ffenestr bwrdd gwaith a ddefnyddir yn y modd sgrin lawn gan ddefnyddio'r botwm “Exit desktop” yn y ddewislen “Start”.
- Rhyngwladoli
- Mae cefnogaeth ar gyfer IMEs (Golygyddion Dull Mewnbwn) wedi'i ehangu. Mae gwaith wedi'i wneud i sicrhau cydnawsedd â systemau brodorol Windows Gweithrediadau IME ac integreiddio gwell gyda Linux EMI
- Cynhyrchwyd cronfeydd data locale mewn fformat locale.nls o gronfa ddata fersiwn 44 Unicode CLDR (Unicode Common Locale Data Repository) Cefnogaeth ar gyfer locales ychwanegol bew-ID, blo-BJ, csw-CA, ie-EE, mic-CA. , prg-PL wedi'i ychwanegu , skr-PK, tyv-RU, vmw-MZ, xnr-IN a za-CN.
- Mae'r rhyngwyneb wedi'i gyfieithu i'r Sioraidd. Darperir cyfieithiadau llawn ar gyfer 16 o ieithoedd, a chyfieithiadau rhannol ar gyfer 31 o ieithoedd.
- Mae tablau nodau Unicode wedi'u diweddaru i fersiwn safonol 15.1.0. Mae'r gronfa ddata parth amser wedi'i diweddaru.
- Cnewyllyn (rhyngwynebau cnewyllyn Windows)
- Fel y fersiwn a gyhoeddwyd Windows wedi'i ddiffinio yn ddiofyn Windows 10.
- Ar gyfer ffeiliau gweithredadwy yn y fformat Addysg Gorfforol, gweithredir cefnogaeth ar gyfer hapleoli gofod cyfeiriad (ASLR), ond nid yw'r cyfeiriadau ar gyfer llwytho cod i'r cof wedi'u hapio'n llwyr eto.
- Mae cefnogaeth ar gyfer tomen wan dameidiog (LFH, Heap Darniad Isel) wedi'i roi ar waith, sydd wedi cynyddu perfformiad gweithrediadau dyrannu cof.
- Mae cefnogaeth ar gyfer cadw cof (dalfan) wedi'i ychwanegu at y mecanwaith dyrannu cof rhithwir, gan ganiatáu cais i gadw maes penodol o gof rhithwir i'w ddefnyddio yn y dyfodol.
- Mae llwythwyr 64-bit (llwythwr a rhaglwythwr) o ffeiliau gweithredadwy a llyfrgelloedd yn cael eu casglu yn y fformat PIE (Position-Independent Executables) i ryddhau rhan o'r gofod cyfeiriad 32-bit.
- Darperir dad-ddirwyn stac cywir ar gyfer galwadau system NT a galwadau defnyddwyr yn ôl.
- Nodweddion rhwydweithio
- Mae'r injan MSHTML yn cefnogi'r mecanwaith casglu sbwriel "Casgliad Beic".
- Mae MSHTML wedi ychwanegu cefnogaeth ar gyfer prosesu ceisiadau XMLHttpRequest yn gydamserol.
- Mae jscript.dll yn ychwanegu cefnogaeth i wrthrych WeakMap i weithio gyda chasgliad o barau allwedd/gwerth lle mae'r allwedd yn wrthrych a all fod â gwerth mympwyol ynghlwm wrtho. Wedi gweithredu dulliau WeakMap.get(), WeakMap.delete(), WeakMap.clear() a WeakMap.has().
- Mae peiriant porwr Gecko wedi'i ddiweddaru i fersiwn 2.47.4.
- Mae cefnogaeth ar gyfer hysbysiadau am newidiadau yng nghyflwr y rhyngwyneb rhwydwaith wedi'i roi ar waith.
- Cryptograffi a Diogelwch
- Mae cefnogaeth ar gyfer cardiau smart wedi'i ychwanegu at lyfrgell Winscard.dll, wedi'i weithredu trwy lyfrgell system PCSClite.
- Mae BCrypt wedi ychwanegu cefnogaeth i brotocol cyfnewid allwedd Diffie-Hellman.
- Mae'r pecyn Negotiate wedi'i roi ar waith, gan ddarparu haen ar gyfer defnyddio'r rhyngwyneb SSPI (Rhyngwyneb Darparwr Cymorth Diogelwch) i gael mynediad at ddarparwyr SSP (Security Support Provider).
- Cymwysiadau Gwreiddiol
- Mae'r Wine Debugger (winedbg) yn defnyddio llyfrgell Zydis i ddadosod cyfarwyddiadau peiriant X86.
- Mae rhyngwyneb WineCfg wedi'i ddiweddaru i gefnogi fersiynau hŷn ar lwyfannau 64-bit. Windows (cyn XP), sy'n eich galluogi i redeg cymwysiadau etifeddol gan ddefnyddio modd WoW64.
- Mae pob cymhwysiad graffigol adeiledig bellach yn dangos gwybodaeth am wallau mewn deialog ar wahân, yn lle eu harddangos yn y consol.
- Mae'r rhaglen systeminfo yn darparu arddangosfa o wybodaeth o gronfa ddata WMI (Windows Offeryniaeth Rheoli).
- Ychwanegwyd cymhwysiad klist i arddangos tocynnau Kerberos.
- Mae'r cymhwysiad tasg tasg yn gweithredu'r gallu i derfynu prosesau plant yn rymus.
- Ychwanegwyd opsiwn "/machine" i'r cyfleustodau cychwyn i ddewis y bensaernïaeth a ddefnyddir wrth redeg gweithredadwy hybrid sy'n cefnogi x86 ac ARM.
- Mae'r rhan fwyaf o swyddogaethau'r rhaglen rhestr dasgau wedi'u rhoi ar waith.
- Ychwanegwyd gweithrediad sylfaenol y rhaglen findstr.
- Offer Datblygu
- Mae gan y cyfleustodau WineDump y gallu i arddangos cynnwys ffeiliau'r gofrestrfa. Windows (fformat REGF), yn ogystal ag arddangos data ar gyfer pob pensaernïaeth (x86/ARM64) a gefnogir mewn ffeiliau PE hybrid.
- Mae'r casglwr IDL wedi ychwanegu cefnogaeth ar gyfer y priodoleddau "composable", "default_overload", "diprecated" a "protected".
- Wedi dileu libwine.so, a anghymeradwywyd yn Wine 6.0 ac nad yw wedi cael ei ddefnyddio ers amser maith mewn Gwin. Mae angen ailadeiladu rhaglenni mewn fformat ELF a adeiladwyd mewn fersiynau hŷn o Wine (5.0 a hŷn) gyda libwine.so i redeg yn Wine 9.0.
- Llyfrgelloedd adeiledig a dibyniaethau allanol
- Mae'r llyfrgelloedd FluidSynth 2.3.3, Musl 1.2.3 (swyddogaethau mathemategol yn unig) a Zydis 4.0.0 wedi'u hintegreiddio i'r pecyn.
- Cydrannau Vkd3d 1.10, Faudio 23.12, OpenLDAP 2.5.16, LCMS2 2.15, LibMPG123 1.32.2, LibPng 1.6.40, LibTiff 4.6.0, LibXml2 2.11.5, LibXml1.1.38 1.3, LibXslt 8.1.0 fersiwn newydd wedi'u diweddaru i fersiwn newydd Mae'r injan Wine Mono gyda gweithrediad y llwyfan .NET wedi'i ddiweddaru i ryddhau XNUMX.
- Mae'r gyrrwr winewayland.drv yn defnyddio llyfrgell cleientiaid Wayland fel dibyniaethau allanol, yn ogystal â'r llyfrgelloedd xkbcommon a xkbregistry.
- I gefnogi cardiau clyfar, defnyddir y llyfrgell PCSClite allanol (yn macOS — PCSC).
- Mae adeiladu ffeiliau AG ar lwyfannau nad ydynt yn i386 bellach yn gofyn am draws-grynhoydd gyda chefnogaeth ar gyfer cyfarwyddebau ".seh" i drin eithriadau.
Ffynhonnell: opennet.ru
