Windows 9x Subsystem for Linux
201–210 of 265 posts
Re: Windows 9x Subsystem for Linux
#202Re: Windows 9x Subsystem for Linux
#203Is this person a wizard? To me, this seems an impossible feat. But I wonder how it seems to people who understand how it works? I'm reminded of this joke: Two mathematicians are talking. One says a theorem is trivial. After two hours of explanation, the other agrees that it is indeed trivial.
Re: Windows 9x Subsystem for Linux
#204Earlier quoted context omitted.
Slow forking is only the second biggest problem IMO. The biggest is the lack of proper signals. There's a bunch of software out there that just isn't architected to work well without non-cooperative preemption.
Huh? Signals have worked fine for a long time under Cygwin.
If you're curious, I believe the issue was discussed at length in the Go GitHub issues years ago. Also on the mailing lists of many other languages.
Re: Windows 9x Subsystem for Linux
#205Earlier quoted context omitted.
Does that explain Word for Windows?
Don't you mean Copilot 365 .NET SharePoint Document Platform for Windows?
Re: Windows 9x Subsystem for Linux
#206I wonder how similar this project is to "BSD on Windows": https://archive.org/details/bsd-on-windows
Also, I know about https://en.wikipedia.org/wiki/Architecture_of_Windows_9x, but it's not really meaty enough for my taste. :)
Re: Windows 9x Subsystem for Linux
#207By microsoft's naming scheme this should be Linux Subsystem for Windows
I agree. Don't have a citation now, but I remember reading that this was a copyright problem. They wanted to name it "Linux Subsystem for Windows", but apparently the Linux foundation does not allow unaffiliated projects to have a name beginning with "Linux", or something like that.
Re: Windows 9x Subsystem for Linux
#208Earlier quoted context omitted.
Try using the Windows busybox port of "Bash": https://frippery.org/busybox/index.html It has a subset of bash implemented on Ash/Dash. Arrays are not supported, but it is quite fast. The forking problem is still present, though.
Cygwin bash isn't slow either. The problem is a typical bash script isn't a series of bash operations, it's a series of command line program executions. For example, someone might do something like this ( completely ignoring the need to quote in the interests of illustrating the actual issue, forking): for x in *; do new_name=$(echo $x | sed 's/old/new/') mv $x $new_name done Instead of something like this: for x in…
Dash has been benchmarked as 4x faster than bash. The bash manpage ends by stating that "bash is too big, and too slow."
Re: Windows 9x Subsystem for Linux
#209What's a good resource going over the architecture of Windows 3.x and 9x? I know bits and pieces, like that it has a "VM Monitor", and there's support for this sort of thing, though the details are all over the place. Most people summarized Windows as just "running on top of DOS", which is clearly not correct. Obviously, it doesn't use "virtual machines" in exactly the modern sense of the word, but there's clearly so…
It's got lots of very thorough documentation and sample code to dig through
Re: Windows 9x Subsystem for Linux
#210Before WSL, the best ways to run unmodified Linux binaries inside Windows were CoLinux and flinux. http://www.colinux.org/ https://github.com/wishstudio/flinux flinux essentially had the architecture of WSL1, while CoLinux was more like WSL2 with a Linux kernel side-loaded. Cygwin was technically the correct approach: native POSIX binaries on Windows rather than hacking in some foreign Linux plumbing. Since it was me…
Cygwin implements a POSIX API on Win32 with a smattering of Nt* calls to improve compatibility but there's a lot of hoop jumping and hackery to get the right semantics. Fork isn't copy on write, for one thing. I was a Cygwin user from about 1999 to 2022 or so, spent a little time on wsl2 (and it's what I still use on my laptop) but I'm fully Linux on the desktop since last year.