So, there are lots of different versions of Unix out there: HP-UX, AIX, BSD, etc. Linux is considered a Unix clone rather than an implementation of Unix. Are all the "real" Unices actual descendants of the original? If not, what separates Linux from Unix?
-
3Related: Why isn't GNU/Linux SUS v3+ compliant? – Gilles 'SO- stop being evil' Jun 04 '11 at 21:28
9 Answers
That depends on what you mean by “Unix”, and by “Linux”.
UNIX is a registered trade mark of The Open Group. The trade mark has had an eventful history, and it's not completely clear that it's not genericized due to the widespread usage of “Unix” refering to Unix-like systems (see below). Currently the Open Group grants use of the trade mark to any system that passes a Single UNIX certification. See also Why is there a * When There is Mention of Unix Throughout the Internet?.
Unix is an operating system that was born in 1969 at Bell Labs. Various companies sold, and still sell, code derived from this original system, for example AIX, HP-UX, Solaris. See also Evolution of Operating systems from Unix.
There are many systems that are Unix-like, in that they offer similar interfaces to programmers, users and administrators. The oldest production system is the Berkeley Software Distribution, which gradually evolved from Unix-based (i.e. containing code derived from the original implementation) to Unix-like (i.e. having a similar interface). There are many BSD-based or BSD-derived operating systems: FreeBSD, NetBSD, OpenBSD, Mac OS X, etc. Other examples include OSF/1 (now discontinued, it was a commercial Unix-like non-Unix-based system), Minix (originally a toy Unix-like operating system used as a teaching tool, now a production embedded Unix-like system), and most famously Linux.
Strictly speaking, Linux is an operating system kernel that is designed like Unix's kernel.
Linux is most commonly used as a name of Unix-like operating systems that use Linux as their kernel. As many of the tools outside the kernel are part of the GNU project, such systems are often known as GNU/Linux. All major Linux distributions consist of GNU/Linux and other software.
There are Linux-based Unix-like systems that don't use many GNU tools, especially in the embedded world, but I don't think any of them does away with GNU development tools, in particular GCC.
There are operating systems that have Linux as their kernel but are not Unix-like. The most well-known is Android, which doesn't have a Unix-like user experience (though you can install a Unix-like command line) or administrator experience or (mostly) programmer experience (“native” Android programs use an API that is completely different from Unix).

