UNIX Evolution and Architecture


In 1969, Bell Laboratories developed UNIX as a timesharing system (the term used at that time to describe a multitasking operating system that supported many users at terminals). Although the first implementation was written in assembly language, the designers always intended UNIX to be written in a higher-level language. Thus, Bell Labs invented the C language so that they could rewrite UNIX. UNIX has evolved into a popular operating system that runs on computers ranging in size from personal computers to mainframes.

Figure 2.3 shows the evolution of UNIX from a single code base into the wide variety of UNIX systems available today. In fact, this is only a summary ” there are more than fifty flavors of UNIX in use today. The codes on the diagram refer to the brands and versions of UNIX that are in common use, including:

click to expand
Figure 2.3: The history of UNIX implementations
  • AIX from IBM

  • Solaris from SUN Microsystems

  • HP-UX and Tru64 from Hewlett Packard

  • UnixWare from Caldera

  • Linux and FreeBSD, which are open source products

For more information, see Chapter 4, Assessment and Analysis.

UNIX became popular with computer manufacturers because it was written in a high-level language and was thus portable. Computer manufacturers could buy the rights to the UNIX source code and modify it to make it run on their hardware. Although this portability greatly aided the acceptance of UNIX, it also created incompatible versions, which became one of the greatest problems for the developers of UNIX applications.

The architecture of UNIX can be divided into three levels of functionality, as shown in Figure 2.4 on the next page. The lowest level is the kernel , which schedules tasks , manages resources, and controls security. The next level is the shell, which acts as the user interface, interpreting user commands and starting applications. The highest level is utilities, which provides utility functions. (For more information about the shell, see Shells and Scripting later in this chapter.)

click to expand
Figure 2.4: Structure of the UNIX operating system

The UNIX operating system supports the following features and capabilities:

  • Multitasking

  • Multiuser

  • Kernel written in high-level language

  • Programming interface

  • Use of files as handles to reference devices and other objects

  • Large number of simple tools

  • Use of pipes and filters to undertake complex tasks through simple tools

  • Default user interface is character-based

  • Built-in networking (TCP/IP is standard)

  • System services are provided through daemon processes

  • Wide number of vendor platform implementations

The following sections explain these features in more detail.




UNIX Application Migration Guide
Unix Application Migration Guide (Patterns & Practices)
ISBN: 0735618380
EAN: 2147483647
Year: 2003
Pages: 134

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net