See: Wine 9.0 ・ wine / wine ・ GitLab 
(winehq.org)<https://gitlab.winehq.org/wine/wine/-/releases/wine-9.0>

Wine 9.0 finally announced its 'new wow64' configuration, which uses a 64-bit 
loader with NT-like far-jump thunk to switching between 32-bit and 64-bit code, 
rather than traditional 32/64-bit dual loaders, to run 32-bit Windows programs, 
and does not depend on any 32-bit Unix libraries, becomes stable (although some 
limitations are there, so not enabled by default). It is configured by 
'--enable-archs=i386,x86_64'.

Although the configuration is not enabled by default, I think that its time to 
provide a binary package that are configured with this configuration, so that 
64-bit Unix userland purists, year-2038-safe, emulating using box64 without 
box86, etc., could be satisfied without recompiling.

Some users also tend to configure a pure 64-bit environment. Debian trixie will 
also not providing i386 DVD/BD isos (which is convenient for 
Internet-inaccessible environments) any more. Linux kernel 6.7 introduced a new 
kernel command line 'ia32_emulation' to allow users disable ia32 emulation on 
x86_64 to reduce security risks. But then Wine will not be able to be installed 
to run 32-bit Windows programs.

i386 userland does have a year-2038-safe upgrading plan now. Wine itself seems 
does not use Unix time_t, but its i386 dependencies could use.

It's more useful when emulating using box64 without box86. box64 is a library 
thunking amd64 emulator on arm64/riscv64. It uses thunked native .so's as 
possible rather than always using emulated-arch ld.so and .so's as in qemu-user 
environment so as to run as fast as possible. However, it cannot thunk i386 
.so's against arm64/riscv64 one, as ILP32-to-LP64 is not fit. Traditionally one 
should use box86 instead to run i386 programs. However, box86 thunks i386 
against armhf, as it is ILP32-to-ILP32. But some systems does not have ability 
to run armhf, such as Apple Sillicon, some ARMv9 devices, and most of riscv64 
devices. Emulating Wine on these devices using box64 without box86 is possible 
again with the 'new wow64' configuration.

Reply via email to