- 829,060
-
76
-
67"Gnu is not Unix" means Gnu isn't based on Unix original code, not that Gnu doesn't want to implement Unix specs. Quoting rms: "Free Unix! Starting this Thanksgiving I am going to write a complete Unix-compatible software system called GNU (for Gnu's Not Unix), and give it away free(1) to everyone who can use it." – jlliagre Nov 16 '10 at 08:08
-
9If a Linux distro wanted to get certified as a UNIX, it wouldn't have to change very much and it could be so. But I haven't heard of anyone paying all that money for what would, at this point, be worth so little. – Kevin Cantu Nov 17 '10 at 21:32
-
7@Kevin: Caldera (now infamously known through another name) once worked on it, though they didn't go all the way (they seem to have abandoned the idea and pushed for LSB instead well before they suddenly forgot they'd ever heard of Linux). – Gilles 'SO- stop being evil' Nov 17 '10 at 22:57
-
Hahahah. I also have some vague memory of someone providing a Linux for government / military procurement that did go through that. This list, though, doesn't include dead companies: http://www.opengroup.org/openbrand/register/ – Kevin Cantu Nov 18 '10 at 17:46
-
1BTW: While earlier versions were not certified as such, Mac OS 10.5 and 10.6 are Unix (tm). – dmckee --- ex-moderator kitten Apr 14 '11 at 17:01
-
1Nice, correct and concise. One remark: Nothing about the goal of POSIX: to make a system where standard
C
could compile whithout editing. For the ability of transporting complex application... For that, Linux match! :-) – F. Hauri - Give Up GitHub Feb 15 '13 at 09:38 -
@Gilles, hm... strange... if Linux is Unix-like and Android is Linux-based, shouldn't Android become Unix-like automatically? – milkovsky Mar 20 '15 at 09:01
-
5@milkovsky No. As I explain in my answer, the word “Linux” has two meanings. “Android is Linux-based” is true with meaning 1 (the kernel). “Linux is Unix-like” is true with meaning 2 (the operating system). – Gilles 'SO- stop being evil' Mar 20 '15 at 16:27
-
-
1@Pandya Is GNU with Herd Unix like? And if it's the GNU commands that make it so, then how about Windows with Cygwin? or Windows with Gnuwin32 – barlop Sep 08 '15 at 19:47
-
So what makes GNU/Linux distributions Unix-like is the combination of the emulation of the Unix kernel, via Linux, as well as providing an emulation of the user experience in Unix systems, via the userland? I know(or think) that the implementation of the GNU + Linux combo is a bit different than FreeBSD implementation, and I believe then that it is the interface that makes a system Unix-like. In that case, if a Windows version had an interface similar to that of Unix, would that be considered Unix-like? – Honinbo Shusaku Jul 14 '16 at 10:27
-
2@Abdul Unix-or-not isn't a black-and-white distinction, but Cygwin and the Linux emulation layer on Windows 10 (called “bash on Windows” but in fact it can do a lot more than run bash) are rather Unix-like. – Gilles 'SO- stop being evil' Jul 14 '16 at 12:43
-
Can I say Linux is not a Unix? I read here GNU/Linux is a Unix type (http://www.ee.surrey.ac.uk/Teaching/Unix/unixintro.html) – barteloma Jul 31 '16 at 20:40
-
As well as Linux without GNU (e.g. Android), there is GNU without Linux (e.g. WSL, cygwin, GNU/BSD, GNU/HURD, GNU on Solaris/HPUX, DEC Athena, ...). Most of these are not 100% Free, but they exist. I have run all listed above. – ctrl-alt-delor Feb 04 '20 at 22:53
-
Also “Linux®” Trademark is owned by Linus Torvalds and administered by the Linux Foundation: https://www.linuxfoundation.org/trademark-usage/ – WinEunuuchs2Unix Feb 19 '20 at 02:42
-
2@abdul it is not emulation. Gnu/Linux is an implementation of Unix (not UNIX). Apart from certification, and missing out some bits that are stupid. It is Unix. It is not emulation like Cygwin. There is no indirection. – ctrl-alt-delor Mar 14 '20 at 21:45
-
@barteloma I've stopped making it a point to say GNU/Linux a while ago, or to think that was the more strictly accurate (while remaining general) term, particularly having since learned what ctrl-alt-delor mentioned – Honinbo Shusaku Apr 29 '20 at 09:25
-
-
@ctrl-alt-delor
As well as Linux without GNU (e.g. Android), there is GNU without Linux (e.g. WSL, cygwin, GNU/BSD, GNU/HURD, GNU on Solaris/HPUX, DEC Athena, ...)
- though at the time, I knew that Linux is a kernel, and GNU the userland, I did not realize there were actual implementations using Linux without a GNU userland – Honinbo Shusaku May 29 '20 at 13:45 -
1@abdul GNU/Linux might have been accurate in the 90s when most Linux distros mainly ran the kerneland a few GNU tools. But nowadays GNU toos are neither the biggest nor the most important part of a distro. And I am not going to mention every important piece of software that runs on the OS if all I want is to communicate what kind of OS it is. – Dakkaron Feb 02 '21 at 06:31
-
@KevinCantu some Linux distros did get certified. Check The Open Group official register of UNIX Certified Products you'll see Inspur's K-UX and Huawei's EulerOS – phuclv Jun 06 '22 at 16:26
For all intents and purposes, a typical modern Linux distribution (Ubuntu, Debian, Red Hat, Fedora, Slackware, etc) is a Unix, but strictly speaking, no system can claim to be Unix without being certified, so instead people say they are Unix-like. They are inspired by Unix, and carry on its culture.
This also applies to BSD systems.
Mac OS X is certified Unix, so it's Unix both in name and indeed. (and it's actually based on BSD).
It should be noted that since Linux itself is just a kernel, it can be used to build non-unix-like systems (such as Android).

- 1,040
-
1Note: the Mac OS X kernel is not based on any BSD kernel. The user mode part is based on FreeBSD and in parts NetBSD to my knowledge. – 0xC0000022L Mar 11 '11 at 19:38
-
2Today's kernel might be rather different from the BSD kernel, but I think it was initially (at least partly) based on it. – hasen Mar 13 '11 at 11:20
-
1nope, it wasn't. And I'm tempted to downvote, but please read up about the Mach kernel first and its involvement in Mac OS X, perhaps you will correct your statement then ;) – 0xC0000022L Mar 13 '11 at 14:44
-
3It should be noted that FreeBSD is a direct descendant of ATT Unix and once contained ATT Unix code. It was not just "inspired" by Unix. – Rob Aug 15 '13 at 11:55
-
-
1@0xC0000022L, well, the fact is "OS X is based upon the Mach kernel. Certain parts from FreeBSD's and NetBSD's implementation of Unix were incorporated in NeXTSTEP, the core of Mac OS X." Agree? – poige Oct 28 '13 at 08:42
-
2@0xC0000022L and we going further now "Early versions of Mach had monolithic kernels, with much of BSD's code in the kernel. Mach 3.0 was the first microkernel implementation." As to me, http://osxbook.com/book/bonus/ancient/whatismacosx/arch_xnu.html is quite an authoritative source. – poige Oct 28 '13 at 09:12
-
3And to conclude: "Some aspects that BSD is responsible for include:
process model user ids, permissions, basic security policies POSIX API, BSD style system calls TCP/IP stack, BSD sockets, firewall VFS and filesystems (see Mac OS X Filesystems for details) System V IPC crypto framework various synchronization mechanisms". As to me this is enough to say that it's based on BSD. Face the truth.
– poige Oct 28 '13 at 09:15 -
1
Linux is more 'Unix-like' so yes simplistically you could call it a clone, the same is true for BSDs (although admittedly BSDs could be considered closer to Unix than Linux).
The main thing that gives Linux the Unix-like title is the fact that it is nearly fully compliant w/ POSIX (Portable Operating System Interface [for Unix]) standards that have built up over time.
The other key thing, is the inheritance of code etc, as demonstrated on Wikipedia, Linux does not actually originate from Unix sources, instead it is pretty much built from scratch (this is disputed however).
So essentially, the main thing that separates Unix from Linux is the ancestry and the standards that it meets.

- 2,650
-
3
-
I'd definitely say the BSDs are closer to Unix than Linux. Due to BSD's more liberal license and it's close development with AT&T UNIX, a lot of BSD source code and it's APIs are used in commercial Unix. The UFS filesystem in Solaris and some other commercial UNIX came straight from BSD. Also, the Berkely Sockets API (not necessarily source) used by everything including Linux was developed on BSD. – penguin359 Apr 26 '11 at 04:16
-
3After the whole SCO vs IBM mess, it has become clear that the Linux kernel contains no Unix code at all. – vonbrand Jan 23 '13 at 14:55
The choosen answer explains it quite exhaustively, but you would have to watch a whole documentary to know all the details between the UNIX initial developement, and how Linux went out.
First you have to consider that Linux is the kernel, which was made by linus and other programmers. He chose to release it with the GPL, which by the time was a license made by the FSF, (RMS and other folks), who were also developping their own kernel and GNU.
What we usually call Linux is, at first, the kernel, plus all other tools originally coming from the GNU project. Those two project are historically different, because at the time, the kernel from the FSF folks was abandonned to favor the Linux kernel, which was much better.
I remember there is a documentary, you should really watch it, I find it important for your programming culture.
Another thing you have to consider when thinking about "*nix", is also everying involving POSIX and other architecture-standardised stuff. It's subject of OS design/research, but it defines precisely how the involved OSes works, and is crucial when you have a kernel working well with its tools.

- 336
-
1Actually POSIX is now called SUS (Single Unix Specification), which was mentioned. – 0xC0000022L Mar 11 '11 at 19:39
-
2@STATUS POSIX was the basis for SUSv2. The Austin Group was later formed as a joint working group between the IEEE who created POSIX and The Open Group who own the UNIX trademark and the UNIX specification. They released POSIX:2001 also known as SUSv3. They are one in the same as far as I can tell. POSIX is still being developed with POSIX:2004 and POSIX:2008 which is the core of SUSv4. I don't think POSIX is dead yet. http://en.wikipedia.org/wiki/Single_UNIX_Specification – penguin359 Apr 26 '11 at 04:20
-
-
-
edward torvalds Sorry I cannot remember the title. It featured RMS primarily, and looked like an old doc. – jokoon Oct 22 '15 at 15:18
-
"The kernel from the FSF folks" is called GNU Hurd and it still exists: https://www.gnu.org/software/hurd/ - however, it's hardware support is a bit lacking: maximum memory supported is 768 MB, it does not support USB devices and does not support scanners, sound cards, tape drives etc. See http://www.nongnu.org/thug/gnumach_hardware.html for details. – Mikko Rantalainen Feb 05 '18 at 14:16
There are lots of great answers already but I thought the views of the great Dennis Ritchie (co-creator of Unix) would be an interesting complement to the other more technical answers.
It seems that Dennis Ritchie considered Linux to be a legitimate Unix derivative. In a 1999 interview for LinuxFocus.org, he was asked,
what is your opinion about all the Linux momentum, and the decision of many companies to start developing software for it?
His response to the question was
I think the Linux phenomenon is quite delightful, because it draws so strongly on the basis that Unix provided. Linux seems to be the among the healthiest of the direct Unix derivatives, though there are also the various BSD systems as well as the more official offerings from the workstation and mainframe manufacturers. I can't help observing, of course, the "free source" Unix-derived world seems to be suffering from exactly the same kind of fragmentation and strife that occurred and is still occurring in the commercial world.

- 12,950
Historically Linus Torvalds has created an improved clone of Minix OS. The development of Linux is not focused on a specific platform and customer base, and Linux developers have a variety of experiences and perspectives. Such OS as HP-UX, AIX, Solaris and others are mostly sharpened for vendors.
In the Linux community there is no strict standard set of tools or environments. This lack of standardization leads to significant inconsistencies within Linux. For some developers, the ability to use the best achievements of other operating systems is a plus, but it's not always convenient to copy UNIX elements on Linux, for example, when the device names inside Linux can be taken from AIX, while the tools for working with the file system are focused on HP-UX. Incompatibilities of this kind are also found between different Linux distributions.

- 269
Unix, originally UNICS (UNiplexed Infomation and Computing Service), cs is pronounce x.
Unix (trademarked as UNIX) is a family of multitasking, multiuser computer operating systems that derive from the original AT&T Unix. Development started in 1969 and announced outside Bell abs in October 1973.
Variety of both academic and commercial variants of Unix from vendors such as the University of California, Berkeley (BSD), Microsoft (Xenix), IBM (AIX) and Sun Microsystems (Solaris).
- BSD(Berkeley Software Distribution) releases provided a basis for several open source development projects that are ongoing, e.g., FreeBSD, OpenBSD, NetBSD, Darwin, and TrueOS.
- Xenix is a discontinued version of the Unix operating system for various microcomputer platforms, licensed by Microsoft.
- AIX(Advanced Interactive eXecutive) developed and sold by IBM for several of its computer platforms.
Linux is a family of free and open-source software operating systems built around the Linux kernel.The defining component of Linux is the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds.
Linux is packaged in a form known as a Linux distribution (or distro for short) for both desktop and server use. Some of the most popular and mainstream Linux distributions are Arch Linux, CentOS, Debian, Fedora, Gentoo Linux, Linux Mint, Mageia, openSUSE and Ubuntu, together with commercial distributions such as Red Hat Enterprise Linux
The user interface, also known as the shell, is either a command-line interface (CLI), a graphical user interface (GUI), or through controls attached to the associated hardware, which is common for embedded systems. For desktop systems, the default mode is usually a graphical user interface, although the CLI is commonly available through terminal emulator windows or on a separate virtual console.
- CLI shells are text-based user interfaces, which use text for both input and output. The dominant shell used in Linux is the Bourne-Again Shell (bash), originally developed for the GNU project.
- GUI shells are K Desktop Environment (KDE), GNOME, MATE, Cinnamon, Unity, LXDE, Pantheon and Xfce, though a variety of additional user interfaces exist. Most popular user interfaces are based on the X Window System, often simply called "X".

