You have heard a lot about Linux and Unix, but you may not know the difference between the two terms. Truth be told, Linux was inspired by Unix, but Linux is not Unix, even though it is completely like Unix. In this article, I will explain the differences between these two popular operating systems.
Difference between Linux and Unix
Linux is open source and it is completely free. Unix is a commercial product, provided by many different distributors with its own variant, usually created specifically for certain hardware. And obviously it’s expensive and closed source code. But Linux and Unix more or less have the same thing. right?
Yes, however, they differ in technology and architecture. To understand some of the influences that shaped Unix and Linux, we need to understand the context in which these two operating systems are born.
Origin of Unix
Up to the present time, Unix is over 50 years old. It was developed in assembly language, by Digital Equipment Corporation (DEC) in the unofficial DEC PDP/7 project at Bell Labs, later owned by AT&T. It was soon ported to the DEC PDP/11/20 computer and is widely used on computers at Bell. Unix was rewritten in C in the 4th version. Because C features and compilers made it easier to migrate Unix to new computer architectures.
In 1973, Ken Thompson and Dennis Ritchie presented an article on Unix at the conference. As a result, requests to create other copies of Unix came to Bell. Because the sale of operating systems was out of AT&T’s authorized scope, it could not treat Unix as a product. This resulted in Unix being distributed as licensed source code. The proceeds are enough to pay royalties, shipping and packaging the product. However, you will not receive technical support and bug fixes from AT&T. But you still get the source code and can modify it.
Unix has enjoyed rapid growth and support from academic institutions. In 1975, Ken Thompson spent a vacation from Bell at the University of California, Berkeley. Along with some of his graduate students, he began to further improve copies of Unix. Users became interested in Berkeley’s implementations, which led to them releasing the Berkeley Software Distribution (BSD). This is a collection of system modifications and programs that can be added to an existing Unix, but it is not a standalone operating system. Subsequent versions of BSD were the entire Unix system.
Unix is now a fusion of AT&T and BSD. All other variants of Unix, like AIX, HP-UX, and Oracle Solaris are descendants of BSD. In 1984, AT&T restrictions were overcome and it can now manufacture and sell Unix.
Eventually, Unix was commercialized.
Richard Stallman saw the commercialization of Unix as an erosion of the freedoms available to computer users, so he began to create operating systems based on freedom. Freedom here means being able to modify the source code without limitation, redistribute edited versions of the software and use the software in any way the user deems appropriate.
This operating system will copy all features of Unix, including all Unix source code. He named it GNU and founded the GNU Project in 1983 to develop the operating system. In 1985, he founded the Free Software Foundation to support the promotion and funding of the GNU project.
All features of GNU are improved beyond the kernel. The GNU project developers are working on the GNU Hurd kernel, but progress is very slow (this kernel is still under development and is about to be released soon). Without a kernel, there is no operating system. Simply put, a kernel is like a PC’s CPU.
In 1987, Andrew S. Tanebaum released the MINIX (mini-Unix) operating system to aid in teaching students how to design operating system. MINIX is a functional operating system, just like Unix, but it has some limitations, especially the filesystem. Since the source code must be light enough to warrant university teaching, some functionality must be sacrificed.
To better understand how the Intel 80386 works in his new PC, a computer science student named Linus Torvalds (the protagonist appears) wrote some simple task conversion codes like an exercise. home (homework but like final exam). In the end, these scripts became the basic primitive kernel of the first Linux kernel. Torvalds is now familiar with MINIX. In fact, his first kernel was developed on MINIX using Richard Stallman’s GCC compiler.
Torvalds decided to create his own operating system to overcome the limitations in MINIX. In 1991, he informed the team MINIX Usenet, to seek comments and suggestions on his project.
Linux is actually a clone of Unix. You can also call Linux Unix, but don’t call it that. The word “clone” means a small portion of a clone evolved into a new copy from the original. Linux was created to resemble Unix’s interface and fulfill similar needs.
But anyway, Linux is the kernel looking for a complete operating system, and GNU is the one looking for the kernel. What happened next seemed inevitable. And it changed the world.
So who is the developer?
A Linux distribution includes many different components. The Linux kernel, GNU suite contains the core utilities and user-land applications combined to form a complete distribution. And there must be someone who integrates, maintains, and manages. The distributors and the communities of each distro all play an important role in getting a distribution of Linux in the hands of users.
Each Unix is developed as a unique combination using tightly controlled development facilities. Usually, they have a single kernel and are specifically designed for the hardware platforms provided by the developer.
Standards and compliance
In general, Linux does not comply with the Single Unix Specification (SUS) or POSIX. It tries to satisfy both criteria but does not want to be bound by these two criteria. Literally, there have been one or two exceptions, like the Inspur K-UX, and Chinese Linux that are POSIX-compliant.
A true Unix must comply with one of the two standards above. Several derivatives of BSSD, including all from one version of macOS, are POSIX-compliant. Variations like AIX, HP-UX, and Solaris, are all distros of those organizations.
Trademarks and copyrights
Linux is a trademark of Linus Torvalds. The Linux Foundation manages the brand for him. The kernel and Linux kernel utilities are released under the GNU General Public License. The source code is available for free.
Unix is a registered trademark of the Open Group. It is copyrighted, proprietary and closed source code.
FreeBSD is copyrighted by the FreeBSD Project and is available source code.
Differences in usage
From the perspective of a novice, in the command line, there is not much difference. Due to the POSIX standards and compliance, software written on Unix can be compiled on Linux but will be limited. Shell scripts, which can be used directly on Linux in many cases.
Some command-line utilities have slightly different options, but essentially the same repository of tools is available on both platforms. Actually, IBM AIX has AIX Toolbox for Linux application. This allows system administrators to install hundreds of GNU packages such as Bash, GCC,…
Different Unix components have different graphical user interfaces (GUIs). An LInux user familiar with Gnome or Mate will be surprised when they first use KDE or Xfce. It is similar to the GUI available on Unix, such as Motif, Common Desktop Environment, and X Windows System. All are similar for the user to easily use.
You will learn more about differences in system administration. For example, there are different init mechanisms. Unix V system derivatives and BSD streams have different inits. By default, Linux distributions will use an init system derived from Unix System V or systemd.
Ultimately, the biggest difference isn’t what you see on the screen.