Live data from Hacker News

Ubuntu on Windows

blog.dustinkirkland.com

91–100 of 933 posts

Re: Ubuntu on Windows

#91
post #53

A few random thoughts: - Wow, hell is really freezing over! - The hardest part of running bash and other posix things under windows is filesystem access. Windows uses drive letters and backslashes, unix has a root filesystem with forward slashes. It seems they are taking the same route as cygwin by "mounting" windows drives in /mnt/c (or /cygdrive/c). - If you just wanted bash and some posix tools, the harder but nic…

I expect they implemented a subsystem for Linux at the syscall level - i.e. they implemented the Linux kernel's interface at the ABI level. No headers would need to intermingle with open source; compile on Linux, run on Windows.

I've read comments where people wrote that NT always had some kind of POSIX subsystem, and it has probably just now been completed and expanded.

Can't find any substantial writings on this, but it seems likely.

Re: Ubuntu on Windows

#92
post #79
post #52

Earlier quoted context omitted.

The performance hit is so negligible on modern hardware that the distinction doesn't really matter.

Except, it does matter. Not having a unified filesystem, not having a unified window manager, etc are quite some issues.

As another posted pointed out, if you just want to bring up a VM for gaming, who cares?

Also, you can share directories between the native filesystem and the VM quite easily. And if you're using something like VirtualBox or VMWare there are "unity" windowing modes available.

Re: Ubuntu on Windows

#93
post #63
post #4

"Linux geeks can think of it sort of the inverse of "wine" -- Ubuntu binaries running natively in Windows. Microsoft calls it their "Windows Subsystem for Linux"." I find it amazing that you can have such a functional Ubuntu environment by translating system calls. Microsoft does have the advantage of Linux being open-source I suppose, while the Wine project had to reverse engineer DLLs. Or have you supply them on yo…

Windows NT was designed from the start to have modular subsystems. It was most infamously used to provide a POSIX subsystem which really only checked boxes on government acquisition forms. :-) The reason WINE went with the library emulation route is because: (a) the Windows kernel doesn't have a stable system call layer, and (b) the Win32 API is massive anyway. Windows has an easier time emulating Linux at the very l…

”It was most infamously used to provide a POSIX subsystem which really only checked boxes on government acquisition forms.”

Ah, so that was the rationale. I always found that subsystem curious.

Re: Ubuntu on Windows

#94

To clarify, it sounds like what Microsoft has added to Windows 10 is a Linux ABI. This has been done before with other x86 OSes: FreeBSD has had 32-bit ABI compatibility for at least a decade ( https://www.freebsd.org/doc/handbook/linuxemu.html ), and the "lx branded zone" for Solaris has it as well ( https://docs.oracle.com/cd/E19455-01/817-1592/gchhy/index.ht... ).

I think FreeBSD linuxulator has 64bit support too since they introduced Docker support last year.

Re: Ubuntu on Windows

#95
post #39

Earlier quoted context omitted.

Totally doable. Use KVM to virtualize Windows and (the important part) make sure your CPU and motherboard support VT-d. Then you can pass a graphics card (separate from the one you run Linux with, naturally) to the VM and get >95% of native performance. There's lots of videos of folks doing this.

That's still "VM" not "Native". You aren't running them "side by side"... you are running them "One inside the other". Not exactly an apple-to-apple comparison.

The "Native" OS is also under the hypervisor. So effectively you have real CPU, real RAM, real GPU, and you can give it a real hard drive too. At that point does it really matter that the USB controller and network card are virtualized?

Re: Ubuntu on Windows

#97
post #48

How in God's green earth did Canonical think helping Microsoft with this was a good idea for the Linux community?

From the Scott Hanselman link posted elsewhere in this comment thread:

> Note that this isn't about Linux Servers or Server workloads. This is a developer-focused release that removes a major barrier for developers who want or need to use Linux tools as part of their workflow.

It helps Canonical deploy Linux on the server in places that refuse to run Linux on the desktop, since Microsoft has said they're not interested in replacing Linux on the server with lxss on the server. This is absolutely good for certain subsets of the "Linux community" with certain motivations and ideologies. (And awful for others, of course.)

Re: Ubuntu on Windows

#98

microsoft is leveraging FOSS Linux to get Mac users. I think it's a real smart move. The author points to using grep and Xargs and some other tools to quickly update a package. That's the key here. These bash/Linux utilities are productivy boosters for all the Linux and Mac/bsd people out there. I can't imagine living without them and they're necessary for any system I develop on (which is currently a Mac).

I agree. I'm (mostly) a Windows user, and the one reason I'm constantly thinking of moving to OSX as my primary OS is the amount of command-line tooling that is available in the system. Everything new is always there first. I've started feeling that I was holding back by staying on Windows, even if using Mingw daily.

This might be the thing that saves Windows as a dev machine for me. I'm a heavy cmd/powershell user but I'd migrate to bash in an instant.

Re: Ubuntu on Windows

#99
post #12
post #4

"Linux geeks can think of it sort of the inverse of "wine" -- Ubuntu binaries running natively in Windows. Microsoft calls it their "Windows Subsystem for Linux"." I find it amazing that you can have such a functional Ubuntu environment by translating system calls. Microsoft does have the advantage of Linux being open-source I suppose, while the Wine project had to reverse engineer DLLs. Or have you supply them on yo…

Windows NT had a POSIX subsystem awhile ago, not sure what happened to it. The NT Kernel was designed to have different personalities like Win32, OS/2, POSIX, etc It could be an updated version.

>Windows NT had a POSIX subsystem awhile ago, not sure what happened to it.

I was interested in that too, since I write Unix utilities and it is sometimes useful to have them work on Windows as well. I've done that (checked that it worked on Windows) with a few utilities in the past (written in C), that did not use any very Unix specific features that were not present on Windows. And remember reading around that time that Windows (I think it was from NT onwards) had a POSIX subsystem.

Then more recently, as in, a few months ago, I wanted to check that out again, and did. IIRC I read (maybe on a Wikipedia page) that the POSIX subsystem is not present in Windows any more.

Post reply on HN