What you have to understand about WSL is that it relies on one of the three userspaces that the NT/VMS kernel was designed to offer: Win32, POSIX, and OS/2.
Cygwin and busybox performance is awful in code that calls fork() often, but I understand that WSL1 behavior is very different, because fork() isn't fighting through layers of Windows.
The reason that the POSIX layer exists in NT is that Microsoft was the largest UNIX vendor in the early 80s with their XENIX variant, where the largest market segment ran on the TRS-80 Model 2 (68k-based, 3 simultaneous users, two attached rs-232 terminals).
"Broad software compatibility was initially achieved with support for several API "personalities", including Windows API, POSIX, and OS/2 APIs – the latter two were phased out starting with Windows XP."
My understanding was that POSIX was added to qualify for government contracts that required a FIPS-1512 compliant OS and had little to do with their UNIX business which was taken over by SCO in 1987.
My mental model is that they shed any UNIX business to focus on Windows, but then POSIX happened and they had to provide something in the market to meet the requirement.
Were this to be true, and they intended immediate death for this whole layer, then a) "Windows Services for UNIX" would never have existed, and b) the famous argument with David Korn over the quality of their port of his shell would never have happened.
In any case, a "userspace personality" such as NT exhibits is not added quickly. The NT design began in the late 80's, and I think that something like a POSIX layer existed from the beginning.
I didn’t say they intended death for the POSIX subsystem, but that it was included to satisfy requirements for government contracts. It had the obvious additional advantage of allowing UNIX software to be recompiled for Windows with minimal changes.
WSL2 is cool [for me] because it's boring - boring and stable is what I need on my workhorse. Other "cool" would be distrohopping and unixporn, but that's teenager-like coolness in reverse of the former.
Postgresql will become cool once they start thinking on operators - they still lack simple `show slave status\G` statements for quick checking replication status. Googling everytime for the WTH of tables needs to be queried.
Interesting view with cloud vendors, there does seem to be a shift from traditional LAMP stack.