A Brief History of Linux

A Brief History of Linux

The world of operating systems has many residents, but they can be segregated into two tribes:

  • The Microsoft NT descendants including Windows, Xbox OS.
  • Pretty much everything else has a lineage going back to Unix, including Mac OS X, Linux, Android, Chrome OS and even the PS4 OS.

UNIX: What? and Why?

Unix was an operating system developed at Bell Labs in the mid 1960s. Many of the innovations and design choices the original Unix team had, lived on 50+ years later, including the idea of multi-user operating systems and hierarchical file systems.

Unix is the “grandfather” of many operating systems that we frequently use today.

In the early days of computers, operating systems were tightly tied to specific

The philosophy behind Unix was to emphasize modular software design and the creation of small individual programs that can be combined to perform complex tasks (Kind of like Lego pieces approach).

  • Write programs that do one thing and do it well.
  • Write programs that facilitate collaboration.
  • Write programs to handle text streams, because that is a universal interface.

The True UNIX and UNIX-like

Today the name “UNIX” is a trademark of a global consortium called the Open Group. They maintain a set of standards called the Single UNIX Specification, which describes the core commands, features, interfaces, utilities, and more that define a UNIX operating system.

The Open Group will certify an operating system as fully UNIX compliant if it passes conformance tests. Companies must pay to be tested and must further pay to use the UNIX trademark.

Mac OS is an example of True UNIX operating system.

Many operating systems are based on the original UNIX operating systems and are compatible with the UNIX standards, but are not considered UNIX because they have not been certified by The Open Group. Often this is because of financial considerations or ethical objections.

We call these operating systems UNIX-like. They fully or mostly meet the specification but cannot legally use the UNIX trademark.

Ubuntu, Fedora and all other Linux distributions come under the umbrella of UNIX-like operating systems.

The Free Software Movement

The Free Software movement came about in the 1980s as a response to the proliferation of proprietary and restricted software.

The movement is analogous to “Free Speech” in the world of software instead of “free as in zero price”.

The philosophy was that the computers and software should not prevent cooperation between users, and instead should have the goal of liberating everyone in cyberspace.

According to the movement’s leader, Richard Stallman,

“Users should have the freedom to run, copy, distribute, study, change and improve the software”.

Richard Stallman was a leader in the group of developers who aimed to create Free Software alternatives to UNIX.

In 1984, he began work on the GNU Project, with the goal of creating an operating system that included “everything useful that normally comes with a UNIX system so that one could get along without any software that is not Free”.

Another developer, Linus Torvalds, was working on creating his own kernel known as Linux.

The Kernel is the part of an OS that facilitates interactions between hardware and software.

At the time, many GNU “pieces” were complete, but they lacked a kernel. Torvalds combined his kernel with the existing GNU components to create a full operating system.

Kernel??

A kernel is a computer program that forms the core of an operating system and manages critical tasks like:

  • memory management
  • task scheduling
  • managing hardware

While a kernel is a critical piece, it is NOT the same as an operating system, just like an engine is the essential “core” of a car, but you cannot drive an engine on its own.

Linux

Today the term “Linux” refers both to the kernel created by Linus Torvalds and all the software that is part of the Linux ecosystem.

Some users feel strongly that the name GNU/Linux should be used instead, as it properly reflects the GNU project’s contributions.

The Linux kernel itself is not a full blown operating system. When people talk about a Linux-based operating system, they are referring to Linux distributions.

Typically, a Linux distribution bundles together the Linux kernel, GNU tools, documentation, a package manager, a window system, and desktop environment.

There are nearly 1000 Linux distros available. Some of the popular ones include Fedora, Ubuntu, Debian and Slackware.

要查看或添加评论,请登录

Shivm Soaini的更多文章

  • Pipelines

    Pipelines

    Pipes are used to redirect a stream from one program to another program. We can take the output of one command and…

  • The Standard Streams and Redirection

    The Standard Streams and Redirection

    The three standard streams are communication channels between a computer program and its environment. They are:…

  • Working with Files

    Working with Files

    The cat command The cat command concatenates and prints the contents of files. cat filename will read the contents of…

  • The Shortcuts

    The Shortcuts

    We can speed up our command-line experience by taking advantage of the many built-in shortcuts. These shortcuts are…

  • Deleting, Moving and Copying

    Deleting, Moving and Copying

    The rm command We use the rm (remove) command to remove files from our machine. For example, rm app.

  • The Nano Text editor

    The Nano Text editor

    Nano is a simple text editor that we can access right from the terminal. It's far more accessible than other popular…

  • Making Files and Folders

    Making Files and Folders

    The touch command To create a new file from the command line, use the touch command. Provide a filename, and that file…

  • Navigating the CLI Sea

    Navigating the CLI Sea

    The root directory The starting point for the file system is the root folder. We call it the root, but its actual…

  • Getting Help in Command Line Interface

    Getting Help in Command Line Interface

    Sometimes it's difficult to wrap our head around some of the commands we encounter. In this scenario, man pages can…

  • First Step in Command Line

    First Step in Command Line

    Some Familiar Terms A Shell is a computer interface to an operating system which expose the OS's services to the human…

社区洞察

其他会员也浏览了