4 ms·
On the userland side, there is some good progress of using thunking to run 32-bit Windows programs in Wine on Linux without the need for 32-bit libraries (the o
by shmerl 1y ago
On the userland side, there is some good progress of using thunking to run 32-bit Windows programs in Wine on Linux without the need for 32-bit libraries (the only edge case remaining is thunking 32-bit OpenGL which is lacking needed extensions for acceptable performance). But the same can't be said for a bunch of legacy 32-bit native Linux stuff like games which commonly have no source to rebuild them.
May be someone can develop such thunking for legacy Linux userland.
- 5- 1y agomost of those games would have windows builds? that said, i sometimes think about a clean-room reimplementation of e.g. the unity3d runtime -- there are so many games that don't even use native code logic (which still could be supported with binary translation via e.g. unicorn) and are really just mono bytecode but still can't be run on platforms for which their authors didn't think to build them (or which were not supported by the unity runtime at the time of the game's release).
- shmerl 1y ago> most of those games would have windows builds? Yeah, that's a reasonable workaround, as long as it doesn't hit that OpenGL problem above (now it mostly affects DX7 era games, since they don't have Vulkan translation path). Hopefully it can be fixed.
- cwzwarich 1y agoIt shouldn’t be difficult to write a binary translator to run 32-bit executables on a 64-bit userspace. You will take a small performance hit (on top of the performance hit of using the 32-bit architecture to begin with), but that should be fine for anything old enough to not be recompiled.
- shmerl 1y agoI would guess so, but I haven't seen anyone developing that so far.
- Fulgen 1y agoIn some ways, Windows already does that too - the 32-bit syscall wrappers [switch into a 64-bit code segment](https://aktas.github.io/Heavens-Gate https://aktas.github.io/Heavens-Gate) so the 64-bit ntdll copy can call the 64-bit syscall.
- deleted 1y ago[deleted]
- eric__cartman 1y agoHow many of those legacy applications where the source is not available actually need to run natively on a modern kernel? The only thing I can think of is games, and the Windows binary most likely works better under Wine anyways. There are many embedded systems like CNC controllers, advertisement displays, etc... that run those old applications, but I seriously doubt anyone would be willing to update the software in those things.
- xeonmc 1y agoPerhaps a new compatibility layer, call it LIME -- LIME Is My Emulater
- ninkendo 1y agoLIME Isn’t Merely an Emulator
- dontlaugh 1y agoIn practice, the path for legacy software on Linux is Wine.
- majorchord 1y agoI have heard people say the only stable ABI on Linux is Win32.
- hinkley 1y agoWin32S but the other way around. Win64S?