Am 30. Mai 2024 11:17:16 MESZ schrieb Christof Ressi info@christofressi.com:
So, Windows 11, the current version, is only for 64 bit architectures, right? so one cannot install pd 32 bit on it.
No. 64-bit Windows has an emulation layer for 32-bit applications (the WoW subsystem). Just like Apple used to emulate PPC on its 32-bit Intel processors (Rosetta 1) and now emulates amd64 code on Apple Silicon (Rosetta 2). This is done to make the transition to another CPU architecture easier for the user because they can run their old programs.
To add a bit of confusion here, it's actually a bit simpler: the x86_64 (aka amd64) processors are fully compatible with the x86_32 (aka x86; aka i386) CPUs. There's no need to emulate anything, as the 64 bit CPU can execute the machine 32bit machine coffee directly. Similarly, (some) arm64 CPUs can run both 64bit machine code (aarch64) and 32 bit machine code (aarch32) natively. This allows you to install a 32bit operating system on the 64bit computer. This is a special feature of these architectures. OTOH, Apple Rosetta is required to run incompatible machine code on the new CPUs (so it needs to use a slower emulation).
Of course, a program also needs to interface with the operating system. Since you cannot mix 32bit and 64bit machine code (eg you cannot load a windows-i386-32 external into a windows-amd64-32 Pd), your OS needs to provide some runtime layer. This is where the WoW subsystem comes into play.
On OSX this was only useful in the early days of intel (iirc, there were some 32bit models). (The rest is Rosetta)
On Linux (Debian) there's a hybrid "multiarch" approach, that can provide the runtime for *any* architecture. Is the CPU cannot natively run the machine code, you need an emulator (eg qemu).
mfg.sfg.jfd IOhannes