After three decades of use, the UNIX computer operating system from Bell Labs is still regarded as one of the most powerful, versatile, and flexible operating systems (OS) in the computer world. Its popularity is due to many factors, including its ability to run a wide variety of machines, from micros to supercomputers, and its portability -- all of which led to its adoption by many manufacturers.
The UNIX operating system was designed to let a number of programmers access the computer at the same time and share its resources. While initially meant for medium-sized computers, the system was soon moved to larger, more powerful mainframe computers. As personal computers grew in popularity, versions of UNIX found their way into these boxes, and a number of companies produce UNIX-based machines for the scientific and programming communities.
A major contribution of the UNIX system was its portability, permitting it to move from one brand of computer to another with a minimum of code changes. At a time when different computer lines of the same vendor didn't talk to each other -- yet alone machines of multiple vendors -- that meant a great savings in both hardware and software upgrades. It also meant that the operating system could be upgraded without having all the customer's data inputted again. And new versions of UNIX were backward compatible with older versions, making it easier for companies to upgrade in an orderly manner.
UNIX comes with hundreds of programs that can be divided into two classes: integral utilities that are absolutely necessary for the operation of the computer, such as the command interpreter, and tools that aren't necessary for the operation of UNIX but provide the user with additional capabilities, such as typesetting capabilities and e-mail; the tools can be added or removed from a UNIX system, depending upon the applications required.
The UNIX system is functionally organized at three levels: the kernel, which schedules tasks and manages storage; the shell, which connects and interprets users' commands, calls programs from memory, and executes them; and the tools and applications that offer additional functionality to the operating system.
The kernel, the heart of the operating system, controls the hardware and turns part of the system on and off at the programmer's command. If you ask the computer to list (ls) all the files in a directory, the kernel tells the computer to read all the files in that directory from the disk and display them on your screen.
There are several types of shell, most notably the command driven Bourne Shell and the C Shell, and menu-driven shells that make it easier for beginners to use. Whatever shell is used, its purpose remains the same -- to act as an interpreter between the user and the computer. The shell also provides the functionality of "pipes," whereby a number of commands can be linked together by a user, permitting the output of one program to become the input to another program.
There are hundreds of tools available to UNIX users and they are typically grouped into categories for certain functions, such as word processing, business applications, or programming.
LINUX, a 1991 version of UNIX, was developed by Linus Torvalds, a student at the time, and by hundreds of volunteer programmers around...