# Windows NT Server (Kernel) vs FreeBSD Server (Kernel)



## robryecran (Jun 5, 2016)

I would like to know which OS has a more advanced kernel.  And can you explain why in layman's terms ? I know "Windows" is influenced by the mach kernel with parts of the VMS kernel. I.E. which kernel can address more CPU sockets, which can handle more RAM (1TB of RAM ?).

Thanks,
             Rob


----------



## SirDice (Jun 6, 2016)

robryecran said:


> I would like to know which OS has a more advanced kernel.


This is a good way to start a war. Neither is more advanced than the other. They just do things differently. 



> I know "Windows" is influenced by the mach kernel with parts of the VMS kernel.


VMS yes, Windows is (or was) heavily influenced by it. Really not so sure about Mach though. You might be confused with the XNU kernel of OS-X. XNU is based on Mach and bit and pieces from BSD. Windows does use a "hybrid" kernel, it's partly a microkernel with some things from a monolithic kernel.

https://en.wikipedia.org/wiki/Hybrid_kernel


----------



## robroy (Jun 6, 2016)

Good day fellow Rob,





robryecran said:


> I would like to know which OS has a more advanced kernel.  And can you explain why in layman's terms ?



Since both kernels represent decades of major human life investments, any quick reply you receive (less than about a million pages, that is) has gotta be full of broad-strokes.  Yet I figure you're asking the question for fun (a worthy reason), so here's my for-fun reply.

I gather from your comment about CPU and memory limits that you may be interested in which kernel handles big computers better.  Practically speaking, both kernels are kept up to date in this area, to the extend that they'll run computers with price tags out of the reach of any normal individual.  And a comparison between these systems quickly yields differences much more likely to determine a person's choice than their support for big computers:  open source vs closed source and precedence (people continuing to use what they already know about, including applications) being the top two.

As SirDice mentioned, the Windows kernel's a hybrid between the microkernel and monolithic kernel designs.  FreeBSD's kernel's monolithic.  The microkernel idea's to run as much code as possible in protected mode, so that bugs in things like device drivers can crash the drivers, but can't crash the whole operating system.  But when stuff's pulled out of the kernel like that, it still has to talk to the kernel, and letting the two talk to each other safely's complex.  The microkernel thing's fancier so a lot of people would call it more "advanced," yet in the real world, its benefits haven't played out in any important way.  Your average user and even a lot of really technical users don't have reason to care whether they're using a microkernel, monolithic or hybrid kernel.  And which design's better's a highly debatable thing.

Two big advantageous things in the FreeBSD kernel (that I like) that aren't in the Windows kernel are support for ZFS and jails.  Windows has been trying to play catch-up to ZFS with ReFS, but it's a very new thing in Windows-land and lacks a lot of ZFS features.  Now jails--the Windows kernel doesn't have anything like that, at least that's been coded out in to a practical, usable feature.  I can take a low-power, Atom-based computer and run fifty FreeBSD jails on it.  Each one's going to smell like a separate FreeBSD host over the network, and one can be relatively well assured that whatever's running in one jail won't leak over in to another; they're kept separate fairly well.  Now, you take this same computer, and put Windows on it, and see how many Windows instances you can run with Hyper-V--you'll be lucky to get two or three running, and when one starts to lose its mind or get infected somehow, there'll be no easy, safe way to peer in to it and see what's going on, because it lacks the "one-way mirror" trait that jails have.

If you feel like narrowing your question down to a more specific area, you might get more replies that you'd have fun reading.


----------



## Uniballer (Jun 7, 2016)

At the risk of beating this to death, I think you might as well ask, "Which is more highly evolved, a tiger or a great white shark?"


----------



## robryecran (Oct 3, 2016)

Sorry for a belated reply but I would like to narrow down my question.  Which operating system would technically be better suited to utilize all of the Xeon CPUs and Xeon phi co-processors of the Tianhe-2 ? How would each operating system compare to each other .  I mean how much of the Tianhe-2's horsepower is going to waste using FreeBSD compared to windows server ( Tianhe-2 specs 32,000 xeon's, 48,000 xeon phi's, 1375 TB of memory ) I don't believe FreeBSD can use xeon phi, or does it use xeon phi ???


