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.
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.