What is the difference between Linux and Unix systems?
Definition of Unix:
Sometimes described as the favorite system for hackers in a positive sense ‘Hackers Friendly!’ but officially, any operating system that meets POSIX standards is called Unix, meaning it is not a single system. These standards ensure that a program designed on one will work on the others. The beginning of these systems was in the early seventies, as in 1973 Thompson and Ritchie at Bell Laboratories (www.Bell-Labs.com, not Bill Gates) wrote an operating system that is considered the first Unix. It quickly spread and was sold to AT&T, and the demand for it was high, making technical support difficult to provide. So, they released the source code for it to universities, research centers, and non-profit organizations. The source code being available meant no need for technical support (except for system V, and of course under a non-free license, meaning it is still owned by them and cannot be modified without written permission). This system was written in the C language to ensure that it would work on any type of hardware, independent of the hardware, and this fifth version of the system, named system V, led to many derivatives from more than one company. There was also a compatible project with it, but written in a different way, called BSD, which is a Berkeley Software Distribution program.
Then, POSIX standards were put in place to establish standards that all lucky companies that were allowed to develop these systems could follow. This led to the emergence of many derivatives, such as AIX from IBM, HP/UX, SunOS or Solaris, SCO UNIX, and Xenix from Microsoft. These systems were very expensive and limited to research centers, universities, and military devices. Despite the advancements these systems made, they have always been multi-tasking systems, secure, and connected to networks (before the invention of the Internet protocol through UUCP for example). On the other hand, there were cheap and consumeristic systems without any advantages, common in markets for home use, incompatible with standard standards, and were simply computing machines compared to Unix systems. For general information about Unix, see User-Friendly Unix FAQ.
Definition of Linux:
Linux is nothing but a kernel and is a Unix-compatible system that did not evolve from System V or BSD code but was written from scratch, and it is a free/open-source system. Each Linux distribution includes a graphical user interface (GUI) and GNU extensions such as (cp, mv, ls, date, bash, etc.), including installation tools, system management, GNU C/C++ compilers, editors like vi, and programs like Firefox and LibreOffice, with each layer developed separately by development teams, communities, and companies. Some developers volunteer while others are paid, and this applies to the kernel, which is considered a separate unit developed individually.
Differences and Similarities between the Two Systems:
Cost and Licensing: Linux is a free system (derived from Freedom, not indicative of being free, although most distributions are free), meaning you can distribute and publish it to other people and modify it under GNU licenses. Linux benefits from numerous support teams and support from communities, unlike Unix, which is not free and has less support (although the situation is starting to change recently, as in OpenSolaris).
Ease of Use and User-Friendliness: Linux is considered easier and more user-friendly for end-users than Unix because developers have added more conveniences on how to install drivers and use the system. Except for Apple’s MAC OS X, which is closed-source and built on FreeBSD and is considered easier than Linux and other Unix systems.
Differences from an Administration Tools Perspective: Again, there are no major differences in this regard, but here are some things you may notice are different:
- – Software installation procedures
- – Hardware component names
- – Some administrative commands or add-ons
- – Logical storage unit management
- – Package management
- – Patch management
- – RAID hardware and redundancy software
Common Aspects between the Two Systems: Just as there are differences between them, there are commonalities between the two systems, including:
- – Graphic interfaces and window managers
- – Shells like: (ksh, csh, bash)
- – Office software like LibreOffice
- – Development tools (perl, php, python, GNU c/c++ compilers)
- – POSIX standard interface