UNIX

A Brief Discussion


This page is meant for anyone who wants to know a little more about UNIX.


History

Unix was originally developed in 1969 by Ken Thompson and Dennis Ritchie of the Research Group at Bell Laboratories. The two had originally worked on a similar operating systems development process called MULTICS, and Unix's design was heavily influenced by the previous project. Some Unix features common to many modern operating systems that were taken from MULTICS include the organization of its file structure, the idea of a command interpreter (shell) as a user process, the use of separate processes for individual commands, and the use of line-editing characters like # and @.

Ritchie and Thompson worked on Unix for many years, and produced multiple versions of the operating system. Of note, in its third release, Unix was rewritten in the C programming language and it was designed to interact with new hardware that allowed multiprogramming to improve system utilization and throughput. The first widely available version of Unix was version 6, which was released in 1976. It was mainly used at universities.

Because of its simple design, Unix popularity spread and it began to be modified to work with more complicated systems and software. Instead of just one group working on its development, like Windows, Unix has been worked on by a large variety of developers. Today there are many different versions of Unix that are available for use. Because of the amount of concurrent development, Unix is considered the most portable operating system available today.


Basic Design

As Unix has evolved over the years, Unix has remained somewhat constant at its most basic levels. Neither Thompson nor Ritchie enjoyed writing in assembly language, and they made sure to convert Unix into a higher-level language as soon as possible. Almost all versions of Unix developed after this initial transformation have been developed in some form of the C language, since C was originally developed to support Unix. This has made the transference of Unix to different computer systems much less complicated because all that is needed to port the core components is a new compiler. Also, all modern Unix derivatives are time-sharing, multiple process systems. The basic concept behind this is that many processes are allowed to run, however a system timer in the hardware will transfer control of the computer over to Unix after a specified amount of time. Unix then determines which process will run next using a simple priority algorithm. As far as file structure goes, Unix uses a multilevel tree that allows users to create their own subdirectories. Files are stored in these subdirectories as a sequence of bytes.

These design features were all implemented so that programmers can get maximum utilization out of an operating system. Because of this, Unix has been termed an operating system that was "written by programmers for programmers." Even though flashier and more complicated operating systems have been introduced over the years, Unix has remained one of the most utilized OS's in the world. Further updates and versions are still being developed, and it doesn't look like Unix is showing any signs of decreasing in popularity. Hopefully this brief discussion of Unix has broadened your horizons, and maybe you will give it a try and see what all the fuss is about.


5 key points
  1. Unix was developed "by programmers for programmers"
  2. Unix remains popular today due to its simplicity
  3. The C programming language was written specifically for converting Unix to a higher level language
  4. Even though there are many versions of Unix available today, all the new versions were developed from the same kernel and are all the same at their core.
  5. Unix is one of the most portable operating systems available today

Written by John C. Roam -- 9/26/2002
Go Back To Main Page