There are a number of reasons why Microsoft won’t use the Linux kernel for Windows. For one there is a huge difference in the technical aspects of the Linux Kernel and the NT kernel.
Another reason would be the issues of licensing involved if Microsoft has to switch over to using the Linux kernel for windows. Thirdly, there are things done on Windows that can’t be done on any other operating system.
In terms of the differences in technicalities, the Linux community doesn’t exactly have a thing for backward compatibility in comparison to the Microsoft users and neither do they develop a stable kernel ABI (Application Binary Interface) to work against.
This being the case, Microsoft’s only choice would be to either emulate the windows API and maintain compatibility with itself going forward so that it can fork the Linux Kernel whilst maintaining compatibility.
In the end, it would involve lots of challenges that might not be worth it. This is most likely to also place them on opposite sides of the Linux community. They might have to bring forth their own format and rebrand Linux. Again, this would confusing for the average user.
Licenses and other issues involved with UNIX was another reason why when Microsoft needed a replacement for MS-DOS, they couldn’t go for it then. Linux was not what it was now and their requirements were beyond expectations for PC’s of that era.
In addition, Microsoft needed a new tailored kernel to satisfy and take into consideration both their present and future needs. Presently, Linux is licensed under the general public license which means that even if presently, Microsoft was to consider using Linux, it would have to make it’s source code available. This step wouldn’t exactly favor Microsoft.
Finally, Windows has its own unique features that can only be performed by the windows operating system and none other. No doubts about it, there are also things that other operating systems do better but there are also things done on windows that can’t be done at all on other operating systems.
The only choice would be to write your own software. It would take a team of developers who would be doing something or trying to create something already existing in windows. The backward compatibility which does not favor Linux users is an advantage for windows because, it is this feature that enables hundreds of thousands of outdated programs that are still in use to be able to be run.
Conclusion
In conclusion, there is no doubt about that Microsoft using a Linux kernel for windows will come with some advantages and added benefits. But when it’s all said and done, considering the complications of the technicalities involved, lack of compatibility.
The fact that their source code would be open to the general public and the loss of some of their own unique features that make windows what it is, using a Linux kernel is probably not worth the trouble for Windows.
the more i read about the linux kernel, the more i’m convinced of it,
the real reason why the year of the linux desktop has yet to arrive is not the lack of popular, by the masses standard, software or driver problems or even newer hardware support, tho we are getting closer with latter two.
Instead it is a lack of a stable ABI, which is also the reason why android kernels never get updated.
As for why the linux kernel has no stable ABI, i have no idea but ironically a player like microsoft might be able contribute to one, considering that’s the one thing they did do right, even if the rest is bloated mess
tho that bloated mess is also a result of rigorous backwards compatibility
also considering that microsoft joined the open inventions network, the linux foundation aaand soon is shipping an full linux kernel along side the existing kernel…………. We will be in for a big wave
whether that will be the end of this civilisation or the year of linux desktop through gnu/linux/windows, or rather Glindows, remains to be seen
now a year later I know why Linux doesn’t provide a stable ABI, and the supported way to get the benefits from it boils down to releasing driver source code by incorporating that code into the kernel. That said the way Microsoft got wsl2 work involved some lightweight virtual machinery, and the same people involved are also working on a somewhat reverse system – winmin.
As Linux user, I just came to say you were wrong.
https://redmondmag.com/blogs/scott-bekker/2018/04/linux-kernel-new-microsoft-os.aspx
1. “Kernel” does NOT equal program libraries. MS can have it’s own.
2. Source code is NOT required to put proprietary pgms on Linux.
3. There is nothing that Win can do that Lin doesn’t do 2.5 times faster on the same hardware.
4. Linux/Unix is an entirely upside-down computing model than MS “experts” are used to. Hence, hysteria.
5. Linux/Unix is infinitely extensible by design. Extrapolate…..
6. Get a new lollipop kid, they were telling me Unix was dead in 1998. Then Linux hit. I put a whole IT department out of work the next year.
Incredible. It’s easy to write an incredibly intelligent sounding article when you have absolutely no clue what you don’t know…
Several misunderstandings in the Article.
Linux is based on Unix. The Linux kernel is actually a ground up rewrite of Unix. The GNU utilities were then used to make a complete system. A bare kernel is a near useless bit of software. Since then, there have been many many more bits added to make the complete Linux systems we have today.
Windows was originally a shell run in DOS. After 1995, to get around the severe limitations of DOS, a new operating system (NT, New Technology) was used as the basic kernal under the Windows shell. This was based on the old VMS operating system from the 1970’s. No less a luminary than Richard Stallman is on record as preferring VMS to Unix on purely technical merits alone. All modern Windows systems have that stripped down and highly modified descendant of the old VMS underneath.
The basic operations of VMS and Unix are simply different. Thus, there are things that each can do that the other must do differently. So, to run Windows on Linux, you have to have a translator layer for many functions.
That doesn’t mean it can’t be done. Microsoft has reportedly done it a couple of times, but never with a product they intended to sell. There are reasons for that, some technical and some business related.
The well regarded Wine Project is one Open Source example of the same thing. Wine continues to advance in making Windows programs able to be run in LInux. It isn’t a complete solution, but it sometimes works.
Microsoft also has some limited bits that make Linux programs able to run in Windows.
The technical limitations mean that there will probably always be limitations on the programs that you can run this way.
On the business side, things are even more complicated.
Yes, there are some issues on the terms of the GPL license. The terms of the GPL have been tested in courts in Europe and in the United States. They are quite legally enforceable.
What it means for Microsoft is that they would have to release any code they write as both Open Source and licensed under the GPL if they compile any GPL licensed code in a product. That Microsoft officially sees as a commercial death knell. The Microsoft lawyers are right too.
However, that only applies if they compile the code into their product.
If on the other hand, they simply write code that will run on top of or along side of GPL code, there is no problem. Just keep the programs completely separate. Then there is no need to lose ownership.
As Oracle found out last year, API’s are open to everybody. Microsoft can use Linux API’s in it’s commercial offerings to it’s hearts content with no legal repercussions. Thanks, Google.
So, a Microsoft Windows on Linux is not a legal impossibility.
However, it would never run completely like Microsoft Windows. That would create problems for some applications, and applications designed to run on this theoretical Microsoft Linux might not run well, or even at all on Microsoft Windows.
That is the real killer for Microsoft. As a commercial vendor, they have to provide support on all the platforms they sell to at any time. It’s the support needs that are the deciding factor there, I believe.
So, what they have done is to support (somewhat) the efforts of the Mono group and the Wine group, and also work at making Windows run well in Linux and the various Virtual Machines. That gives them the best of all worlds from a support standpoint.
If your Microsoft application is acting up, Microsoft only has to make it work in Windows. Any other problems must be taken up with the environment vendor.
And that’s probably as it should be.
Quote, from above…
STRONG BAD: The system is down, yo.
HOMESTAR RUNNER: Ohh… the system… Right, right.
The System is Down - Homestar Runner
Windows is multi-user in the sense that, over time, they’ve grafted
the concept of separate users and permissions onto the OS. The big
difference between Unix/Linux and Windows is that the former started
out expecting multiple concurrent users; the security and management of
users is integral to the design of the OS.
Windows started out purely a single-user OS, and even after NT, modeled
on a multi-user OS, was released, there were–and are–still far too
many operations that require the user to have administrative access
to accomplish even the simplest of tasks (e.g., install a program.
On Unix/Linux, I can install a program for my own use in my own user
environment–in Windows, I have to have Administrative rights, and
it’s visible to all users. Printer setup, networking–a whole raft of
day-to-day operations require elevated permissions.)
So you should consider Windows an OS that supports multiple user
environments, but *generally* only one is active at a time.
A unique Windows feature ? Windows is a multi-tasking OS, but still not a truly multi-user system… Linux emulates this feature by claiming all users have ‘root’ privileges 🙂
Que? Can you elaborate? I may have misunderstood your comment. On the systems here there isn’t a single user who has full root access, even the admins have separate accounts depending an the tasks they need to perform, thanks to a rigid SE ruleset.
Blaming the ABI as backward compatibility problem is only
true if you only distribute binaries. If you have the source code of
your programs only the API needs to be stable, and you can recompile
your programs if the ABI change. This way there is much more backwards
compatibility on Linux in the open source world then there ever was on
Windows. Windows user will definitely know the kludge of ‘compatibility
mode’ when installing older windows programs on a newer windows
version.. Or as the article states it: microsoft emulates it own (older)
windows API.
Also who can give examples of things done on windows that can’t be done at all on other operating systems? I guess these are “alternative facts” ?
“The backward compatibility which does not favor Linux users is an advantage for windows because, it is this feature that enables hundreds of thousands of outdated programs that are still in use to be able to be run.”
Seriously? You can’t get more ‘backward compatibility’ than Linux.
Things tend to die when the cost of maintaining and updating it is greater than the revenue it generates. Most Unix variants will die soon. And most other operating systems will be still borne or will die. But Windows will live on because MS still makes money from it and will continue to make money for the foreseeable future,
What about switching to FreeBSD. The BSD license allows various companies to incorporate the OS in their products without ever having to release their source code.
Apple has ported a lot of code from FreeBSD to macOS and iOS in order to reduce the work required for maintaining the system.
I remeber of “Xenix” as a Microsoft try on UNIX world. Anyone else?
There is no reason. Windows already has a perfectly fine kernel and switching to a linux kernel would not provide any benefits what so ever
umm having an os that uses 250 mb at startup vs one that uses 1.5 gig isnt a benefit im confused
i wonder if Microsoft Drawbridge technology will make it happen. A Microsoft tailored Linux kernel with Windows UI on top – alternative to KDE, GNOME UI ??
Both of those are, actually, atrocious..:) && KDE is, just, pure bloatware, meh; perhaps worth mentioning, even two years later! ;$
I will like to see that. It’s Windows UI over virtually any other UI for me, honestly.
I thought it was an interesting article.
Meanwhile, in other news, elephants will never walk on their hind legs either. This must be the most utterly pointless article I have ever read.
And yet, step by step, bit by (literal) bit – AKA (Micro$oft’s) “Azure Sphere” – it’s creeping up towards total (world) domination.
We -all- know where this and WSL is leading, to – they are going to develop more, create incentives and dependencies; then, they are going to (elevate and) integrate and start to develop “standards” and new technologies which will -far- surpass any fragmented and independent *nix projects…
Soon enough, there are going to be more than just drivers and shell scripts; and whatever the **** else they’ve been doing, for the past decade+
We’ll (all) be doomed, then. The way that they’re working with the US gov’t on military projects… We don’t even need to talk about it, just remember the antitrust lawsuit some years back – when Micro$oft had been “ordered” (by the Supreme Court) to split into three: you do (!?) remember how the taxpayers ended up covering their costs; in the millions and billions, not even exaggerating, blah.
(Of course that you /we don’t. Nobody had been thinking and /or reporting about “that other stuff”.)
Anyway, not trying to write a book here, there are dark days ahead – for example, their (fairly recent) GitHub acquisition – and I’m not talking about
something likeGooglespying andchanging their privacy policies – these things are going to be monumental.There will be “no escape”. Literally, we’ve been able to catch-and-discover Meltdown and Spectre (and Foreshadow) purely on accident; the backdoors are /were visible only for a little bit longer (and at this particular time): with new – extremely, blazing fast – memory hardware, they will deliver onto us types of hardware (not software!) encryption which will function
undetectableon the lowest of low-levels… Just like the Intel ME, as another example.What “System76” (and, perhaps, somebody else) is doing atm., disabling Intel’s Management Engine (ME)
throughfirmware is only going to have effect for a little bit longer; which, you know that, they’re only testing for what’s to come, againThat Huawei (extradition) FUBAR is going to coast (to coast, like their big ships ;)) into SNAFU, quite possibly... Why is the US beginning to ban Korean (and foreign!) technology manufacturers; because they know what is and what will become possible.
*Just have to stop and think for a second, but everybody's too busy running around - even trying to survive - as "they" have managed to turn the entire world into a more hostile place, meh.