After the year of development and 28 experimental versions presented the stable release of the open implementation of the Win32 API – wine 8.0 , which incorporated more than 8,600 changes. A key achievement in the new version is the completion of work on the transfer of Wine modules to the format.
In Wine confirmed Full work 5266 (a year ago 5156, two years ago 5049) 4370 more (a year ago 4312 , two years ago 4227) programs work perfectly with additional settings and external DLLs. 3888 programs (years ago 3813, two years ago 3703) have small problems in the work that do not interfere with the use of the basic functions of applications.
Key innovations wine 8.0:
- Modules in PE
- After the four years of work, the translation of all DLL bibliotexes to the use of the format of the executable PE (Portable Executable, is used in Windows) was completely completed. The use of PE allows the use of debugger available for Windows and solves problems with supporting various copy protection schemes that reconcile the identity of system modules on the disk and in memory. Problems with the work of 32-bit applications on 64-bit hosts and X86 applications on ARM systems have also been resolved. Of the remaining tasks that are planned to be solved in subsequent Wine 8.x experimental issues, there is a translation of the modules to the NT system calls interface instead of the implementation of direct calls between PE and UNIX.
- A special system call dispatcher has been implemented to broadcast PE in the Unix Biblioteum in order to reduce overhead costs when performing a full NT system call. For example, optimization made it possible to reduce the drop in performance when using the libraries Opengl and Vulkan.
- In Winelib-applications, the possibility of using mixed Windows/UNIX libraries in the ELF (.dll.so) format is preserved, but such applications without 32-bit libraries will not support the functionality available through the NT system calls, such as Wow64.
- For all UNIX bibliots, Wow64 (64-bit windows-on-windows) are provided, allowing 32-bit modules in PE format to contact the 64-bit UNIX-Bibliots, which after getting rid of direct calls PE/UNIX will make it possible execution of 32-bit Windows applications without installation of 32-bit UNIX bibliotek.
- In the absence of a 32-bit Wine loader, the launch of 32-bit applications is ensured in the new experimental Windows-like Wow64 mode, in which the 32-bit code is launched inside the 64-bit process. The mode is turned on when assembling Wine with the option ‘–enable-asshs’.
- Graphic subsystem