Stable nga pagpagawas sa Wine 9.0

Pagkahuman sa usa ka tuig nga pag-uswag ug 26 nga mga eksperimento nga bersyon, usa ka lig-on nga pagpagawas sa bukas nga pagpatuman sa Win32 API gipresentar - Wine 9.0, nga gilakip ang labaw sa 7000 nga mga pagbag-o. Ang yawe nga mga nahimo sa bag-ong bersyon naglakip sa pagpatuman sa WoW64 nga arkitektura alang sa pagpadagan sa 32-bit nga mga programa sa usa ka 64-bit nga palibot, paghiusa sa drayber aron suportahan ang Wayland, suporta alang sa ARM64 nga arkitektura, pagpatuman sa DirectMusic API ug suporta alang sa mga smart card.

Ang 5336 (5266 usa ka tuig ang milabay, 5156 duha ka tuig ang milabay, 5049 tulo ka tuig ang milabay) nga mga programa gikumpirma nga nagtrabaho sa husto sa Wine. WindowsLaing 4397 ka mga programa (4370 sa miaging tuig, 4312 duha ka tuig ang milabay, 4227 tulo ka tuig ang milabay) ang maayo ra mogana bisan pa sa dugang nga mga setting ug mga external DLL. 3943 ka mga programa (3888 sa miaging tuig, 3813 duha ka tuig ang milabay, 3703 tulo ka tuig ang milabay) adunay gagmay nga mga isyu nga dili makabalda sa batakang pagpaandar sa mga aplikasyon.

