By Ketki Hanamshet –
Unix and Linux are two operating systems that have many significant overlapping features and, yet, continue to be unique in their own ways. While most of the world today is dominated by Linux, it is Unix which is very old and also known as the mother of all operating systems. In fact, the Linux kernel is also derived from Unix. You will find Linux to be an ideal operating system, widely used for game development, computer software and hardware, tablet PCs, and mainframes. The “Linux Revolution” has allowed the operating system to rule over our desktops, servers, smartphones, and even some electrical appliances like refrigerators. Unix is primarily used in workstations, internet servers, and PCs by Intel, HP, Solaris, and more.
Before we dive in to get an insight into the differences between Unix and Linux, let us first take a look at their individual history and purpose of development.
What is Unix?
Unix is an operating system that finds its roots in the late 1960s when AT&T Bell Labs, the Massachusetts Institute of Technology, and General Electric were trying to design a mainframe operating system called MULTICS (Multiplexed Information and Computing Service). However, when the project became too complex and performed poorly, AT&T Bell Labs decided to pull out of it. Two members of the Bell Labs research facility, Ken Thompson and Dennis Ritchie, decided to build a new operating system for Digital Equipment Corporation’s PDP-7 based on their experience and previous work on the MULTICS project. A few developers came together to form a small team and together they developed a file system and a new multitasking operating system that included a command-line interpreter as well as some utility programs. Initially, it was named as Unics (Uniplexed Information and Computing Service) as the version supported only a single user. Soon, when the version started supporting multiple users, it was renamed as Unix.
Unix got distinguished from the other operating systems when the team decided to rewrite it in the C programming language. Until then, operating systems were written in assembly language that required the code to be written for specific hardware. This bound the OS to the said hardware platform, making it hardly portable. But, refactoring code on the C language allowed Unix to be ported to many other hardware architectures. This led to the quick expansion of Unix beyond AT&T Bells and across academic, research, and commercial uses.
Another factor that contributed to Unix’s expansion was AT&T’s decision to send its free license and source code to universities, government agencies, and corporations that had mainframe computers. The first public version of Unix was called System 5 with more branches and improvements being released in the later years. Some of the most popular variations of Unix include BSD (Berkley Software Distribution), Linux, Solaris (Sun/Oracle), HP/UX (Hewlett-Packard), and Mac OS X (Apple).
What is Linux?
Linux is a free, open-source operating system. In an attempt to create a free and open source alternative to the proprietary Unix system, Richard Stallman created the Free Software Foundation. He also developed the GNU General Public License (GNU GPL) that allowed the software to spread freely. By the early 1900s, many programs such as compilers, libraries, text editors, a windowing system, and a UNIX shell, that are required in an operating system were completed. But, other elements such as daemons, device drivers, and the kernel were not complete. The first Linux kernel was released for the Intel x86 PC systems on 17th September 1991. It was developed by Linus Torvalds, who was working on a Unix-like operating system called MINIX. The MINIX OS code was available under the GNU GPL project. A usable operating system was created by including the system utilities and libraries from the GNU project.
Key Difference Between Unix and Linux
While many features of Unix and Linux overlap, below are some important differences that distinguish one from the other.
Unix was primarily developed by AT&T Bell Labs. It different flavours are now developed by commercial vendors and non-profit organizations. As opposed to this, Linux being an open-source OS, it is developed by developers across the world by sharing and collaboration of codes.
Linux has three major distributions, namely Solaris (Oracle), AIX (IBM), HP-UX (Hewlett Packard). Unix is also used by Apple to make OSX operating system. Linux was first developed by Linus Torvalds who now oversees the development of the operating system carried out by developers from across the world.
Commercial vendors have set up different cost structures for their Unix operating system. As Linux is developed by the community, it is free to use for the community. It can be distributed and downloaded at no cost. Linux is distributed through magazines too. Priced versions are also available, but these are cheaper than Windows.
Unix is primarily used in internet servers, workstations, and PCs. In contrast, Linux has a wide range of usage. It can be installed on smartphones, tablets, computers, video game consoles, supercomputers, and mainframes. Linux can be utilized by any common user, starting from a student to a developer.
IBM AIX, HP-UX, and Sun Solaris are examples of Unix operating system, while Ubuntu, Red Hat, Fedora, Archlinux, Debian, and Android are a few examples of Linux operating systems.
Although Unix was initially a command-based operating system, a GUI called Common Desktop Environment was later created. Most of the Unix distributions now use Gnome. In case of Linux, Gnome and KDE are the most commonly used GUI. There are numerous other alternatives such as Mate, Xfce, twm, LXDE, and more.
Text Mode Interface
The Unix operating system initially used the Bourne Shell. However, it is now compatible with other GUIs like BASH (Bourne Again Shell), Korn & C, and many more. The default shell for Linux is BASH, but many distros have now developed individual interfaces that can support multiple command interpreters.
File System Support
Unix supports files with the jfs, gpfs, hfs, hfs+, ufs, xfs, and zfs format. Compared to Unix, Linux supports more number of file systems. Ext2, Ext3, Ext4, Jfs, ReiserFS, Xfs, Btrfs, FAT, FAT32, and NTFS are a few of the many formats to mention.
The Unix OS code is written in C and Assembly language. You will find Linux code to be written in C and other programming languages. Also, while Unix is available only in English, Linux is multilingual.
Kernel Type and Architectures
While the kernel type of Linux is monolithic, it varies for Unix and can be monolithic, microkernel, or hybrid. Speaking of architecture, Unix is is available on PA-RISC and Itanium machines. The Unix flavors, namely Solaris is available for x86/x64 based systems and OSX is for PowerPC(10.0-10.5)/x86(10.4)/x64(10.5-10.8). Linux has originally developed Intel’s x86 hardware. But, currently ports are available for more than two dozen CPU types including ARM.
Both, Unix and Linux based operating systems offer high security. Till date, Unix has reported roughly 80-120 viruses and Linux has reported around 60-100 viruses. None of them are actively spreading these days. Both the operating systems are considered well-protected against malware due to lack of root access and quick updates.
Threat Detection and Solution
Although threat detection is quite fast in Unix, users have to wait for some time for the problem to get resolved due to the proprietary nature of the OS. As opposed to this, Linux not only detects the threats fast but also offers solution in no time as developers across the world start working on resolving the issue immediately.
SEE ALSO: Top 8 tech trends to look out for in 2020
Although Linux has some significant advantage over Unix due to its availability across a wide range of hardware platforms and devices, Unix continues to have a foreseeable future as long as major vendors continue to support their current releases. But, one cannot ignore the fact that Linux is a lot more flexible as compared to Unix and it is in greater demand due to its free and easy availability.