Flux rss
 

Introduction to UNIX systems

The UNIX system

The Unix system is a multi-user, multi tasking operating system which means that it allows a single or multiprocessor computer to simultaneously execute several programs by one or several users. It has one or several command interpreters (shell) as well as a great number of commands and many utilities (assembler, compilers for many languages, text processing, email, etc.). Furthermore, it is highly portable, which means that it is possible to implement a Unix system on almost all hardware platforms.

Currently, Unix systems have a strong foothold in professional and university environments thanks to their stability, their increased level of security and observance of standards, notably in terms of networks.

The history of UNIX systems

The first "Unix" system was developed by Ken Thompson in the Bell AT&T laboratories at Murray Hill in New Jersey in the United States from 1965. Ken Thompson's aim was to develop a simple interactive operating system, called "Multics" (Multiplexed Information and Computing System) in order to run a game which he had created (space travel, a simulation of the solar system).

A consortium made up of MIT (Massachesetts Institute of Technology), General Electric Co. and Bell Lab was then formed around Multics.

In April 1969 the AT&T laboratories decided to use the GECOS (General Electric Comprehensive Operating System ) instead of Multics. However, Ken Thompson and Dennis Ritchie who joined the team needed to make the space travel game work on a smaller machine (a DEC PDP-7, Programmed Data Processor which only had 4K of memory to make user programs run), this is why they recreated the system in order to create a limited version of Multics called UNICS (UNiplexed Information and Computing Service), quickly shortened to Unix.

The date of 1st January 1970 is considered as the birth date of the UNIX system, which explains why all system clocks for Unix operating systems start from this date.

Alongside these activities, D.Ritchie played a large part in the definition of the C language (since he is considered as one of its creators with B.W.Kernighan), so the whole system was entirely rewritten in C in 1973 and called Unix Time-Sharing System (TSS).
When the system passed version 7 in 1979, its development was accompanied by many notable modifications such as:

  • the removal of limitations linked to file sizes,
  • better portability of the system (operating on many hardware platforms),
  • the addition of many utilities.

A decree dating from 1956 prevented the company ATT, to which Bell Labs belonged, from marketing anything other than telephone or telegraph equipment, this is why the decision was taken in 1973 to distribute UNIX source into universities for educational purposes.

From the end of 1977 researchers from the University of California redeveloped a version of Unix from source supplied by AT&T in order to run the system on their VAX platforms and called it BSD for Berkeley Software Development.

So two development branches of the source grew:

  • The AT&T branch which would become System V from UNIX System Labs (USL)
  • BSD (Berkeley Software Development) developed by the University of California

In 1977 AT&T made the UNIX source available to other companies, although a great number of UNIX-like systems were developed:

  • AIX, commercial Unix based on System V developed in February 1990 by IBM
  • Sun Solaris, commercial Unix based on System V and BSD developed by SUN Microsystems
  • HP-UX, commercial Unix based on BSD developed from 1986 by Hewlett Packard
  • Ultrix, commercial Unix developed by DEC
  • IRIX, commercial Unix developed by SGI
  • Unixware, commercial Unix developed by Novell
  • Unix SCO, commercial Unix based on System V developed from 1979 by Santa Cruz Operations and Hewlett Packard
  • Tru64 UNIX, commercial Unix developed by Compaq

In 1983 AT&T had the right to market its Unix, which marked the appearance of UNIX System V, the commercial version of its Unix system.

In 1985 a Dutch professor called Andrew Tannenbaum developed a minimal operating system called Minix in order to teach system programming to his students.
In 1991 a Finnish student, Linus Torvalds decided to design, on the Minix model, an operating system capable of running on type 386 architectures.
He called this operating system "Linux" and posted the following message on the comp.os.minix discussion forum:

Hello everybody out there using minix -
I'm doing a (free) operating system (just a hobby,
won't be big and professional like gnu) for 386(486) AT clones.

Here is a non exhaustive diagram retracing the overall appearance of the main Unix type systems:

time line of the different UNIX systems: HP-UX, AIX, BSD, IRIX, Mac OS X, ...

The UNIX standard

Considering the large number of Unix systems developed based on AT&T's System V or indeed BSD, the question of a Unix standard has been asked since 1981 on the /etc/group discussion forum in order to ensure maximum portability between systems:

  • in 1983, AT&T published SVID (System V Interface Definition) describing System V. This first definition is different from POSIX
  • in 1984 the /etc/group group published POSIX, a series of standards developed through the IEEE (Institute of Electrical and Electronics Engineers). POSIX is therefore also known under the name IEEE P1003.
  • at the same time, a consortium of manufacturers (Sun, IBM, HP, DEC, AT&T, Unisys, ICL, ...) published the X/Open Portability Guide Issue 3 (XPG3) standard. This standard deals in particular with the different issues of geographic localisation (date, alphabet, etc.).


