Microsoft technically delivered something very close to OS/2’s “Personalities” in Windows NT 4. They called it "Environment subsystems". Each subsystem could run applications written for different operating systems, the 3 available ones were Win32, OS/2 and POSIX. Then there was the "Integral subsystem", which operated system-specific functions on behalf of environment subsystems.

But every subsystem other than Win32 was kneecapped mostly due to politics and market positioning.

In late 90s Microsoft bought a company which had developed a more enhanced Unix subsystem and rebranded it as Interix and marketed as Windows Subsytem for Unix (SFU).

I believe the original WSL was a resurrection of SFU before WSL2 pivoted to a VM-based approach.

Nope, WSL 1.0 was based on pico-process, see Drawbridge project.

https://www.microsoft.com/en-us/research/project/drawbridge/

https://learn.microsoft.com/en-us/archive/blogs/wsl/pico-pro...

Thank you for the correction

No, the original WSL was a weird new thing where NT kernel-level driver actually serviced Linux system calls.

IIRC, Interix still used same approach as original posix subsystem (and Windows and OS/2 subsystems) of providing the interface as DLL that ultimately your application would be linked against.

Thank you for the correction