Some years ago, I've heard people saying that the OSX and Linux were better than Windows, I also remember of reading something that said the Solaris operating system didn't fragment their files and that the Linux file system was almost in the same step but none of these claims seemed to have basis or references.


What are some objective criteria that can be used to compare operating systems with one another?

closed as not constructive by Journeyman Geek, Bob, RedGrittyBrick, Tog, Bobby Jun 6 '12 at 15:10

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance. If this question can be reworded to fit the rules in the help center, please edit the question.

  • 3
    I think "When comparing operating systems, what are the main points for comparison?" is a valid question. Point #2 solicits opinion and debate, putting your whole post at risk of bringing down the Big Hammer. Please revise the question in accordance with the FAQ. – CodeGnome Jun 6 '12 at 10:29
  • Aren't there premade opinions about that? I didn't want to solicit debates, I'm just interested in common-sense about that or at least citations about possible controversy. – Billy Rubina Jun 6 '12 at 12:25

I think you can take the methods of comparing OS's and split them into two groups:

  1. Features
  2. Structural differences

First, structural differences: OS's today are pretty similar under the hood. Basically all have some influence from Brian Kernighan and Dennis Ritchie, the two that worked on the C programming language and also UNIX. In fact, many of today's OS's, such as Linux, Solaris, and OS X are categorized as "UNIX-like", because they are descendants of UNIX in one way or another. UNIX's philosophy was basically to make everything simple, or more accurately, "basic", and that each program should have one and exactly one function. These concepts are still used today.

As for Windows, the odd one out, it was also influenced by K&R's work. Although Windows is not a "UNIX-like" system, it is written in C, the language K&R invented, and exhibits certain similarities. For example, the "Blue screen of death" is just Windows's version of the kernel panic, an idea that was invented along with UNIX.

All of today's mainstream OS's are based on a kernel design scheme called the "monolithic" kernel. This just means that the kernel is run as one program. One implication of that is that all the code in this one program has full control over all of your computer's resources, which could cause bugs to do some serious damage. There has been a well-known debate regarding the possibility of "splitting" an OS's kernel into separate programs to improve stability and security. This design is called the "micro-kernel". As I mentioned, all of today's OS's are based on the monolithic kernel design, perhaps because of their better performance, or maybe just because it's been that way for a really long time.

As for features, this is probably the big comparison, since as mentioned above, all mainstream OS's today are very similar structurally. And in fact, features vary only slightly in my opinion. This one really depends on who you're asking. For example, Mac OS X has some pretty nifty features, such as XGrid and OpenCL (although that now works on other platforms too). It's also very user-friendly. But it's also been criticized as "carrying baggage", perhaps referring to its relatively out-dated file system. Also, it only works on Apple hardware.

Linux is great for servers and super-computers because of its openness and apparent superiority with multi-processing. It's also one of the more secure choices out there. But it's also been criticized as being not-so-user-friendly for a desktop setting, and isn't supported officially by any large company. However, Linux is probably the way to go for the most bleeding-edge software, since it's changed often. In fact, Linux might be getting a new file system and new window manager in the near future.

Then there's Windows. Windows, like OS X is supported by a major company, and you find lots of software for this platform. From talk about features and OS structure above, you can see that they're not all that different, so this abundance of available software is probably what's keeping this OS's market share afloat. Other than that clear advantage, there's also the fact that it will work on a lot of different hardware, unlike OS X.

So you see that today's OS's aren't that different from each other. And many of the features that are made today take the form of open-source software, which can be used on any of these OS's. However, there are some clear differences, like the hardware they can legally run on, the openness of the code, etc. Feel free to ask more questions if you'd like.


Any OS comparison needs to be done in the context of "fitness for use." You have to define what you want the OS to do before you can decide which is best for any particular use case.

However, there are certainly objective points of comparison. A non-exhaustive list includes:

  • Hardware support
  • Application ecosystem
  • Development ecosystem
  • Filesystem support
  • Resource management
    • Memory management
    • Process scheduling
    • I/O controls
    • TCP stack implementation
    • Resource-level accounting
  • Security
    • OS-level security mechanisms
    • Filesystem-level security mechanisms
    • Audit features
    • Process accounting
    • User/role management
  • Native system services
  • Application-specific performance benchmarks

There's a great deal of drill-down for each of these topics, which is why you are unlikely to find a canonical answer to your question.

Not the answer you're looking for? Browse other questions tagged or ask your own question.