Last update on Thursday October 16, 2008 02:43:15 PM.
This document entitled « Introduction to UNIX systems » from Kioskea (en.kioskea.net) is made available under the Creative Commons license. You can copy, modify copies of this page, under the conditions stipulated by the licence, as this note appears clearly.
Linux - Tree structure of files In UNIX systems any element is represented in the form of a file. All files are architectured around a single tree structure where the base, called the root, is written "/". UNIX systems define different file types: Physical files, entered on the... en.kioskea.net/unix/unix-fichiers.php3
Solaris and Open-Solaris Solaris and Open-Solaris Solaris was initially based on 4.1BSD (developed by Sun), but now is based on UNIX system V fourth version (Solaris 2- Sun OS5). Consider that Solaris an Open-Solaris don’t belong anymore to the BSD... en.kioskea.net/faq/sujet-602-solaris-and-open-solaris
Download VirtuaWin VirtuaWin is an application that misses the wonderful virtual desktop functionality often used on Unix systems. It is simple, powerful and highly configurable and lets you organize applications over several virtual desktops (also called... en.kioskea.net/telecharger/telecharger-119-virtuawin
Creating a Linux commandCreating a Linux command This article is valid for UNIX systems as well. What is a command? Many persons are discouraged to start Linux due to the complex syntax uses(mostly known as Linux command), but what is really a Linux... en.kioskea.net/faq/sujet-1168-creating-a-linux-command
GNU Operating SystemGNU Operating System GNU is an operating system that offers a set of free open source programs licensed under UNIX. It has many applications and tools that are also provided with the operating system. This allows users online to share all... en.kioskea.net/faq/sujet-478-gnu-operating-system
Managing printers through a web server(CUPS)Managing printers through a web server(CUPS) CUPS is the acronym for Common Unix Printing System). This application allows managing printers via web server host: http://localhost:631/ This server can be useful when graphical tools... en.kioskea.net/faq/sujet-1134-managing-printers-through-a-web-server-cups
Application to open rar filesHello, I just downlaoded some games for my Nokia n93 Once download i have tried to export them to my mobile phone but is not functioning The files and games downloaded are in .Rar what is the software required to extract the files ? en.kioskea.net/forum/affich-13310-application-to-open-rar-files
Boot managers available to boot Unix/LinuxHello, I am trying to find info on other boot managers avail. to boot Unix/Linux systems. I know there is Grub and Lilo. Are there any other boot managers available? Thanks for the help! en.kioskea.net/forum/affich-32567-boot-managers-available-to-boot-unix-linux
HP-UNIX Privileged User ListHello, What is the command to generate a list of the privileged users for a UNIX-HP un-trusted server? I need to generate a list to support a system audit. en.kioskea.net/forum/affich-37180-hp-unix-privileged-user-list
Download Driver Ricoh Aficio GX 7000 RPCS Raster PrinterThe printer Ricoh Aficio GX 7000 is an ink jet printer of ink. Its maximum resolution is of 3600 dpi. It is entirely compatible with the systems PC, Unix and Mac. Its speed d' impression in black and white and color is of 29 ppm. This model is... en.kioskea.net/telecharger/telecharger-964-driver-ricoh-aficio-gx-7000-rpcs-raster-printer
Download Laser HP LaserJet 4345x printer driverThe Llaser writer HP LaserJet 4345xs is a multifunction laser writer. It flat integrates a scanner and a fax into 33,6 bps. This model is compatible with a system PC, MAC, UNIX and Sun. It integrates a processor into 533 MHz, this printer proposes a... en.kioskea.net/telecharger/telecharger-959-laser-hp-laserjet-4345x-printer-driver
Download Driver Ricoh Aficio SP C811DNThe printer Ricoh Aficio SP C811DN is a printer laser. It inserts one processor 866 MHz. His maximum resolution is of 1800 dpi. It is entirely compatible with PC systems, Unix and Mac. His speed of impression in black and white and in color is 40... en.kioskea.net/telecharger/telecharger-935-driver-ricoh-aficio-sp-c811dn
UNIX system - Commands Unix Commands Description Options ls lists the content of a directory -a Displays all files, including hidden files -I Displays a detailed listing -R Displays the files recursively (i.e. in the sub-directories) -d Displays only the directories and... en.kioskea.net/unix/unixcomm.php3
UNIX system - The shell The command interpreter is the interface between the user and the operating system, hence its name "shell". The shell therefore acts as an intermediary between the operating system and the user using command lines entered by the latter. Its role... en.kioskea.net/unix/unix-shell.php3
Operating systems - Introduction For a computer to be able to operate a computer programme (sometimes known as application or software), the machine must be able to perform a certain number of preparatory operations to ensure exchange between the processor, the memory and the... en.kioskea.net/systemes/sysintro.php3