What defines an operating system isn’t a geeky label or a collection of ramblings from the mouths of its community members. Nor is it some empty and pointless certification offered up by an obscure group of malcontented purveyors of “standards.”
An operating system is a kernel, a supporting cast of programs, and a concept. For certain commercial entities, it’s also a marketing campaign, hype and profit. But, is the Linux operating system just another flavor of the Unix operating system? Yes. But, it’s also much more.
What you, as a business owner, want to know is if Linux is enough like Unix that you can transition from a commercial Unix flavor to Linux with minimum hassle and expense. The answer is yes.
You might also ask, “With how much certainty can you guarantee that my applications will make that same transition?” Red Hat, Novell and Canonical can give the best answers, but their consultants will tell you that only in rare cases will your applications have trouble making the trip from your Unix environment to a Linux-hosted one. Rest assured that your issues aren’t so unique that their highly skilled Linux engineers can’t tackle them.
Unix has different “flavors” that generally refer to differences injected by their development teams to take advantage of proprietary hardware features or to capitalize on special software innovations, such as volume management or virtualization. Such flavors are Sun’s Solaris, IBM’s AIX, HP’s HP-UX, AT&T’s System Vr4, BSD Unix, DEC Unix, Mac OS X, and the beloved SCO Unix.
A Unix flavor might differ from others in its administration tools, its filesystem types, its process handling, and its device names, but each is undeniably Unix. But, why? What makes any one of those systems Unix yet so different?
Unix systems, as different as they might be, have a lot in common with each other. Type the ‘ls’ command on any Unix system and something predictable happens: You will see a file listing. The /etc directory contains system configuration files, the system password file, and startup files. These common threads collectively form Unix.
The saying, “If it walks like a duck, quacks like a duck, and looks like a duck, then it must be a duck,” is usually quoted to make a point about some issue during a political debate. Similarly, if Linux looks like Unix, behaves like Unix, and handles security and processes like Unix, then it must be Unix–albeit a new and improved Unix flavor, but Unix nonetheless.
Do you recognize Unix when you see it? If you looked at a filesystem layout containing the following directory (folder) names, which operating system would you say that you’re looking at?
I386, Program Files, Temp, Users, Windows
You’d likely respond, “Windows.” You’d be correct. What if you saw the following filesystem layout?
bin, etc, dev, usr, opt, home, root, sbin, proc, var, mnt
You’d call it Unix. You’d be correct; it is Unix. Yet, you might call it Linux. How would you know the difference? There are ways, once you’re logged into a system but not from simply seeing a list of directories. From the filesystem layout alone, you’d conclude that Linux is a Unix flavor. And, you already know that Unix has different flavors so that subtle differences of directory names, file locations, administrative tools or filesystem types have little bearing on whether the system is actually Unix.
Now that you’re convinced that Linux is a Unix flavor, have a look at a fine argument to the contrary. Linux, as an operating system, isn’t very exciting. But, what makes it an absolute obsession for so many is the Linux concept, which drives its worldwide group of communities wild with passion. The Linux concept derives its passion from the original sources for all things related to computing freedom: the Free Software Foundation (FSF) and the GNU Project, both begun by Richard Stallman.
To Stallman and the Free Software Foundation, “Linux” and “open source” are terms that exist only in the minds of the uninformed. They call our special operating system GNU/Linux or GNU+Linux, and to them there’s no such term as open-source software. For the FSF, the terms “free software” and “open source” have nothing to do with each other. Open source only means that you have access to a program’s source code but not necessarily any associated freedom to study it, alter it, or redistribute that source code. And, to them, free software has nothing to do with cost but everything to do with freedom.
So, why this tangent about free software? It has to do with the related Linux bloodline question, “Is it just another Unix flavor?” The recursive acronym, GNU, stands for “GNU’s Not Unix”, which means that Stallman and the FSF answer “no” to the question of the relation of the GNU/Linux operating system to Unix.
Shown below is an excerpt from the Linux kernel source README file that explains the relationship between Linux and UNIX. Though there’s no author attribution for this file, it’s obvious that the definition it carries has the blessing of those who create the Linux kernel, including Linus himself:
WHAT IS LINUX?
Linux is a clone of the operating system Unix, written from scratch by Linus Torvalds with assistance from a loosely-knit team of hackers across the Net. It aims towards POSIX and Single Unix Specification compliance.
It has all the features you would expect in a modern fully-fledged Unix, including true multitasking, virtual memory, shared libraries, demand loading, shared copy-on-write executables, proper memory management, and multistack networking including IPv4 and IPv6.
It’s interesting to note that Linus Torvalds licensed the Linux kernel under the GNU Public License (GPLv2) so maybe he’s confused as well as to how to classify the GNU operating system (a.k.a. GNU/Linux, a.k.a Linux). For avid users, business adopters, the worldwide communities, the companies that produce various distributions, scores of developers, and the big businesses that create Linux-based products, it’s Linux–a free and tasty Unix flavor–perhaps the tastiest one of all.