I haven't used Windows in quite some time, but I believe they are quite different. WSL is more like a very basic version of Wine in that it implements Linux system calls and can execute ELF binaries, and as such requires you to install a host OS for libc and any other libraries you want. Cygwin is more like Winelib in that it provides a custom libc implementation and toolchain that are natively compiled, and as such requires you to rebuild your applications.
My understanding of WSL is that Linux software runs natively on Windows by virtue of a compatibility layer. Eg. if there is a fork() in my code it will be translated into CreateProcess() or something like that.
Perhaps you're right, maybe WSL can do all the job nicely so maybe there is little if any point in developing cygwin. I have never tried it to be honest. I just prefer Windows 7 and loosely-integrated solutions - a 3rd-party Linux in a box feels better than a Microsoft Linux in the Windows kernel (yet just using a VM doesn't feel great for performance reasons and beacuse of not rally seamless file system integration).
meditate|7 years ago
scooter_de|7 years ago
anticensor|7 years ago
mohammedbin|7 years ago
voltagex_|7 years ago
Ironically, Cygwin might be closer to "native" than WSL is in some cases.
chx|7 years ago
Like what...?
> Ironically, Cygwin might be closer to "native" than WSL is in some cases.
Which cases...?
qwerty456127|7 years ago