You’ve heard a lot about Linux and Unix, but you probably still don’t understand the difference between the two terms. Truth be told, Linux is inspired by Unix, but Linux is not Unix, even though it is completely Unix-like. In this article, I will explain the difference between these two famous operating systems.
Join the channel Telegram of the AnonyViet ๐ Link ๐ |
Difference between Linux and Unix
Linux is an open source operating system and it is completely free. Unix is โโa commercial product, offered by many different distributors with their own variations, often created specifically for certain hardware. And of course it’s expensive and closed source. But Linux and Unix have more or less the same thing. right?
Yes, however, they have differences in technology and architecture. To understand some of the influences that have shaped Unix and Linux, we need to understand the context in which these two operating systems were born.
Origins of Unix
As of now, Unix is โโmore than 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 was widely used across Bell computers. Unix was rewritten in the C language in the 4th edition. Because C features and compilers make it easier to port Unix to new computer architectures.
In 1973, Ken Thompson and Dennis Ritchie presented a paper on Unix at a conference. As a result, requests to make other copies of Unix came to Bell. Because selling operating systems is outside the scope of AT&T’s business, they cannot treat Unix as a product. This resulted in Unix being distributed as licensed source code. The proceeds from this are enough to pay for royalties, shipping and packaging of the product. However, you won’t get technical support and fixes from AT&T. But you still get the source code and can modify it.
Unix has received support and rapid growth from academic institutions. In 1975, Ken Thompson took a Bell sabbatical at the University of California, Berkeley. Along with a number of graduate students, he began further improving copies of Unix. Users became interested in Berkeley’s additions, which led to the release of Berkeley Software Distribution (BSD). This is a set of programs and system modifications that can be added to existing Unix, but it is not a standalone operating system. Subsequent versions of BSD were the entire Unix system.
Unix is โโnow a mix of AT&T and BSD. All other variants of Unix, like AIX, HP-UX and Oracle Solaris is a descendant of BSD. In 1984, AT&T’s restrictions were fixed and they can now manufacture and sell Unix.
Finally, Unix was also commercialized.
Linux’s Journey
Richard Stallman Seeing the commercialization of Unix as an erosion of the available freedoms of computer users, he began to create operating systems based on freedom. Freedom here means being able to modify the source code without limitation, redistribute modified versions of the software, and use the software in any way the user sees fit.
This operating system will copy Unix features, including the entire Unix source code. He named it GNU and established The GNU Project in 1983 to develop this operating system. In 1985, he founded Free Software Foundation (Free Software Foundation) to support the promotion and funding of the GNU project.
All features of GNU are improved beyond the kernel (kernel). The GNU project developers are working on the kernel GNU Hurd, but progress is very slow (this kernel is still under development until now and is about to be released). Without the kernel, there would be no operating system. Simply understand the kernel is like the CPU of a PC.
In 1987, Andrew S. Tanebaum OS release MINIX (mini-Unix) to help teach students about operating system design. MINIX is a functional operating system, like Unix, but it has some limitations, especially the file system. Since the source code must be lightweight enough to warrant university teaching, some functionality has to be sacrificed.
To better understand how . works Intel 80386 in his new PC, a computer science student named Linus Torvalds (the main character appears) wrote some simple task switching code like homework (homework that looks like a final exam). Ultimately, these pieces of code became the basic proto-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 its own operating system to overcome the limitations in MINIX. In 1991, he announced the group MINIX Usenetto ask for ideas and suggestions on your project.
Linux is actually a clone of Unix. You can also call Linux Unix, but don’t call it that. The word โcloneโ means that a small part of a clone is developed into a new copy of the original. Linux was created to resemble the look and feel of Unix and meet similar needs.
But either way, Linux is a kernel looking for a complete operating system, and GNU is an operating system looking for a kernel (a love affair between two early tech moguls). What happens next seems inevitable. And it changed the world.
So who is the developer?
A Linux distribution consists of many different components. The Linux kernel, the GNU suite of core utilities, and user-land applications are combined to form a complete distribution. And someone must do the combination, maintenance and management. The distributors and communities of each distro (distribution) all play an important role in getting a Linux distribution into the hands of users.
Linux is the result of the collaborative efforts of unpaid volunteers, organizations such as Canonical and Red Hatand other sponsors.
Each Unix is โโdeveloped as a single combination using tightly controlled development facilities. Usually, they have a single kernel and are designed specifically for the hardware platforms provided by the developer.
BSD UNIX’s free and open source operating systems such as FreeBSD, OpenBSD and DragonBSDusing legacy BSD code and new ones as well.
Standards and compliance
In general, Linux is not compliant Single Unix Specification (SUS) as well as POSIX. It tries to satisfy both criteria but does not want to be bound by these two criteria. Literally, there were one or two exceptions, like Inspur K-UXand Chinese Linux is POSIX compliant.
A true Unix, must conform to one of the two standards above. Several BSSD derivatives, including all from one version of macOS, are POSIX compliant. Variants like AIX, HP-UX and Solaris, are all distros of those organizations.
Trademarks and Copyrights
Linux is a registered trademark of Linus Torvalds. Linux Foundation manage this brand on his behalf. Linux kernel and kernel utilities are released in various community license by GNU. The source code is available for free.
And Unix is โโa registered trademark Open Group register. It is copyrighted, proprietary and closed source.
FreeBSD is copyrighted by FreeBSD project and is the source code available.
Differences in usage
From a novice’s perspective, in the command line, there’s not much of a difference. Because of standards and must be POSIX compliant, software written on Unix can be compiled on Linux but will be limited. Shell scripts, can be used directly on Linux in many cases.
Some command-line utilities have slightly different options, but it’s essentially the same toolkit available on both platforms. In fact, IBM AIX has AIX Toolbox for Linux Applications. This allows system administrators to install hundreds of GNU packages such as Bash, GCC, and more.
Different Unix components have different graphical user interfaces (GUIs). A Linux user familiar with GNOME or Mate will feel a bit overwhelmed when they use KDE or Xfce for the first time. It is similar to the GUI available on Unix, like Motif, Common Desktop Environmentand X Windows System. All are similar for ease of use by users.
You will learn more about the difference while administering the system. For example, there are mechanisms init difference. System V Unix derivatives and BSD streams have different init. By default, Linux distributions will use an init system derived from Unix System V or systemd.
In the end, the biggest difference isn’t what you see on the screen.