Why? Is a 'BSD-inspired infrastructure' or Linux the absolute best, or even significantly better? Is an OS monoculture a good thing?
> Apple had its miracle in the turn of the century, and OS X and iOS are terrific OSes. Best of the breed.
The user-facing portion is, but there are significant problems with some core features (semaphores, forking being very slow, file system notifications, HFS).
Also, for a fair comparison you should run the test suite inside a vboxfs mount.
Linux was developed as a Unix compatible environment because Unix wasn't an option on commodity hardware. BSD isn't UNIX or Linux.
Why can't NT exist in the same area as a *nix compatible system?
I really kinda fail to see what would be gained by rewriting a piece of kernel that works just fine (well, except that ./ users would finally declare that they were right all along!)
If you used unix based OSes for all your life, it makes sense that every operating system should be unix.
However, there are alternative ways of doing this that seem quite powerful, like the lisp machine—it didn’t fail because it couldn’t handle tackling abstract problems, it failed because unix ended up doing it cheaper and faster. There might even be arguments for visual shell scripting.
That said, if you’re doing anything like unix, you might as well go full unix :)
That's a "thing", much more so than e.g. Windows Phone market share, or the Baha'i religion.
[0] https://linux.slashdot.org/story/17/09/01/1639250/linux-desk...
This is wrong. Only kernel modules are compiled against kernel headers, and for userland programs the kernel is binary-compatible since ever.
Which is not to say that random binaries run bare on random systems, but this is a cultural rather than a technical problem (package managers insisting on having only one version of libraries, ignorance of the soname system). But with enough effort you can always get binaries to run on a system, provided you can get ahold of the libraries it expects, up to and including glibc.
>Which is why having source code available is so important
Back to front. The reason for the current situation is it's expected that the source code is available, so there's no incentive to provide stability for binaries. Why bother? It's gonna be recompiled soon anyway.
I am quite excited about flatpak, should be quite useful for shipping applications to a wide variety of distro with a single binary.
That's why some projects deliberately build their software on very old distros, since the software then works from this version on.
No, no! This is the exact opposite of the ideal world. What we need is for the NT kernel to stay, and for Win32 to get replaced.
Look, people from the Linux world can have trouble admitting this, but NT is a really good kernel. Better than Linux in some ways- not all ways, but some. The shittiness of Windows mostly comes from Win32. That's what should go away, and WSL is taking the first steps in that direction, even if Microsoft isn't planning on "going all the way" with it.
I would love to return the question and ask, why the Linux kernel is better.
/s
Fact of the matter is, the file system has _always_ been a sore spot on Windows. It has known to be slow for decades and Microsoft engineers have flat out stated that it's not affecting their bottom line, so they have no incentive on changing that.
We are working on making both the WSL layer and NTFS itself better. For example, in the upcoming Windows release, we have created a fast path for stat that should yield a modest speed improvement.
We have a lot more work to do, though.
In an ideal world, Windows NT stays, but Win32 is demoted to be just one of the subsystems the NT kernel supports.
'Twas it not always thus?
Why? In all of the digressions I would like to read about this is a big one. I have been considering the same. The only Apple product I have left is a MBP. There are soooo many choices on the PC side of things. The paradox of choice hits hard when looking at; Samsung, Acer, ASUS, Lenovo, Dell, and HP. Some $700 models have the same specs as $1500 Mac's with touch screens and pen support.
I'm no Apple fan but the competition is embarrassing at times.
For the record my two notebooks are a MBP 2014 and a Dell XPS13 Developer addition running Arch. Both are equally competent as development machines.
Well, I do not have the store on the tile part of the start menu. But I think it is fair game that the store would show some advertisement when it is a tile.
Also I should mention, that native Linux build might be optimized for ext2 or whatever as opposed to NTFS.
First thing that bothered me: He was bothered by the need to `sudo /etc/init.d/PostgreSQL start` to start up Postgres every boot. Yeah, that's annoying, but easily mitigated by running Postgres (and MySQL and any other service you need) in the Windows layer. Postgres installs just fine in Windows, and uses the Windows service system, which has gone basically unchanged for decades, versus Linux with like 3 service management systems.
But the main thing is that his main objection is that his test suite is about half as fast as it should be. This is honestly not a big deal to me, and I do Rails full-time as well. IMO, even the fastest run of his test suite at 2 minutes is still way too slow to run regularly. If I was working on that app, and I've worked on many with test suites many times slower than that, I would have already switched to running a limited part of it that tested what I was actually working on. I stick to about a 10-second max for tests that I run routinely while working. If it's longer than that, I'll run a smaller set that's under that, and run the full suite maybe once before pushing, or just let the CI server run it. I have to figure the number of people for who that kind of slow-down is a deal-breaker is pretty low.
For example, I have a heavily customized Zsh and Neovim. In Linux, using a SSD and the startup times for both are insignificant. Even on my system with a slow HDD (5400RPM) the startup times are not bad unless my system is under heavy IO.
In WSL inside a Windows setup with SSD, the startup time takes half a second, hardly worst than my Linux setup with HDD! Not only startup times are bad, tab completion sometimes take multiple seconds to complete. This is unacceptable, specially considering a system running on SSD.
So while I concur his CI times are bad either way, this slow in files system is really bad in WSL.
Which comes with its own set of problems.
The entire point of MSFT in releasing WSL was so devs on Windows could use Unix-y goodness on Windows. I think that reasonably applies to the usage of Postgres too, and not just ruby/node/etc.
----
The proper way would be for Windows to autostart WSL when the user logs in / system starts, like providing a "Linux boot up" behaviour to the WSL userland and trigerring it on actual system boot up.
Such as? Seriously, I'm running it like that and it works fine. I'll grant that Ruby on Windows only kind of works, but no problems with PG or MySQL.
I do agree though that WSL ought to run as a Windows service and do the normal Linux boot process when that starts.
Although, I strongly doubt it'd come to that. Not because I think the new MSFT is above EEE, but because I think it'd be hard to pull that off with the community of Linux software writers and users.