Windows 11 could run on Linux


Solid points made in this article:

Comments (50)

50 responses to “Windows 11 could run on Linux”

  1. hrlngrv

    Windows has problems dealing with core files not on C:. Also, it doesn't seem to treat other volumes mounted onto C: as really part of C:. That means it's difficult at best to put some core files onto effectively read-only storage, which means Windows security depends much more on restricting administrator privileges than on OS kernel security features. Bluntly and directly, it's too difficult to put key parts of Windows on volumes mounted read-only. There's also no way to mount a volume noexec. Linux with ACLs provides more robust and granular security.

    A measure of how little some in MSFT seem to understand security: MSFT's own packages for Visual Studio Code for Linux install the whole thing including binary executables under /usr/share/code. Linux's Filesystem Hierarchy Standard makes it clear it should be possible to mount /usr/share on a separate noexec partition. MSFT's VS Code people missed that. Note that Powershell and ROpen for Linux install correctly under /opt/microsoft, so there are other groups within MSFT who do know the right way to do things in Linux.

    I've read articles about the NT kernel, descended from VMS, being more modern than the Unix kernel. That may still be so. NTFS also has some advantages. However, how the NT kernel handles multiple volumes/partitions isn't as advanced as how Linux handles them. To the extent filesystem capabilities matter, Windows has fallen behind for a few decades now.

    • Winner

      In reply to hrlngrv:

      It amazes me that we still need lettered drives. Not only do other OS's solve this problem, it was even solved on Apple II ProDOS in 1983! And today we are still editing C:/ into our batch files....

      • Lordbaal

        In reply to Winner:

        Not everyone want the everything on one drive.

        So if you get rid of drive letters, people won't know which files are one which drive.

        • hrlngrv

          In reply to Lordbaal:

          All those poor Mac users who must have no idea where their files are spread across all their external drives. /s

          For new/inexperienced users it's useful to default to automatically mounting removable media and putting 'shortcuts' for each partition on users' desktops. IF those 'shortcuts' are symlinks in ~/Desktop, then file search utilities will show them under users' home directories.

          As for using multiple partitions on internal drives, that's something for more advanced users, but it's nice when it's easy to do. FWLIW, on my home machine, I keep /usr/local, /opt, /home, an idiosyncratic /pub (shared between accounts) and /var/lib/flatpak on separate partitions from /. Keeping /home on a separate partition is one of the absolutely best things about Linux compared to Windows.

        • Winner

          In reply to Lordbaal:

          Nobody is talking about using only one drive.

          Other OS's allow multiple drives but don't require lettered drive names. That's a big downside of Windows in preserving their archaic notation.

    • illuminated

      In reply to hrlngrv:

      Mount everything as a folder on C: and voila! you have a linux.

    • sevenacids

      In reply to hrlngrv:

      Well, technically, at a lower layer - that of the NT object manager - drive letters don't exist on Windows NT as well. "C:" is only a symbolic link in the \?? directory, which points to \device\harddiskX\partitionY... Only few people know this. That we still use "C:" exclusively in the shell is a relict from DOS-times, just like "\" as path separators (which probably date even back to something like CP/M times). There is no requirement that Windows depends on using them, APIs like CreateFile() also work with \?? paths. AFAIK, in the early Longhorn days I think there were attempts to get rid of them or at least hide drive letters in Explorer. The option to do so should still be around. But from the perspective of the NT object manager, everything really looks more like a Linux file system hierarchy.

  2. richardfenoglio

    I could see this happening long term, but not how the author of that article envisions it.

    In my opinion, it would be smarter to come out with a Linux skin first that works and acts like Windows in the GUI sense, but is based completely on Linux underneath from the start. Alongside this move, Microsoft would need to be transparent about their intention to support it moving forward, and that Windows with NT kernel will be placed on life-support at some very firm set date that would be feasible for most. Azure AD could then have tooling added to allow it to manage this specific "Microsoft OS" similar to how Active Directory manages Windows today.

    That said, I'd find it hard to imagine Microsoft would ever do this. Impossible? No. Likely? Probably not.

    • wright_is

      In reply to RichardFenoglio:

      Without 100% legacy application compatibility, it will be a non-starter.

      We have enough problems getting software to run on Windows 7 or Windows 10, without trying to get it to run on top of Linux using WINE or something.

      We have industrial equipment whose controllers are stuck on Window XP. To "upgrade" to Windows 7 (there is no Windows 10 version) , you need to fork out $1,000,000 or more for a new piece of equipment, to replace a piece of equipment that still has 10 years of life left in it. Those are common circumstances in business, but less so in consumer software, but not unheard of.

    • maethorechannen

      In reply to RichardFenoglio:

      I think what would make the most sense (though I'm also in the "not impossible but highly improbable" camp) would be a fork of ChromiumOS with the Google bits removed. Then add some sort of win32 compatibility layer (WINE-on-steroids or a VM, I don't think it matters much). If that layer doesn't have 100% compatibility, so what as it's not like different versions of Windows have had 100% compatibility either.

  3. madthinus

    To me, Steven J. Vaughan-Nichols and Gordon Kelly is in the same category of quality when it comes to technology writers. I avoid both and if I can't, I ignore them.

  4. sevenacids

    Azure runs on the NT kernel. Windows (say, the user land) is very likely to never run on anything other than the NT kernel. Maybe Microsoft is releasing its own Linux distribution for PCs at some point, but I don't think they will get rid of their own kernel anytime soon. They're putting too much effort in this Windows Lite/WCOS thing right now to do so.

  5. Lauren Glenn

    And then we quote Steve Jobs when asked why he doesn't port apps over to Linux:

    Because I want to make money.

  6. Lauren Glenn

    Probably the best part for me with Windows is that it's not Linux.


    The one thing that always annoys me most about Linux (and on the iPod too):

    Flick of the switch.m4a

    Flick Of The Switch.m4a

    These are not two different files and no person should expect them to be.


    I don't want to compile things to get them to run. I'd rather have a compiled EXE. Much like I won't go to these pizza places where you get an uncooked pizza and are expected to cook them at your own house.... it costs the same as if they cooked it, but yet you get to! Yay! :(

    I guess if you want an OS based on top of Linux, go get Linux or MacOS.

    • hrlngrv

      In reply to alissa914:

      Case sensitivity in filenames is a preference at most. Like a preference for driving on the right or left of the road. At least from a commandline, it's easy enough to use a shell function to convert AbCdEf.xYz to [aA][bB][cC][dD][eE][fF].[xX][yY][zZ], and easy enough in GUI software to spot filenames visually. And, FTHOI, Linux 5.2 kernel supports case-insensitive filename searching.

      As for precompiled binaries, most distributions, certainly ALL those using Debian or RPM packages have binary packages for most major software titles. Obscure software, e.g., a more recent version of something that one's distribution hasn't kept current, may need to be compiled from source, but only Gentoo tries to compile everything from source because that's one of the major points of that distribution. If one doesn't like compiling, Gentoo would be a bad choice.

      • Lauren Glenn

        In reply to hrlngrv:

        I guess I look at it from the perspective of "why would I want that?" but that's me. Like if I have to make everything uppercase just to find it, then it gets annoying to me when I don't want it to do that... but like you said, it's a preference.

        The one thing about Linux I disliked was that it required more effort to do basic things and sometimes I just want to install and go... vs. figuring out dependencies, etc. and it was one of the things I liked with Ubuntu when I tried it... but I'd rather spend the $100 and get Windows which just runs for me most of the time.

    • maethorechannen

      In reply to alissa914:

      I guess if you want an OS based on top of Linux, go get Linux or MacOS

      MacOS isn't based on top of Linux. It's based on top of Darwin (which has a BSD based userland), that uses a XNU kernel (which is built on top of a Mach microkernel). It has nothing at all to do with Linux.

  7. lvthunder

    Yeah and monkeys could fly out of my butt.

    There is no chance of this happening. There is no advantage to Microsoft do so such a thing. Do you really think running everything through a compatibility layer isn't going to break a lot of things. It's one thing to do basic apps through compatibility layers, but games and heavy apps like the Adobe suite is something else.

    Plus who knows if there ever is going to be a Windows 11.

  8. christian.hvid

    I have plenty of respect for SJVN, but this article is just silly. I can absolutely see Microsoft release a Linux based OS - and in fact they already have in the form of Azure Sphere - but performing a heart transplant on Windows without causing massive compatibility, stability and security problems is both unrealistic and utterly pointless. Also, for all we know, Microsoft is absolutely not "preparing Windows 11", so why would Steven state this as a matter of fact?

  9. Lordbaal

    There will be no Windows 11. And they will definitely not be using Linux.

  10. Kevin Costa

    This Steven is a biased guy, a Linux fanboy. For every move MS makes towards open source software, he thinks that Windows will become Linux and/or Windows is dead, unimportant, and that you should move regardless of your needs/situation. It's comical. He called the NT kernel rotten... Yeah, so rotten that Linux 'benchmarkers' frequently compare both, and Linux still lose in lots of aspects and use cases (and wins in others, deservedly). Competition is healthy, but for the penguin afficionados, only their systems matter, and anything different is bad. This type of journalist has no broad vision and open mind for new things; he, like Windows and macOS fanboys, lives in a bubble.

    My guess for the future is that NT will be open sourced (when the majority of the MS revenue comes from cloud services), like Apple did with the macOS kernel; and this move will help Windows be even more robust with the help of the community. Switching kernels would be a hell of a job, and business would prefer to use LTSC or pure Linux to avoid the thousands of possible problems.

    The day Linux just works, like Android, it will have a chance of being popular. Android is the Linux that grew up in life and knew how to properly do things for normal people. That's why is so popular.

    • bill_russell

      In reply to Kevin_Costa:

      "Linux" doesn't need to be anything other than what it is. It is developed by and used by people who find it useful, thats all.

      The argument that "Linux" needs to be more user friendly is silly because Linux is an OS kernel and drivers, but when people argue about linux they are using the name as shorthand for a Windows wanna-be comercial GUI OS competitor product, that "failed" because it wasn't user friendly enough or wasn't good enough. No one sells "Linux" in that way.

      Honestly, I don't think the average person should even be using Windows casually these days. The smartphone and other applicance devices came along and are better for them. Windows was big with consumers because it was the only way to get on the internet back then.

  11. wright_is

    Windows is an OS... How can it run on Linux?

    The Kernel is the basis of the OS and replacing the NT kernel with Linux would just be a desktop skin on Linux.

    All the background stuff, libraries, frameworks etc. would need to be replicated and adjusted to work with the Linux Kernel instead of the NT Kernel. That would mean re-engineering the majority of Windows. Everything is dependent on the Kernel, so everything would need to be re-written.

      • wright_is

        In reply to Waethorn:

        A container is just a stripped-down VM - but it uses the host OS for the Kernel and other core OS features it needs.

        • hrlngrv

          In reply to wright_is:

          WINE [...] is slow, unreliable and incompatible with a lot of software.

          Slow, certainly. Unreliable and incompatible is problematic. FWIW, I haven't had problems running anything from or under wine. The only Windows software with which I've had problems running under wine is MS Office, and then Office 2007 and later because they just won't install properly. OK, Office 2003 and prior install OK, but good luck using the VBA Editor under wine.

          Then there's all the FOSS which runs under both Windows and Linux, and maybe macOS too, e.g., RStudio and GNU R, which has become the most widely used statistics software on the planet (no doubt much to the SAS Institute's displeasure). To the extent 3rd party frameworks like Qt allow quite similar GUIs across Windows and Linux, that reduces the advantages for Windows-only frameworks.

          Then there's software which controls outside hardware. Admitted: that requires a given OS, and God help the poor SOBs who are having to adapt such Windows 7 software for industrial machine controllers with EOS 4 months away.

          • wright_is

            In reply to hrlngrv:

            Yes, but all of our LoB software is Windows only and none of it will run on WINE, getting it fixed or re-written is too expensive. And Office 365, along with our ERP software, makes up the main part of my workflow.

            I did run Linux as my main desktop environment, when I was self-employed, for about 6 years, but I needed to keep a Windows PC around for running genuine MS Office to check and re-format documents, before sending them out to customers. The incompatibilities of OpenOffice / LibreOffice are, unfortunately, too many and too obvious for it to be used, when the customer is using MS Office. If you only need to supply finished documents in portable formats (E.g. PDF or XML), it isn't so bad, but if you need to regularly exchange working documents, it is just too much of a pain.

        • waethorn

          In reply to wright_is:

          Not always. Docker on Windows can run Linux applications.

    • maethorechannen

      In reply to wright_is:

      They could create a win32 subsytem that sits on top of a Linux kernel instead of an NT kernel. Or just embrace and extend WINE.

      There's already been one switch of the underlying kernel in the history of Windows. Another switch is not entirely impossible.

      • wright_is

        In reply to maethorechannen:

        That is exactly what I just said. Win32, .Net (not Core), ActiveX, Internet Explorer and its rendering engine, WPF, UWP and a dozen other technologies would need to be re-written.

        WINE has been around for over 2 decades and it still doesn't do what it says on the tin. It is slow, unreliable and incompatible with a lot of software.

        Before Microsoft could switch out the Kernel, the smallest part of the equation, they would have to re-engineer everything else that makes up Windows to run on the Linux Kernel and be 100% compatible, before they could switch.

        And the Linux Kernel isn't any better. It is big and bloated, just like the Windows Kernel. There is no technical advantage to it.

        Go back and read Paul's series on the development on Windows. Windows on DOS wasn't "real" Windows, it was a graphical shell that allowed programs to run together. It was only once NT came along that it became a real OS and the key parts of Win32 were (poorly) implemented in Windows 9x to make them somewhat (but not completely) compatible. Getting the 9x stuff to run smoothly under Windows took the best part of a decade to complete and Windows was only a fraction of the code base of what it is today.

        They would be better off dumping Win32 and all the other frameworks entirely, coming up with a new Kernel and basic operating system based on it and put "old" Windows in VMs for backwards compatibility. And if you are going to do that, then I would also avoid the Linux Kernel. Use the lessons learned from what went right and wrong with the Linux Kernel and the NT Kernel and make a modern kernel that is fit for the future.

        Don't forget, the principals behind Linux pre-date Windows NT by a couple of decades! Both aren't modern and both have their problems.

        • maethorechannen

          In reply to wright_is:

          WINE has been around for over 2 decades and it still doesn't do what it says on the tin. It is slow, unreliable and incompatible with a lot of software.

          I think Microsoft could do a much, much better job at creating a WINE like layer for Linux than a handful of people outside MS ever could.

          Also, MS could use a switch to Linux to drop it's legacy chains with just enough win32 compatibility so that the "mainstream must have" apps run. If it ran Android apps as well as ChromeOS does then it would probably be quite compelling in the consumer market (not that they seem to care about that market much anymore)..

          And the Linux Kernel isn't any better. It is big and bloated, just like the Windows Kernel. There is no technical advantage to it.

          But there might be a cost advantage. Just like there was a cost advantage moving Edge to Chromium.

          • wright_is

            In reply to maethorechannen:

            But it is the legacy compatibility that is key.

            Getting it "good enough" for mainstream is pointless, those are the applications that will get converted. It is the real legacy stuff, where there is no alternative or the alternative involves spending 7 figures on new "hardware" to replace perfectly functional hardware.

      • Kevin Costa

        In reply to maethorechannen:

        DOS is much more "similar" to NT than Linux ever will be. That's why was 'easier' to "switch" kernels at the time. I bet that the Win32 subsystem has A LOT hardcoded depedencies from NT. Remember, in its purest form, Win32 it's a 30 year old API.

        • wright_is

          In reply to Kevin_Costa:

          No. VMS was more similar to NT than Linux. The Windows that ran on DOS got a lot of the "new" stuff in NT ported to it, to make it possible to write software that (sort-of) worked on both platforms. That is why it took nearly a decade to merge the two strains.

          There was never a Kernel Switch as such. Go back and read Paul's series, he explains it a lot better than I could in the comments here.

      • jimchamplin

        In reply to maethorechannen:

        There has never been a “kernel switch.”

        If you refer to Windows XP, it’s just NT 5.1. It’s a point upgrade of Windows 2000.

Leave a Reply