Lately, we hear a lot about Linux — how it’s dominating on servers, how it makes up a large chunk of the smartphone market, and how it’s becoming a highly viable option on the desktop. But Linux didn’t appear out of thin air; before the creation of Linux, and before the rise of Windows, the computing world was dominated by Unix. And for those who don’t know, Linux is very similar to Unix. Since we’ve already looked at the differences between Linux and Windows, what exactly is the difference between Linux and Unix?
Before we go into that, we have to talk more about Unix. It was first developed by AT&T in 1969. After many years of evolution, we don’t have the Unix anymore. Instead, there are various operating systems that have stemmed off of the original Unix. Now you have things like Solaris and HP-UX which are technically Unix operating systems as they’ve earned Unix certification. In case you didn’t know, Mac OS X is also a certified Unix operating system. But then there are other operating systems that are Unix-like.
This can be for a number of very specific reasons, but they all end up this way due to one general cause: they don’t have any original Unix code in them. In the case of Linux, this is because the code was written from complete scratch so that the system would act very much like a Unix system, but wouldn’t contain any Unix code. Then there are others, such as FreeBSD and OpenSolaris, which stem off of actual Unix operating systems but have the proprietary bits taken out and replaced with open source ones.
Since the Unix code is proprietary, this implies that there isn’t any Unix code left in there, which makes it Unix-like. There are a number of other factors that go into determining whether an operating system is Unix or Unix-like, but that’s outside of the scope of this article.
Common Differences Between Unix And Linux
When looking at the difference between Unix and Unix-like operating systems, it’s hard to tell that there even is one at first glance. There are many, many things that the two groups have in common (which might not be very surprising due to the groups’ names). But there are little differences here and there, depending on which exact version of the Unix and Unix-like operating systems you’re comparing. Various services have slightly different locations (such as startup scripts), they often have different designs to offer the same functionality, and they may include the entire system or just the kernel.
However, it’s important to realize that new software is almost always developed for Linux first and later ported to Unix (excluding Mac OS X). A lot of tools which were first made for Linux systems, such as the Gnome and KDE desktop environments, can now be installed on Unix and other Unix-like systems. It’s also important to note that Linux (and most other Unix-like operating systems) are free to obtain and use, while Unix operating systems are not.
Costs are a big part in deciding what technology to use, and Linux provides a strong advantage in that regard.
Example: Solaris vs. Linux
Now that you have a good idea of the differences between Linux and Unix, let’s take a look at some more specific examples. First, we’ll compare Solaris, made by Oracle (formerly made by Sun Microsystems), with Linux. Linux is more portable, meaning that it can run on more system architectures (think x86 and ARM) than Solaris can. Solaris is known for better stability and hardware integration, but Linux is still good enough in those areas. Linux also has a much faster rate of development than Solaris.
There are also several other differences between them, but this can occur even among different Linux distributions. For example, they use different package managers, different default file systems, and more. There are also various differences in the respective kernels on how they deal with things such as I/O and network, but those differences are extremely technical.
Example: Mac OS X vs. Linux
Another good comparison to make is Mac OS X versus Linux. Mac OS X is certainly easier to set up, but once again Linux is cheaper and has plenty of open source software that you can use rather than proprietary Apple-backed solutions. It’s also far more flexible as Linux can run on virtually any hardware while Mac OS X can only (officially, at least) run on Apple hardware. Mac OS X also has its own kernel (named XNU) which is different to both Linux and Solaris. It also uses HFS+ as the default file system rather than ext4 as Linux does or ZFS does for Solaris.
Flexible & Free
With this comparison, I’m not trying to say that Unix doesn’t let you be productive — there are plenty of places and professionals that use true Unix operating systems for their solutions. However, Linux simply offers far more flexibility and provides lots of cost savings in comparison to Unix. And that is what Linux professionals value, and which is why Linux is far more prevalent today.
Are you a Linux professional? If yes, why do you choose Linux over Unix?