Hacker News new | past | comments | ask | show | jobs | submit login

It seems just the opposite to me. The Windows Subsystem for Linux seems a testament to the NT Kernel and its deliberate approach from nearly three decades ago. Designed originally to support Win32, POSIX, and OS/2 frontends, for a long time it only ever really needed to exercise one of those things. Now it has the best POSIX layer it has ever had, focusing on byte-for-byte compatibility with binaries targeting the Linux kernel. That's incredible power, and the idea that the NT Kernel is doing it almost like running any other application is fascinating. If the NT Kernel is "Doing Linux better than Linux", that's a fascinating statement, because the NT Kernel is also running Win32, UWP, and all of its own chores at the same time. What's the Linux kernel doing? ;P

Sure, Win32 is a beast now past retirement, and Microsoft has been trying to help that retirement happen sooner rather than later with UWP, but again, that seems a testament to the underlying NT kernel, because the NT kernel doesn't care, it's still chugging along doing its thing and doing it well. It's also running on more hardware combinations and more processor architectures than most other kernels could dream of touching.




I don't think we'll ever see Win32 retired. .NET and UWP aren't distinct subsystems; they run atop Win32.


Sure, there will always be legacy Win32 apps. I work with too many VB6 applications to be more optimistic about that.

UWP is closer to being a distinct subsystem than "running atop Win32". Though it isn't an official subsystem, it has some of the hallmarks of one (and that was one of the complaints about Windows 8). They've been successfully blurring the lines between UWP and Win32 since Windows 8, but it's also not entirely accurate to state that UWP "runs atop Win32". (The old .NET Framework does, yes, but I didn't mention the .NET Framework, I mentioned UWP.)

If anything, with increasingly more of the Windows Shell moving to UWP, it may even start to be increasingly the case that it is Win32 running atop UWP.


COM is dependent on Win32, and UWP is based on COM.


COM itself is quite small, sure there are a lot of components that implement COM and use Win32 but I don't think it would take much to port COM itself to another platform.


COM itself as a format/standard is Win32 agnostic other than being built on some similar data structures to Win32.

Also, WinRT isn't COM. It's very like COM, "son of COM and .NET metadata" and all that, but WinRT and all the WinRT components don't use Win32 and never have, and even have a quite clean break with all of the Win32 data structures COM has embedded in the past.

(Though, I suppose some of that starts to get into the semantic weeds of whether or not you consider DirectX a part of "Win32" or not, as for instance XAML is built on DirectX and much of DirectX is provided as WinRT components, sort of. There are certainly a lot of Win32-adjacent things that live in all worlds like DirectX, but whether or not they can be considered Win32 is an interesting philosophical debate.)


It doesn't just use the COM ABI et al. It also uses the distributed bits.


> ...and more processor architectures than most other kernels could dream of touching.

I don't think it comes close to BSD, Linux, or even QNX in that regard.


>than most other kernels could dream of

Except Linux.


NT pretty much only runs on x86 and ARM (yes, yes, 32- and 64-bit variants of both). yawn

Almost ever other OS out there allows for more. Linux, (Free|Open|Net)BSD, illumos, AROS... hell, even ReactOS has had ports to architectures Windows has never dreamed of :)


The Xbox 360 has a Windows NT-kernel and IIRC it runs with a PowerPC-based CPU. Older NT-kernels were available for PowerPC, MIPS and Alpha. Your point is still valid, though.


> If the NT Kernel is "Doing Linux better than Linux", that's a fascinating statement, because the NT Kernel is also running Win32, UWP, and all of its own chores at the same time. What's the Linux kernel doing? ;P

Microsoft, the former juggernaut, would say "Linux, who?", and then proceed to throw their sales and marketing weight around.

> a testament to the underlying NT kernel, because the NT kernel doesn't care, it's still chugging along doing its thing and doing it well.

It must be advantageous for Microsoft, at least in the short-term, to open themselves up and decrease friction between themselves and the Linux community, especially on the server-side where Linux won, than to innovate and compete on Microsoft-centric features and functions - to create something new that's more compelling.

Also, Microsoft risks seeding their own destruction when they create compelling new technologies like XMLHttpRequest that, once appropriated by their competition, reduces the compelling nature of any other technologies Microsoft created for platform lock-in. I can understand innovation fatigue setting in for management when they have enough institutional XMLHttpRequest stories to go along with the endless failed software project investments and evaporating markets.

I assign meaning to the decisions and directions that individuals and companies take. Microsoft paved a gilded path for application development that points AWAY from the Windows platform. Yes, there is novelty and a definite technical achievement there that one can appreciate. But I choose to focus on the motives rather than the technical achievement, and I am disturbed by what I perceive is Microsoft's capitulation in the consumer software/platform arena.

If Microsoft is soon to be the SAAS and Cloud company and not the Windows/Office company, then the software world is worse-off because competition is good.


> Microsoft paved a gilded path for application development that points AWAY from the Windows platform. Yes, there is novelty and a definite technical achievement there that one can appreciate. But I choose to focus on the motives rather than the technical achievement, and I am disturbed by what I perceive is Microsoft's capitulation in the consumer software/platform arena.

Most paths support two-directional travel. The ancient adage that "all roads lead to Rome" seems to apply. Rome built a lot of roads to travel away from Rome, but nearly everyone realized that all of those roads also lead back to Rome. That does seem to be something of an intent in Microsoft's strategy here: if Windows is great at reaching users where they are, then Windows is great at bringing users back.

WSL makes it extremely easy to build on/with/for Linux, without leaving Windows. It worked for Macintosh to bring BSD users to Macintosh. It seems to working for Microsoft that WSL has given an option for previously Mac-or-Die web developers to give Windows a second chance. There have been plenty of headlines here on HN of previously Mac-only users delighted by new Surface devices. Obviously anecdotal evidence, but signs do seem to point that new roads are leading to Rome.


I've been using WSL since it was first released on the Insider Fast Ring. It's been great. Sure, its had it its problems, but the team is really responsive to issues filed on github. Ive had all of my WSL issues fixed and usually in a new build in 2-3 weeks after filing.

WSL has also been a savior in that I no longer need a Linux VM at home. Which is "great" because virtualization support (at least for me) has been broken for months. I can't even boot my desktop with Intel virtualization enabled in the BIOS.


Rome fell.


> Rome fell.

But not because it built roads.


Also it wasn’t like a Thursday afternoon, it took a while.


It still fell. Therefore we can conclude the "road strategy" was a failure. (Just kidding.)




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: