It's the last day for these savings

Unix vs Linux: History and Differences

8 Aug, 2024 - By Hoang Duyen

Linux is everywhere today. While Linux may provide the backbone for a large part of the internet, it did not start from scratch. Before Linux there was Unix, and Linux’s current popularity can be traced back to ideas that were born in the 1970s and even the 1960s.

Unix & BSD

unix & bsd

When it comes to Linux, we must first go back in time to learn about another name, Unix.

Unix is ​​an operating system that was born a long time ago at AT&T's Bell Labs. The project was led by Ken Thompson and Dennis Ritchie, two famous computer scientists.

Unix development work officially began in the summer of 1969, and the first version of Unix was born in March 1971, followed by the second version in 1972.

As for the date command on a Linux machine or MacOS, you will get a number called Unix Timestamp. This number is the number of seconds since 00:00:00 on January 1, 1970. As for why it is January 1, 1970, you probably have the answer now. That was the time when Unix was in development.

As a side note, Ken Thompson and Dennis Ritchie were the two people who created B, the programming language that was supported in the early versions of Unix. Later, in 1972, Ritchie rewrote B, improved it, and became the C programming language, which is still very popular today. Most of the components of Unix later were written in C.

In the later years of the 70s, AT&T shared Unix with educational institutions or commercial organizations outside, which led to the birth of many different versions of Unix. The most prominent of these was the educational version built by the Computer Systems Research Group at the University of California, Berkeley. This version is widely known as the Berkeley Software Distribution or BSD.

Initially, BSD was built on the codebase and design of Unix. However, later versions of Unix and BSD had more and more unique and different features, leading to a "war" to become the "standard" between the BSD version of Unix and the AT&T version of Unix codenamed System V. The result was that System V won. Later versions of BSD got closer to System V by learning and incorporating the recognized common standards.

The BSD branch came to the end of its historical development with the birth and release of open-source projects such as FreeBSD, NetBSD, and OpenBSD. The last version of BSD was introduced in 1995. Meanwhile, the last version of Unix developed by Bell Labs, Unix version 10, was released in 1989.

Although the official version of Unix, BSD has long stopped developing, the legacies they left are huge until today. Many operating systems from close source to open source, are based on these two branches.

The most famous and successful commercial, close source version, is probably Apple's famous MacOS. MacOS, as well as other Apple operating systems today, such as iOS, watchOS, and tvOS, are all based on the BSD platform. MacOS is also one of the few operating systems considered Unix-like when it has the Single UNIX Specification certification. We will elaborate more on the Unix-like concept at the end of this article.

GNU

In the flow of Unix development, 1983 saw an important event that set the stage for major changes to come.

In September 1983, Richard Stallman announced the birth of the GNU project (GNU stands for GNU’s not Unix).

the gnu logo

The GNU logo

The goal of the GNU project is to create a free operating system, like Unix, where everyone has the freedom to copy, develop, modify, distribute the software, and redistribution is unrestricted. (Remember, Unix and its forks are all close source and copyrighted initially).

In 1985, Richard founded the Free Software Foundation, or FSF, a non-profit organization that wants to promote freedom in software development.

Project GNU has created many important products, such as GNU Compiler Collection (GCC), GNU Debugger, GNU Emacs text editor (Emacs), GNU build automator (make), etc. In addition, we must mention the most famous license that is widely used today - GNU General Public License (GPL).

GNU Project has achieved many great achievements, creating many tools similar to those on Unix. However, GNU still lacks a significant component, the last piece to become a complete operating system. That is the Kernel, the part that performs the control work, communicating with hardware devices (CPU, RAM, Devices, etc).

And Linus Torvalds appeared.

Linux

linux

On August 25, 1991, a student in Finland named Linus Torvalds introduced a personal product that would become the Linux Kernel. Here is what Linus wrote on a Usenet newsgroup:

“I’m doing a (free) operating system (just a hobby, won’t be big and professional like gnu) for 386(486) AT clones. This has been brewing since April, and is starting to get ready. I’d like any feedback on things people like/dislike in minix, as my OS resembles it somewhat (same physical layout of the file-system (due to practical reasons) among other things).

I’ve currently ported bash(1.08) and gcc(1.40), and things seem to work. This implies that I’ll get something practical within a few months […] Yes – it’s free of any minix code, and it has a multi-threaded fs. It is NOT portable (uses 386 task switching etc), and it probably never will support anything other than AT-harddisks, as that’s all I have :-(.

[…] It’s mostly in C, but most people wouldn’t call what I write C. It uses every conceivable feature of the 386 I could find, as it was also a project to teach me about the 386. As already mentioned, it uses a MMU, for both paging (not to disk yet) and segmentation. It’s the segmentation that makes it REALLY 386 dependent (every task has a 64Mb segment for code & data – max 64 tasks in 4Gb. Anybody who needs more than 64Mb/task – tough cookies). […] Some of my “C”-files (specifically mm.c) are almost as much assembler as C. […] Unlike minix, I also happen to LIKE interrupts, so interrupts are handled without trying to hide the reason behind them.”

Linus's project quickly gained attention along with contributions from many individuals and organizations.

The combination of the Linux and GNU software created a complete operating system, the first completely free operating system. It was named GNU/Linux.

There are still many misunderstandings related to Linux. Below are some points that you can probably draw from reading the article from the beginning to the present:

  • Linux itself is just a Kernel, it is not a complete operating system. The operating system that you may still be using on your computer is called GNU/Linux, but perhaps because of its long name, people have shortened it to Linux. Omitting GNU from the operating system name is considered unfair and underestimates the role of GNU. However, many people still use the name Linux to replace the name GNU/Linux operating system. When referring to the Linux Operating System, we need to understand that it is the GNU/Linux Operating System. 

  • The Linux operating system does not share or inherit any part of the code of Unix or BSD. It was completely built by Linus and the GNU Project to be able to become ... a clone version of Unix. That is why Linux and the current Unix descendants operating systems (such as MacOS) have many similarities.

And to use the same command as on Linux, the solution is also very simple, you just need to install the GNU version on your Mac to replace the default version. Luckily, they run very stable and can be easily installed with homebrew.

Linux Distribution

linux distribution

Linux is just the Kernel, and GNU provides the necessary tools to run on that Kernel. However, how to config the Kernel, install, and use the software is up to us to decide.

Some organizations and companies help us do that by combining the Linux Kernel with utilities or package managers to create a complete operating system distribution. They are called Linux Distribution or Distro.

Today, there are countless Linux distributions, many of which are very familiar and popular, and there are also many distros that you may have never heard of. Some of the most used distros contain Ubuntu, Debian, CentOS, Fedora, Redhat, Linux Mint, etc.

Distros can be built on top of another Distro, resulting in one Distro being considered the great-grandchild of another. So, the Distros I mentioned above are very closely related to each other.

Let's tell a little story about Linux Distributions.

The two oldest (and still active) Distros are Slackware and Debian. They were created in 1993. Debian's descendants are making waves right now. The Debian branch is probably the biggest Distro branch. Besides Debian itself, the prominent faces of this branch consist of Ubuntu (built on Debian), Linux Mint (built on Ubuntu), and Kali Linux.

In addition, we cannot fail to mention another famous Distro branch, which is Redhat, with the main Distro being Red Hat Enterprise Linux (RHEL). Besides providing RHEL as a paid Distro, Redhat also provides another Distro for free to the community, which is Fedora. In fact, Fedora versions are often released in beta to get feedback and fix bugs, then RHEL will be built on the stable Fedora version. 

Besides, Redhat also provides free source code for most components on RHEL, and the community can build a Distro version that is "similar" to RHEL. The most prominent name is CentOS (Community Enterprise Operating System). CentOS is a product of the community completely free (not supported by Redhat). It has the desire to bring a Distro with Enterprise-class quality similar to RHEL (of course, free stuff is not as good as genuine paid stuff, but CentOS is still highly appreciated)

To learn and get familiar with Linux, in my personal opinion, Ubuntu (or Debian) and CentOS are the pair that you should get acquainted with. It will aid you get an overview, as well as the differences between the two branches of Debian and Redhat. 

Besides Linux Distribution, the operating system uses the Linux kernel and GNU components, there are also other operating systems based solely on the Linux kernel. The most well-known of them is Android. Android is probably the most popular operating system using the Linux kernel.

Unix-like

In the beginning, I mentioned that MacOS is one of the few operating systems certified by the Single UNIX Specification (SUS) and is considered a Unix-like operating system.

The UNIX trademark is currently copyrighted by The Open Group (note that the letters in the UNIX trademark are all capitalized, while to refer to an operating system, we can write Unix or UNIX).

The concept of “Unix-like” is used to refer to operating systems that are SUS certified and can use the UNIX trademark.

A question arises: So, according to the above definition, is Linux a “Unix-like” operating system?

Unfortunately, the answer is No.

There was a project to help Linux achieve SUS, but it ultimately went nowhere, and currently, Linux Distros are not allowed to use the UNIX trademark.

Besides understanding “Unix-like” as an attachment to SUS, there are also opinions that the word Unix-like should be used in a broader sense. Specifically, there are three types of Unix-like:

  • Genetic UNIX: Only operating systems that are directly related to the codebase of the Bell Labs version of Unix.

  • Trademark UNIX: Operating systems that satisfy the SUS requirements and can use the UNIX trademark.

  • Functional UNIX: Operating systems that “act like Unix,” so Linux can be classified in this category.

Conclusion

While Unix and Linux share a common ancestry, their evolution has led to distinct characteristics and target markets. Unix remains a robust and reliable option for enterprise environments, offering strong security and stability. On the other hand, Linux has emerged as a versatile and adaptable operating system, powering everything from servers to desktops and embedded systems. Both operating systems have contributed significantly to the advancement of computing technology and continue to be influential in today's digital landscape.   

If you are interested in learning more about Unix and Linux, you can register for Skilltrans courses today. We have a wide range of courses at affordable prices.

img
Hoang Duyen

Meet Hoang Duyen, an experienced SEO Specialist with a proven track record in driving organic growth and boosting online visibility. She has honed her skills in keyword research, on-page optimization, and technical SEO. Her expertise lies in crafting data-driven strategies that not only improve search engine rankings but also deliver tangible results for businesses.

Share: