this post was submitted on 16 Jan 2024
606 points (99.3% liked)

Linux

48153 readers
772 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 225 points 10 months ago (4 children)

All modules that call a Unix library contain WoW64 thunks to enable calling the 64-bit Unix library from 32-bit PE code. This means that it is possible to run 32-bit Windows applications on a purely 64-bit Unix installation. This is called the new WoW64 mode, as opposed to the old WoW64 mode where 32-bit applications run inside a 32-bit Unix process.

🦀🦀🦀

[–] [email protected] 96 points 10 months ago* (last edited 10 months ago) (1 children)

So in the future no need to install 32 bit packages of wine in a 64 system??? 👀

[–] [email protected] 103 points 10 months ago (1 children)

Correcto. Which means Steam will probably drop 32 bit libs soon. Which means Ubuntu will stop shipping 32 libs. The era is truly coming to an end

[–] [email protected] 42 points 10 months ago (1 children)

Let's call it "soonish". The old proton versions still need 32 bit libs if they do not backport the feature.

[–] [email protected] 25 points 10 months ago (2 children)

Old Proton builds probably won't backport this (unless it's completely isolated, idk the code layout of Wine). But are old Proton builds still necessary? Occasionally there's regressions, but are there really any games that require like a 2 year old Proton build?

[–] [email protected] 21 points 10 months ago

There are, but it's complicated. Doom (2016) for instance - it doesn't handle the very large Vulkan swap chain that's possible on some modern graphics cards, crashes on start-up. Someone patched Proton around that time so that Doom would start; the patch was later reverted since it broke other games. Other games based off of that engine - couple of Wolfensteins, Doom Eternal - have the problem fixed in the binaries, and so run on up-to-date Proton, but depending on your hardware, only a few specific, old, versions of Proton, will do for Doom.

Regressions get fixed - that's okay. Buggy behaviour which depended on regressions that got fixed - that's a problem.

[–] [email protected] 2 points 10 months ago

quite a few games need old proton IME

not many, but enough to make a difference.

[–] [email protected] 71 points 10 months ago* (last edited 10 months ago) (1 children)

Come on Steam, show those 32-bit libs the door!

Not the political kind. The shared object kind.

[–] [email protected] 5 points 10 months ago (1 children)

~~Ok but now I am curious what the difference between 32 and 64 bit liberals would be~~

[–] [email protected] 6 points 10 months ago

Since they have longer words, 64-bit liberals would be more intellectual than 32-bit liberals. 32-bit liberals also have a term limit in 14 years.

[–] [email protected] 46 points 10 months ago

What does this have to do with rust?

[–] [email protected] 9 points 10 months ago (1 children)

X86 to arm will become easier with this as box64 could handle everything now

[–] [email protected] 2 points 10 months ago (1 children)

Does this change run the 32-bit .exe using x86_64 instructions? From the description it just sounds like it allows 64-bit Linux libraries to be used in place of 32-bit ones, but that the Windows layer still operates in native 32-bit mode. This means there is still a need to emulate 32-bit x86 instructions which I don't think box64 can do at this time (x86_32 translates to arm32 with box86, x86_64 translates to arm64 with box64). If box86 could translate x86_32 to arm64 then this might work as Wine would handle the conversion between 32 and 64 bit addressing and argument passing into the libraries but I'm not familiar with the inner workings there.

[–] [email protected] 2 points 10 months ago

Thanks for correction, not everything, but more