Pangunang mga inobasyon sa Wine 9.0:

  • Gidugang ang winewayland.drv driver, nga nagtugot sa Wine nga magamit sa mga palibot nga nakabase sa Wayland nga wala gigamit ang mga sangkap sa XWayland o X11. Kini nga kalamboan gitumong sa paghatag og usa ka puro nga palibot sa Wayland nga adunay suporta sa paglansad. Windows- mga aplikasyon nga dili kinahanglan nga i-install ang mga pakete nga may kalabotan sa X11, nga nagtugot alang sa mas taas nga performance ug responsiveness sa mga dula pinaagi sa pagtangtang sa wala kinahanglana nga mga layer. Ang paggamit sa usa ka puro nga palibot sa Wayland para sa Wine nagwagtang usab sa mga isyu sa seguridad nga anaa sa X11 (pananglitan, ang dili kasaligan nga mga dula sa X11 mahimong mag-espiya sa ubang mga aplikasyon tungod kay ang protocol sa X11 nagtugot sa pag-access sa tanan nga mga panghitabo sa input ug paghimo sa pag-ilis sa keystroke).

    Ang drayber gimarkahan isip eksperimento ug ubos sa pag-uswag, apan, bisan pa niana, kini adunay suporta alang sa daghang mga bahin, sama sa pagdumala sa bintana, pagtrabaho uban sa daghang mga monitor, suporta alang sa scaling output sa high-pixel density (high-DPI) screens, nagtrabaho uban sa paryente nga mga koordinasyon kung nagsubay sa paglihok sa mouse ug suporta alang sa Vulkan graphics API. Sa kasagaran, ang drayber dili aktibo ug aron mahimo kini kinahanglan nimo nga idugang ang "wayland" sa registry parameter nga "HKCU\Software\Wine\Drivers" ug siguroha nga ang DISPLAY environment variable wala gitakda: wine reg.exe add HKCU\ \Software\\Wine\\Drivers /v Graphics /d x11,wayland

  • Ang tanan nga mga module nakabig ngadto sa NT system call interface, kay sa paghimo sa direkta nga mga tawag tali sa PE ug Unix layers, nga nagtimaan sa pagkompleto sa daghang mga tuig sa trabaho aron ma-convert ang tanang DLLs aron magamit ang PE (Portable Executable) executable file format.
  • Nagpadayon ang pag-uswag sa WoW64 layer (64-bit) Windows-sa-Windows), nga nagtugot kanimo sa pagpadagan sa 32-bit Windows- mga aplikasyon sa 64-bit nga mga sistema sa Unix. Ang tanang mga module nga nag-access sa mga librarya sa Unix naggamit og mga translator sa tawag sa sistema sa WoW64 (thunks), nga nagtugot sa 32-bit nga mga module sa PE format nga maka-access sa 64-bit nga mga librarya sa Unix.

    Gipauswag ang bag-ong WoW64 launch mode, nga nagtugot sa 32-bit code nga modagan sulod sa 64-bit nga proseso (sa daang WoW64 mode, ang 32-bit nga mga aplikasyon modagan sa 32-bit nga mga proseso sa Unix). Gidugang ang suporta alang sa paggamit sa bag-ong WoW64 mode sa plataporma. macOSTungod kay ang bag-ong WoW64 mode adunay pipila ka gagmay nga mga bug, sama sa kakulang sa 16-bit nga suporta ug pagkunhod sa performance sa OpenGL tungod sa kakulang sa suporta alang sa ARB_buffer_storage extension, wala pa kini ma-enable pinaagi sa default ug kinahanglan nga tukuron gamit ang opsyon nga "--enable-archs=i386,x86_64" sa configure script.

  • Gidugang ang abilidad sa pagpadagan sa kasamtangang mga executable file Windows Sa mga sistema nga adunay arkitektura sa ARM64. Mahimo na nga matukod ang Wine para sa ARM64EC (ARM64 Emulation Compatible) ABI, ug mahimo nang ma-load ang mga module sa ARM64EC. Kini nga mga module gigamit aron mapasimple ang pagbalhin sa mga aplikasyon nga orihinal nga gisulat para sa arkitektura sa x86_64 ngadto sa mga sistema sa ARM64 pinaagi sa pagpagana sa pagpatuman sa indibidwal nga mga module sa code sa x86_64 sa palibot sa ARM64 gamit ang usa ka emulator. Gidugang ang suporta para sa format sa file sa ARM64X PE, nga nagtugot sa usa ka executable file nga ma-load sa parehong proseso sa x64/Arm64EC ug ARM64. Usa ka interface para sa pag-emulate sa 32-bit nga x86 nga mga sistema ang na-implementar na, apan ang librarya sa emulator wala pa gilakip sa pangunang distribusyon sa Wine (ang external FEX emulator magamit sa pagpadagan sa x86 code sa palibot sa ARM64).
  • Mga graphic subsystem
    • Ang PostScript driver gi-redesign aron mosuporta sa mga spool file sa format Windows, nga nagtipig og datos bahin sa mga trabaho sa pag-imprinta. Ang direktang mga tawag sa drayber gikan sa palibot sa Unix wala gilakip.
    • Ang suporta sa Dark mode gidugang sa mga tema sa WinRT. Usa ka setting ang gidugang sa WineCfg aron mahimo ang ngitngit nga disenyo sa interface.
    • Ang drayber alang sa Vulkan graphics API nagdugang suporta alang sa Vulkan 1.3.272 nga detalye (8.0 gisuportahan sa Wine 1.3.237).
    • Ang mga gimbuhaton sa librarya sa GdiPlus na-optimize, nga nagtugot alang sa dugang nga pasundayag sa mga graphic.
  • Direct3D
    • Ang pag-parse sa usa ka multi-threaded command stream gisuspinde kung walay mga rendering commands nga giproseso, nga nagtugot sa pagkunhod sa konsumo sa enerhiya ngadto sa lebel sa single-threaded nga pagproseso sa dihang nagpatuman sa mga programa nga wala mag-okupar sa tibuok bandwidth sa command stream.
    • Ang Direct3D 10 naglakip sa suporta alang sa dugang nga mga epekto.
    • Naghimo ug performance optimizations sa WineD3D code ug backend gamit ang Vulkan graphics API.
    • Gisusi na karon sa Vulkan API-based rendering code kung unsa nga kapabilidad ang gisuportahan sa device ug isulti sa aplikasyon kung unsa nga lebel sa Direct3D functionality ang anaa.
    • Ang D3DXFillTextureTX ug D3DXFillCubeTextureTX nga mga gimbuhaton gipatuman.
    • Ang klasiko nga OpenGL ARB shader backend adunay dugang nga suporta alang sa pagtino sa mga anino gamit ang ARB_fragment_program_shadow extension.
    • Ang D3DXLoadMeshHierarchyFromX ug ang susamang mga gimbuhaton nakadugang og suporta sa pagkarga sa datos sa user gamit ang ID3DXLoadUserData interface.
  • Tingog ug video
    • Usa ka inisyal nga pagpatuman sa DirectMusic API ang gisugyot. Gidugang nga suporta alang sa mga koleksyon, mga instrumento ug mga sampol sa tunog sa format nga SoundFont. Gidugang nga suporta alang sa epekto sa Doppler. Gipatuman ang mga pagsulay aron mapamatud-an ang husto nga pagpatuman kung nag-operate sa dmime sequencer ug ang dmsynth MIDI synthesizer.
    • Ang FluidSynth library gitukod sa DirectMusic API para magamit.
    • Gipatuman ang suporta para sa pagkarga sa mga sound font (SoundFont - mga format para sa sample-based synthesis nga gigamit sa pagpatugtog sa mga MIDI file) sa mga format sa DLS1 ug DLS2, ingon man sa SF2 format nga gigamit sa Linux.
    • Gidugang ang abilidad sa pagdula sa MIDI content gamit ang dmsynth library, gamit ang FluidSynth software synthesizer ug ang DirectSound API para sa audio output.
    • Gidugang ang usa ka decoder alang sa video sa format nga video codec sa Indeo IV50.
  • DirectShow
    • Ang DMO (DirectX Media Object) nga component nga adunay WMV format decoder naimplementar na (Windows Media Video).
    • Nagdugang usa ka filter sa pagkuha sa audio (DirectShow Audio Capture Filter).
    • Dugang sa audio stream, ang MPEG‑1 Stream Splitter (DirectShow MPEG‑1 Stream Splitter) karon nagsuporta sa mga video stream ug service stream.
    • Usa ka filter alang sa pag-decode sa video sa MPEG‑1 format (DirectShow MPEG‑1 Video Decoder) gipatuman.
  • Mga Input Devices
    • Gisuportahan sa DirectInput ang pagmapa sa aksyon, nga nagtugot kanimo sa pagbugkos sa mga buton sa usa ka controller sa dula sa piho nga mga aksyon sa mga dula.
  • Paghiusa sa desktop
    • Ang mga binding na-eksport na ngadto sa nag-unang user environment, nga nagtugot sa mga aplikasyon nga nagdagan ubos sa Wine nga tawgon nga protocol handlers sa pag-abli sa usa ka URL (pananglitan, paglansad sa spotify.exe sa pag-abli sa mga link sama sa "spotify: user: spotify: playlist: 848218482355482821").
    • Gipatuman ang pagkuha sa EDID (Extended Display Identification Data) nga datos nga adunay kasayuran bahin sa mga parameter sa konektado nga monitor, sama sa ngalan ug modelo sa aparato.
    • Posible nga isira ang usa ka bintana sa desktop nga gipakatap sa full screen mode gamit ang "Exit desktop" nga buton sa "Start" menu.
  • Нтернационализация
    • Gipalapdan ang suporta para sa mga IME (Input Method Editors). Gihimo ang trabaho aron masiguro ang pagkaangay sa lumad nga bersyon. Windows Mga implementasyon sa IME ug gipauswag nga integrasyon sa Linux EMI
    • Ang paghimo sa mga lokal nga database sa locale.nls nga format gikan sa Unicode CLDR (Unicode Common Locale Data Repository) nga bersyon 44 nga database gihatag Suporta alang sa dugang nga mga lokal nga bew-ID, blo-BJ, csw-CA, ie-EE, mic-CA. , gidugang ang prg-PL , skr-PK, tyv-RU, vmw-MZ, xnr-IN ug za-CN.
    • Ang interface gihubad ngadto sa Georgian. Ang bug-os nga mga hubad gihatag alang sa 16 ka mga pinulongan, ug ang mga partial nga paghubad alang sa 31 ka mga pinulongan.
    • Ang mga lamesa sa karakter sa Unicode gi-update sa standard nga bersyon 15.1.0. Gi-update ang database sa time zone.
  • Kernel (mga interface sa kernel) Windows)
    • Sama sa gi-isyu nga bersyon Windows gihubit pinaagi sa default Windows 10.
    • Para sa mga executable nga file sa PE format, ang suporta alang sa address space randomization (ASLR) gipatuman, apan ang mga adres alang sa loading code ngadto sa memorya dili pa hingpit nga randomized.
    • Gipatuman ang suporta alang sa usa ka huyang nga fragmented heap (LFH, Low Fragmentation Heap), nga nakadugang sa performance sa mga operasyon sa alokasyon sa memorya.
    • Ang suporta alang sa reserbasyon sa panumduman (placeholder) gidugang sa mekanismo sa alokasyon sa virtual nga panumduman, nga gitugotan ang usa ka aplikasyon nga magreserba sa usa ka piho nga lugar sa virtual nga panumduman para magamit sa umaabot.
    • Ang 64-bit nga mga loader (loader ug preloader) sa mga executable nga mga file ug mga library gihugpong sa PIE (Position-Independent Executables) nga pormat aron mapagawas ang bahin sa 32-bit address space.
    • Ang saktong stack unwinding gihatag para sa NT system calls ug user callback calls.
  • Mga bahin sa network
    • Ang MSHTML nga makina nagsuporta sa "Cycle Collection" nga mekanismo sa pagkolekta sa basura.
    • Ang MSHTML midugang og suporta alang sa dungan nga pagproseso sa XMLHttpRequest nga mga hangyo.
    • jscript.dll midugang suporta alang sa usa ka WeakMap butang sa pagtrabaho uban sa usa ka koleksyon sa yawe / bili pares diin ang yawe mao ang usa ka butang nga mahimong adunay usa ka arbitraryong bili gilakip niini. Gipatuman ang WeakMap.get(), WeakMap.delete(), WeakMap.clear() ug WeakMap.has() nga mga pamaagi.
    • Ang Gecko browser engine gi-update sa bersyon 2.47.4.
    • Ang suporta alang sa mga pahibalo bahin sa mga pagbag-o sa kahimtang sa interface sa network gipatuman.
  • Kriptograpiya ug Seguridad
    • Ang suporta alang sa mga smart card gidugang sa Winscard.dll library, nga gipatuman pinaagi sa PCSClite system library.
    • Ang BCrypt nagdugang suporta alang sa Diffie-Hellman key exchange protocol.
    • Ang Negotiate package gipatuman, nga naghatag ug layer para sa paggamit sa SSPI (Security Support Provider Interface) interface aron ma-access ang SSP (Security Support Provider) providers.
  • Gi-embed nga mga Aplikasyon
    • Ang Wine Debugger (winedbg) naggamit sa Zydis library sa pag-disassemble sa X86 machine instructions.
    • Ang WineCfg interface gi-update aron suportahan ang mga daan nga bersyon sa 64-bit nga mga plataporma. Windows (sa wala pa ang XP), nga nagtugot kanimo sa pagpadagan sa mga legacy application gamit ang WoW64 mode.
    • Ang tanan nga mga built-in nga graphical nga aplikasyon karon nagpakita sa kasayuran sa sayup sa usa ka bulag nga dialog, imbis nga ipakita kini sa console.
    • Ang programang systeminfo naghatag og display sa impormasyon gikan sa WMI database (Windows Instrumentasyon sa Pagdumala).
    • Gidugang ang aplikasyon sa klist aron ipakita ang mga tiket sa Kerberos.
    • Ang aplikasyon sa taskkill nagpatuman sa abilidad sa kusog nga pagtapos sa mga proseso sa bata.
    • Gidugang ang "/machine" nga kapilian sa pagsugod nga utility aron mapili ang arkitektura nga gigamit sa pagpadagan sa mga hybrid nga executable nga nagsuporta sa x86 ug ARM.
    • Kadaghanan sa mga gamit sa tasklist nga programa gipatuman.
    • Nagdugang usa ka sukaranan nga pagpatuman sa findstr nga aplikasyon.
  • Mga Himan sa Pag-uswag
    • Ang WineDump utility adunay abilidad sa pagpakita sa mga sulod sa mga file sa registry. Windows (REGF format), ingon man ang pagpakita sa datos para sa tanang arkitektura (x86/ARM64) nga gisuportahan sa hybrid PE files.
    • Ang IDL compiler midugang og suporta alang sa "composable", "default_overload", "deprecated" ug "protected" attributes.
    • Gitangtang ang libwine.so, nga wala na gigamit sa Wine 6.0 ug dugay na nga wala na gigamit sa Wine. Ang mga programa sa ELF format nga gitukod sa mas daan nga mga bersyon sa Wine (5.0 ug mas tigulang) uban sa libwine.so nagkinahanglan sa pagtukod pag-usab aron modagan sa Wine 9.0.
  • Gitukod-sa librarya ug sa gawas dependencies
    • Ang mga librarya nga FluidSynth 2.3.3, Musl 1.2.3 (mga function sa matematika lamang) ug Zydis 4.0.0 gisagol sa package.
    • Ang mga component 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, Lib1.1.38libXslt nga bag-ong bersyon ug 1.3. Ang Wine Mono nga makina nga adunay pagpatuman sa .NET nga plataporma gi-update aron buhian ang 8.1.0.
    • Ang drayber nga winewayland.drv naggamit sa Wayland client library isip external dependencies, ingon man sa xkbcommon ug xkbregistry library.
    • Aron masuportahan ang mga smart card, gigamit ang external PCSClite library (sa macOS — PCSC).
    • Ang paghimo sa PE nga mga file sa non-i386 nga mga plataporma nanginahanglan na karon ug cross-compiler nga adunay suporta alang sa ".seh" nga mga direktiba sa pagdumala sa mga eksepsiyon.

Source: opennet.ru

Pagpalit kasaligan nga pag-host alang sa mga site nga adunay proteksyon sa DDoS, mga server sa VPS VDS 🔥 Pagpalit og kasaligang website hosting nga adunay proteksyon sa DDoS, VPS VDS servers | ProHoster