Bag-ong mga bersyon sa Wine 9.2 ug Winlator 5.0. Usa ka ntsync driver ang gisugyot alang sa Linux kernel

Usa ka eksperimento nga pagpagawas sa usa ka bukas nga pagpatuman sa Win32 API - Wine 9.2 - nahitabo. Sukad sa pagpagawas sa 9.1, 14 nga mga taho sa bug ang gisirhan ug 213 nga mga pagbag-o ang nahimo.

Ang labing hinungdanon nga mga pagbag-o:

  • Ang Wine Mono nga makina nga adunay .NET nga pagpatuman sa plataporma gi-update aron buhian ang 9.0.0.
  • Gipauswag nga suporta sa tray sa sistema.
  • Ang pagdumala sa eksepsiyon gipauswag sa mga platform sa ARM.
  • Ang pagtukod naggamit sa YEAR2038 macro aron magamit ang 64-bit time_t type.
  • Ang drayber sa winewayland.drv mipauswag sa pagdumala sa cursor.
  • Ang mga taho sa sayup nga may kalabutan sa operasyon sa mga dula gisirhan: Elite Dangerous, Epic Games Launcher 15.21.0, LANCommander, Kodu.
  • Sirado nga mga taho sa sayup nga may kalabutan sa operasyon sa mga aplikasyon: Quick3270 5.21, digikam, Dolphin Emulator, Windows Sysinternals Process Explorer 17.05, Microsoft Webview 2 installer.

Dugang pa, ang Winlator 5.0 Android nga aplikasyon gipagawas, nga naghatag usa ka balangkas alang sa Wine ug Box86/Box64 emulators alang sa pagpadagan sa mga aplikasyon sa Windows sa platform sa Android. Ang Winlator nag-deploy sa mga Linux nga nakabase sa Ubuntu nga mga palibot nga adunay Mesa3D, DXVK, D8VK ug CNC DDraw, diin ang mga aplikasyon sa Windows nga gitukod alang sa x86 nga arkitektura gipatuman sa ARM Android nga mga aparato gamit ang usa ka emulator ug Wine. Ang bag-ong bersyon nagpauswag sa task manager, nagpauswag sa pasundayag, nagdugang suporta sa pagbag-o sa mga tema, ug nagpauswag sa pagkaangay sa XInput.

Mamatikdan usab nimo ang publikasyon sa Linux kernel mailing list sa ntsync driver, nga nag-implementar sa /dev/ntsync character device ug usa ka set sa synchronization primitives nga gigamit sa Windows NT kernel. Ang pagpatuman sa ingon nga mga primitibo sa lebel sa kernel mahimo’g mapauswag ang paghimo sa mga dula sa Windows nga gilunsad gamit ang Wine. Pananglitan, kung gigamit ang drayber sa ntsync, kung itandi sa pagpatuman sa mga primitibo sa pag-synchronize sa NT sa wanang sa gumagamit, ang labing kataas nga FPS sa dula nga Dirt 3 misaka sa 678%, sa dula nga Resident Evil 2 - sa 196%, Tiny Tina's Wonderlands - sa 177% , Lara Croft: Templo sa Osiris - sa 131%, Tawag sa Juarez - sa 125%, The Crew - sa 96%, Forza Horizon 5 - sa 48%, Anger Foot - sa 43%.

Mahinungdanon nga mga kadaugan sa pasundayag nakab-ot pinaagi sa pagwagtang sa overhead nga nalangkit sa pagpadagan sa RPC sa wanang sa gumagamit. Ang paghimo og lahi nga drayber alang sa Linux kernel gipatin-aw sa kalisud sa husto nga pagpatuman sa NT synchronization API sa ibabaw sa kasamtangan nga mga primitives sa kernel, pananglitan, ang NtPulseEvent() nga operasyon ug ang "wait-for-all" mode sa NtWaitForMultipleObjects( ) nanginahanglan direkta nga pagdumala sa pila nga naghulat. Ang mga patch nga adunay driver sa ntsync adunay gihapon status sa RFC, i.e. gibutang alang sa diskusyon ug pagrepaso sa komunidad, apan dili pa kwalipikado alang sa pagsagop sa panguna nga kernel sa Linux.

Source: opennet.ru

Idugang sa usa ka comment