- 2,542
-
Some precisions: Today some (many?) distributions prefer Wayland to X as the graphics machinery underlying GUIs. Also, much software part of the "GNU project" is simply software written by others but distributed under licenses compatible with GPL. Case in point is TeX, but also tools like flex. – vonbrand Sep 08 '20 at 12:32
I think worth pointing out that there are (or more like were) actually UNIX certified Linux distributions:
Credit and more details https://unix.stackexchange.com/a/476945/14907

- 1,048
Linux is a Unix-Like Operating System developed by Linus Torvalds and thousands of others.
BSD is a UNIX operating system that for legal reasons must be called Unix-Like.
OS X is a graphical UNIX Operating System developed by Apple Inc.
Linux is the most prominent example of a "real" Unix OS. It runs on anything and supports way more hardware than BSD or OS X. An interesting quote I found when I was comparing BSD and Linux:
Linux is what you get when a bunch of PC hackers sit down and try to write a Unix system for the PC. BSD is what you get when a bunch of UNIX hackers sit down and try to port a Unix system to the PC.
BSD is more like a Unix OS than Linux is. Also notable is that Apple makes use of BSD and Linux components. Apple Uses APT from Debian and Ubuntu on the iOS and OS X platforms. And it is based on BSD. (The kernel though is Darwin, which is it's own kernel. Beastie the platypus is the Darwin mascot because he is a mix between Beastie from BSD and a Platypus.)
If you want a "real" Unix operating system (One that runs on anything and supports lots of hardware), try Linux.
If you want lower-end hardware support and headaches (I know I'll get a ton of hate but I don't care), use BSD.
If you want to spend $1000+, use OS X and iOS. (Again I'll probably get a ton of hate.)
I'm a long-time Linux User, having used it off and on from the 90's to early 2000's and then quit using it for awhile but started using it again around mid 2012 as my permanent OS so I can recommend it to anyone who wants to try something other than Windoze.

- 31,277
-
4As Linux is changing recently with Wayland/systemd/etc, it's removing itself more and more from being a Unix-like system and becoming its own entity. It is making itself less compatible with true Unix and Unix-like systems to the point where these real systems have developed a "don't care" attitude toward Linux. Your "recommendations" are way off base and makes me agree with you that you haven't touched any of this stuff in 15 years. – Rob Feb 15 '13 at 12:58
-
11
-
3Apple doesn't use APT from Debian. It does include a completely different tool named APT (Java's Annotation Processing Tool). And the jailbreak community uses APT as a package manager for installing iOS software against Apple's will. – abarnert Nov 11 '14 at 01:20
-
4Actually, nearly every statement in this answer is wrong. "Runs on a lot of systems == Unix" is ridiculous. Apple has never released a $1000+ system running iOS. BSD is a family of Unix and Unix-like systems, not a single OS. Linux is a kernel that can be combined with a Unix-like userland (like GNU), a stripped-down Unix-ish userland (like eLinux or Android), or anything else you want. And so on. – abarnert Nov 11 '14 at 01:23