Live data from Hacker News

DOS Subsystem for Linux

github.com

161–170 of 182 posts

Re: DOS Subsystem for Linux

#161

So does this run DOS on Windows? Or DOS on Linux? Or Linux on DOS? Or DOS on Linux on Windows? Would be nice if there were an explanation in the README.

The GIF's prety much crystal clear: it runs QEMU on Linux. And QEMU runs whatever you want, because it's a machine emulator/virtualiser, in this case it's running as x86 with MS DOS on top.

This entire discussion is strong evidence that the GIF is not crystal clear at all. (-:

Re: DOS Subsystem for Linux

#162
post #35

Earlier quoted context omitted.

Author here. I am planning to do an in depth write up of how this works, but it seems Hacker News found it sooner :) When DSL is first invoked at the command line it boots up the Linux kernel which takes over control of the computer from DOS. Now here’s the trick: DSL makes use of a processor feature called VM8086 which allows for a 32 bit operating system to run legacy 16 bit code mostly natively. This feature is ho…

After not finding much of a README (yet), I poked around the source code a few minutes ago. Thanks for my actually confirming my initial "...he can't be doing it that way, surely..." :) This is nice. It reminds me of the IPL sequence of some mainframe OS I sadly can't remember right now (might be System/i?) where the bootloader that launched the kernel was a first-class OS process that went from running the entire sy…

Implementing my own extended memory support in the supervisor is indeed an interesting idea, I might try it out :)

Another idea I had after reading the dosemu source is implementing a DPMI server to allow protected mode DOS apps to run. It might even be possible to run an early version of Windows this way too.

Re: DOS Subsystem for Linux

#164

Earlier quoted context omitted.

A "Linux subsystem" is a Linux system that is a part of a bigger system. And "Linux audio subsystem" is an audio system that is a part of Linux. And if you swap the words, you get "audio Linux subsystem" which doesn't make sense, not really. So the proper name would be "Windows Linux subsystem", but I concede that it does sound really weird (because both Windows and Linux are the same kind of things, they're OSes). A…

You could use the possessive form here: "Windows' Subsystem for Linux", but that's not a thing product managers like to use in naming...

It probably had an internal name like "winix" or "lindows" - but PM took the reins and came up with a much worse name, as is tradition.

Re: DOS Subsystem for Linux

#165
post #27

There are a ton of comments here that seem to be misunderstanding what this software is. This creates a WSL-like environment on a DOS host system. It does not create a DOS environment on a Linux host. I'm not sure where this misunderstanding even comes from; the name is perfectly analogous to WSL.

The misunderstanding comes from choosing a name for it that stongly implies it is not the thing that it is.

Re: DOS Subsystem for Linux

#166
post #35
post #12

Earlier quoted context omitted.

Is this explained somewhere? I'd love to read how it works (without trying to understand the source code).

Author here. I am planning to do an in depth write up of how this works, but it seems Hacker News found it sooner :) When DSL is first invoked at the command line it boots up the Linux kernel which takes over control of the computer from DOS. Now here’s the trick: DSL makes use of a processor feature called VM8086 which allows for a 32 bit operating system to run legacy 16 bit code mostly natively. This feature is ho…

It would be cool to do the same using KVM. You can use a magic I/O port instead of an interrupt as the upcall mechanism, on the other hand trapping interrupts has to be done from the DOS side...

Re: DOS Subsystem for Linux

#167

Earlier quoted context omitted.

I was under the impression that the name arose out of trademark requirements. https://news.ycombinator.com/item?id=14093517

Windows has had subsystems since the OS/2 era, and WSL1 was actually such a subsystem. Initrix was the Microsoft POSIX Subsystem.

WSL1 isn't actually an NT subsystem like Interix was.

Re: DOS Subsystem for Linux

#168
post #56
post #52

Earlier quoted context omitted.

I would imagine it's because WSL is a terribly confusing name itself for a lot of people. There are two ways to read "Windows Subsystem for Linux": 1. This is a subsystem that runs on Windows that enables Linux binaries. 2. This is a subsystem that runs on Linux that enables Windows binaries. The confusion comes in the fact that when I write those two sentences, I naturally want to write "This is a subsystem FOR Wind…

The WSL terminology really only makes sense if you are aware that Windows has the concept of subsystems - and which is why swapping other labels makes even less sense. I.e. the run-Windows-on-Linux thing would probably not be called Linux Subsystem for Windows, because what is a "Linux Subsystem"? And of course WSL2 isn't a subsystem anymore, but is stuck with the product name. ¯\_(ツ)_/¯

It still doesn't even make sense when you know about Windows subsystems though. True, it is a "Windows subsystem" in Windows terminology, but from my native-English speaker point of view, it's not "for" Linux in the way that the word "for" is used in standard English.

It does work if you assume it's a shortening of something like "Windows Subsystem for Running Linux Applications (on Windows)"

But I get that naming it is a tricky problem, because even a technically accurate name like "Windows Linux Subsystem" (after the old 'Microsoft POSIX Subsystem' name) is still confusing.

Re: DOS Subsystem for Linux

#169
post #57
post #52

Earlier quoted context omitted.

I would imagine it's because WSL is a terribly confusing name itself for a lot of people. There are two ways to read "Windows Subsystem for Linux": 1. This is a subsystem that runs on Windows that enables Linux binaries. 2. This is a subsystem that runs on Linux that enables Windows binaries. The confusion comes in the fact that when I write those two sentences, I naturally want to write "This is a subsystem FOR Wind…

Windows (Subsystem for Linux) - vs - Windows Subsystem (for Linux)

((Windows Subsystem) for Linux)

is probably closest to WSL1’s intent.

It was a Windows subsystem (the first new one in years), and its goal was to let you run Linux apps.

Re: DOS Subsystem for Linux

#170
Many years ago we used to run loadlin under dos to load linux and dosemu under linux to run dos. And by many I mean before Windows 95. And ofcourse if you wanted the worst of both worlds there was cygwin.
Post reply on HN