We have seen that the MS-DOS Operating System mostly used in personal computers i.e., PC (also known as micro computers). When we talk about bigger machines, it will work but for better performance and tasks other operating system is preferred. T he MS-DOS operating system is a SingleUser Operating System i.e., only one user can get his task performed by the operating system at a given instance of time, whereas in most of the real life application developments and IT environment, there are many users working at a time on various terminals, whose requests have to be catered to, by the server.
Therefore, server should have the capacity to handle multiple users, multiple tasks etc., at any given instance of time, which is achieved by using a Multi user and Multitasking Operating Systems as the basic operating system. UNIX/XENIX is multi user operating systems, which are very popular. As UNIX and XENIX operating systems have almost same features, set of commands, procedures etc. we are discussing them together. The difference being that UNIX operating system is more appropriate for bigger machines than XENIX. Their similarly being the reason for which they are used inter changeably. The UNIX/XENIX Operating System powerful and can be used to accomplish various tasks right from the development of applications to the control of the total system.
Defining UNIX Operating System
We will be discussing the history, the features, and the components of the UNIX system as except history almost everything is same for XENIX. As UNIX is popularly used operating system, it has been chosen for discussion. It is quite interesting to study UNIX as it runs on wider variety of computers than any other operating system. This operating system is designed carefully so that despite its long life, it is still in tune with modernity and is quite elegant.
History of UNIX Operating System
In late 1940s and early 1950s most of the computers were personal computers, which a single person can work with at a given time. Later when batch systems came into existence during 1960s, all the jobs were collected till enough are pooled, and then these jobs would be given to the system to execute, which a long process was taking hours together.
It was at this instance, the time sharing was invented at Dartmouth College and M.I.T. The system at Darthmouth was running the BASIC language only and had a good commercial success, where as the system at M.I.T., the CISS was general purpose and was an instant hit with great success among scientific community. Later the researches at M.I.T. joined with Bell labs and General Electric for designing the second generation system known as MULTICS (MultiplexedInformation and Computing Service), which could support hundreds of users, with slightly more powerful systems than P/AT. It failed commercially for many reasons, one being that the compiler which was written in PL/I was very late to arrive and was not working finally.
When the Bell labs came out of the project, then Ken Thompson, a researcher at Bell labs are searching to do something interested. This interest led him to rewrite the MULTICS all by himself in assembly language on PDP-7 Machine. When one of the researchers at Bell labs, Brain Kernighan jokingly called the system rebuilt by Ken Thompson “UNICS” i.e., Uniplexed Information and Computing service, which eventually led to the name UNIX. This UNIX, the creation of Thompson was appreciated a lot by his colleagues who were quite impressed by his work; this made Dennis Ritchie, his colleague to join him followed by the entire department so as to move this UNIX from absolute PDP-7 to PDP-11/20, then to PDP-11/45, PDP-11/70 with developments.
The process was quite painful as UNIX was written in Assembly Language; therefore it had to be rewritten altogether, for every shift. Therefore, it was decided by Thompson to rewrite UNIX in high level language ‘B’ designed by him, which was not a quite successful attempt. Later ‘C’ language was developed by Dennis Ritchie, which was a high level language. Thompson and Ritchie together rewrote the UNIX in ‘C’ Language. Ever since, the ‘C’ language dominated system programming with many compilers being developed. Later in 1980s versions of UNIX, a powerful, multi user and multi tasking Operating system.
Layers of UNIX System
UNIX operating system can be taken as layered architecture where each layer has its own functionalities.
Hardware: It is the hare hardware on which UNIX Operating System is mounted on. It consists of CPU, memory, the disks, the terminals, the peripherals etc.
UNIX Operating System: It is the Kernel of the UNIX system. It is composed of process management, memory management, and the file system, input-Output management etc.
Standard Library: This is the system call Interface of the UNIX System. It is the part of the user mode of the UNIX system.