----------



## Snurg (Oct 3, 2016)

<semi OT rant>
SirDice is right, the Windows NT kernel was indeed a product of technical development aid leaded by a VMS chief designer hired by Microsoft in the 1990s. You know, like IBM -> HAL, so they called VMS -> WNT.
They got rid of the QDOS kernel and then as next step made "WNT".
Which was quite a fail like Windows before 3.x. It became a success finally when NT became Windows compatible with the introduction of XP.

But it is still the same crap today. Just optically refurbished every some years.
AFAIK the Windows TCP/IP stack is still that one of WfW 3.11.

I'd like to know how much Redmond pays for each prestigious Windows installation they can use for marketing their crap.
To me NT still means "Not There!".

MCSE = Knows the complex and obscure ways to click through the dialogs to configure a single detail. Needs to recertified with every new Windows version as the click paths get re-rolled. $$$!
BSD admin = prefers to just edit a text file
</rant>


----------



## Remington (Oct 3, 2016)

robryecran said:


> Sorry for a belated reply but I would like to narrow down my question.  Which operating system would technically be better suited to utilize all of the Xeon CPUs and Xeon phi co-processors of the Tianhe-2 ? How would each operating system compare to each other .  I mean how much of the Tianhe-2's horsepower is going to waste using FreeBSD compared to windows server ( Tianhe-2 specs 32,000 xeon's, 48,000 xeon phi's, 1375 TB of memory ) I don't believe FreeBSD can use xeon phi, or does it use xeon phi ???



That's quite serious computing power even for a server.  I have servers with AMD Opteron (32 cores) and it runs very well with FreeBSD.  I know its peanut as compared to supercomputers. Tianhe ard Xeon Phi are not supported by FreeBSD.  These processors run on Linux, its more for scientific researches and its quite very expensive.


----------



## sizigee (Oct 4, 2016)

robryecran said:


> Sorry for a belated reply but I would like to narrow down my question.  Which operating system would technically be better suited to utilize all of the Xeon CPUs and Xeon phi co-processors of the Tianhe-2 ? How would each operating system compare to each other .  I mean how much of the Tianhe-2's horsepower is going to waste using FreeBSD compared to windows server ( Tianhe-2 specs 32,000 xeon's, 48,000 xeon phi's, 1375 TB of memory ) I don't believe FreeBSD can use xeon phi, or does it use xeon phi ???



Well in that case (from  a cost perspective), I would then settle for Linux, if FreeBSD does not support Xeon Phi. Performance-wise, Linux/FreeBSD will always outperform windows.  Windows wins in features and functionality. Nothing in the Linux/FreeBSD world, has come really close to AD and Exchange. For HPC, Microsoft has that... but rather go with Linux for HPC.

Just my 2c


----------



## ANOKNUSA (Oct 4, 2016)

robryecran said:


> I don't believe FreeBSD can use xeon phi, or does it use xeon phi ???



That would be awesome, but no. I agree with Remington---the Tianhe is a hell of a lot of computing power, and that's a machine designed for very specialized use cases. I'm willing to bet that Linux supports it, but only because (a) Linux has a larger and more diverse development community; and (b) that development community includes professionals working full-time with some serious financial backing from organisations and enterprises interested in that sort of thing. FreeBSD is absolutely wonderful, and a lot of serious organizations and enterprises use it for serious work, but it's still a small, volunteer-driven, non-commercial meritocracy. Seeing it run on a supercomputer would be great, but until something changes the focus will remain on developing the best general-purpose operating system for common use cases.


----------



## Aaron45 (Oct 4, 2016)

robryecran said:


> Sorry for a belated reply but I would like to narrow down my question.  Which operating system would technically be better suited to utilize all of the Xeon CPUs and Xeon phi co-processors of the Tianhe-2 ? How would each operating system compare to each other .  I mean how much of the Tianhe-2's horsepower is going to waste using FreeBSD compared to windows server ( Tianhe-2 specs 32,000 xeon's, 48,000 xeon phi's, 1375 TB of memory ) I don't believe FreeBSD can use xeon phi, or does it use xeon phi ???



