> Jeff picked me up at the airport, and we drove to Microsoft's main building where we were joined by Neil Konzen, a talented 23 year old who was Microsoft's main systems programmer on the Macintosh. I knew Neil from his days as an early Apple II hobbyist, when we collaborated on adding features to an assembly language development system when he was only 16.
Just... "Microsoft's main systems programmer on the Macintosh" is such a weird sentence to read today. On the other hand, Microsoft also shipped Xenix, a full-on licensed Unix™ OS before they shipped DOS.
Also Applesoft basic was derived from Microsoft basic?
Yes, they did copy the operating system but that doesn't mean that the Mac Platform is unimportant to them.
Back then, Flight Simulator was still owned by subLOGIC. Microsoft got a license from them to make the IBM PC version.
For anyone who doesn't get this reference:
In the end, it just makes more sense to pull in the actual Linux kernel than to try and achieve the same performance semantics.
When you use it, you get a nice Korn shell and it is built on PE binaries linked against PSDLL.DLL. there's a functioning but very old version of GCC that ships with it.
The PE binaries mark up the desired subsystem to be invoked so you don't have to be in the environment to execute one - the kernel takes over.
PSDLL acts as a translation layer for NT much as kernel32 does for win32. You can't run unmodified Linux binaries like you can with wsl. On the other hand, WSL requires that you invoke lxss with some special com magic to get access to Linux first so you can't just exec an elf file directly. The Pico processes you mentioned - these allow the kernel to install specific handlers/translators of their syscall functionality into the windows kernel.
So yeah architecturally they're pretty different and WSL isn't really the same subsystem concept they started with. On the other hand it that's probably a good thing because everything needed a rebuild for SUA.
Due to this lots of Linux stuff is based around huge masses of tiny files (build processes, VCS, docker, etc) and there was just no chance the windows kernel was ever going to come remotely close performance wise.