There are some flavors of Unix that will support that hardware, but they are commercial flavors. If you can afford the hardware described, then you can afford the license to a commercial version of Unix that will have support and optimizations for that hardware.


----------



## Snurg (Oct 4, 2016)

Tianhe-2 has been superseded by TaihuLight, which is now the fastest supercomputer.
As the American government refused export licenses for more Intel processors, the Chinese are now using 40960 of their domestic Sunway SW26010 processors in their new supercomputer.
Which are driven by a stripped down and adapted domestic Kylin Linux kernel.
This is yet another successful Program 863 step to gain technological independence, lifting off the yoke of the US hegemony another bit more.

I guess we have to honestly congratulate the Chinese people for their achievements and praise the long term thinking horizon of their great and wise government.


----------



## Remington (Oct 4, 2016)

sizigee said:


> Well in that case (from  a cost perspective), I would then settle for Linux, if FreeBSD does not support Xeon Phi. Performance-wise, Linux/FreeBSD will always outperform windows.  Windows wins in features and functionality. Nothing in the Linux/FreeBSD world, has come really close to AD and Exchange. For HPC, Microsoft has that... but rather go with Linux for HPC.



Settling for Linux because because it supports superprocessor kinda sounds naive when you can't afford the superprocessor.  More importantly, you should settle on OS based on your needs.  Those processors are best designed for researches and frankly its way over kill for a server or even a home computer.  Also as far as I know Ubuntu Linux is the only OS that can run those super processors because they have backings from Intel and other companies with interests in supporting those processors for researches only.  That doesn't mean Ubuntu is better.  It's just designed different for specific purposes.  FreeBSD or OpenBSD is better for server from security and stability perspectives. Ubuntu is better for desktop and researches.


----------



## Remington (Oct 4, 2016)

gpatrick said:


> Solaris on a SPARC M7 can have 32-12 cores (with 8 threads) and 32 terabytes of memory.



As far as I know,  there isn't much support for SPARC in Linux community except for Oracle Linux. Ubuntu doesn't even have support for it and in fact Debian dropped support awhile ago. Does that mean Oracle Linux is superior than Ubuntu? Is Ubuntu superior than Oracle Linux? Of course not. So the argument about which OS is superior is irrelevant.


----------



## sizigee (Oct 4, 2016)

Remington said:


> Settling for Linux because because it supports superprocessor kinda sounds naive when you can't afford the superprocessor.  More importantly, you should settle on OS based on your needs.  Those processors are best designed for researches and frankly its way over kill for a server or even a home computer.  Also as far as I know Ubuntu Linux is the only OS that can run those super processors because they have backings from Intel and other companies with interests in supporting those processors for researches only.  That doesn't mean Ubuntu is better.  It's just designed different for specific purposes.  FreeBSD or OpenBSD is better for server from security and stability perspectives. Ubuntu is better for desktop and researches.



Naive? not really... Have you tried selling an idea to your manager, that has other options. If you have such a large supercomputer, you will pay a boatload for licensing (your not paying for 1 license). Or go with something else which costs a lot less than MS?  A manager would go for the cheaper option, even if the hardware will set them back a few million.


----------



## Remington (Oct 4, 2016)

sizigee said:


> Naive? not really... Have you tried selling an idea to your manager, that has other options. If you have such a large supercomputer, you will pay a boatload for licensing (your not paying for 1 license). Or go with something else which costs a lot less than MS?  A manager would go for the cheaper option, even if the hardware will set them back a few million.



Cheaper option with few million dollars supercomputer?  Something is wrong with that logic.  Manager will buy OS that is fully compatible with the hardware spec otherwise they'll run into many problems.  If they can afford few million dollars computer and surely they can afford few hundred or thousand dollars licensing for the OS and support.  Going for cheapest option isn't always the right answer.


----------



## drhowarddrfine (Oct 4, 2016)

The supercomputer probably already comes with an OS designed for it. If not, then whoever buys it has the money that they will create their own or heavily modify one to run on it. Chances are, if it doesn't come packaged with its own OS, you must create your own.


----------

