.. commands. The rest of MS-DOS consists of a number of utility programs. Although DOS had cornered the PC market, UNIX was still dominant on the larger workstations. The birth of UNIX in 1969 provided the world with its first modern operating system.
An interactive multi-user operating system, UNIX was initially developed by programmers for their own use. Working for Bell Laboratories, Ken Thompson and Dennis Ritchie created UNIX as an operating system for the PDP-7 computer. Designed as a simplification of an operating system named Multics, UNIX was developed in Assembly language, a primitive computer language specific to one type of machine (Osiris, 1). However, Thompson developed a new programming language “B” which Ritchie enhanced to “C”, and in 1973 this was used to rewrite UNIX which lended the OS portability (Linux Intl., 1). The original design philosophy for UNIX was to distribute functionality into small parts, the programs (Theochem, 1).
In this way, functionality could be achieved by combining the small parts (programs) in new ways. Moreover, if a new program were to appear, it could be integrated into the system. UNIX was slow to catch on outside of academic institutions but soon was popular with businesses as well. The first five versions were part of an internal research effort of Bell Labs, and it was not until the sixth version, called UNIX Timesharing Sixth Edition V, that UNIX was widely distributed (Osiris, 1). Relatively recent developments are graphical interfaces (GUI) such as MOTIF, X Windows and Open View. UNIX has two major versions.
One, jointly developed by UNIX Systems Laboratories (USL) and by AT&T researchers together with Bell Labs, generically known as System V, is the commercial version and is the most widely distributed by major manufacturers. The second, developed by the University of Berkley and Berkley Software Distribution (BSD), is the educational version and is completely focused on research. The USL version is now on its fourth release, or SVR4, while BSDs latest version is 4.4. However, there are many different versions of UNIX besides these two. The operating system has been licensed to several manufacturers who in turn developed their own versions of UNIX, based on System V or BSD, but adding new characteristics. Most versions of UNIX developed by software companies are derived from one of the two groupings and, recent versions of UNIX actually incorporate features from both of them. However, UNIX has had an unregulated history with over 200 versions (Berson, 16) existing today.
The UNIX system is made up of three primary components, the kernel, the shell, and the utilities (which includes the file system). The central part of the OS, the kernel is the first program to start when the system is turned on and the last program to do anything when the system is halted. In addition to scheduling tasks, it manages data/file access and storage, enforces security mechanisms and performs all hardware access. The name “KERNEL” represents the fact that it is a program designed as a central nucleus, around which other functions of the system were added. The heart of the operating system, it not only interacts directly with the systems hardware, but presents each user with a prompt, interprets commands typed by a user, executes user commands and supports a custom environment for each user.
The two most common shells are the Bourne shell, default for the System V, and the C-shell used mainly with the BSD version (Osiris, 1). The utilities consist of file management (rm, cat, ls, rmdir, mkdir), user management (passwd, chmod, chgrp), process management (kill, ps) and printing (lp, troff, pr). In order to obtain a basic understanding of the UNIX operating system, it is necessary to touch upon several of the principal characteristics that have permitted it to remain competitive through the years. 1. Advanced Administration of Processes UNIX has a process manager known as Process Scheduler, which handles the allotment of time to each of the processes according to the priority it was assigned.
2. Multiprocessing Many UNIX variants allow the use of various processors to execute user tasks. This means that UNIX has support for symmetric processing, with which it can take advantage of the fact that there are two or more CPUs in the machine. 3. File Management The hierarchical files system that UNIX runs, as well as file access control and directory control have served as models for the majority of modern operating systems such as MS-DOS, OS/2 and even Windows NT. 4. Utilities Access For the UNIX operating system, each of the machines devices, whether it be a hard drive, printer, modem, etc.
is seen as a file. Thus, access to any device is carried out as access to a file. This is possible through the fact that UNIX differentiates between kinds of files. In fact, the processes themselves are seen as files, which permits the establishment of another important UNIX characteristic, interprocess communication. 5. Virtual Memory The fact that UNIX has virtual memory allows the number of processes being executed to require more memory than exists in the machine.
6. Graphic Interface Although not exactly a novel characteristic of UNIX, most versions now have a graphic interface. 7. Interplatform Support This is another characteristic that was added to UNIX which lends the capability to execute programs from other platforms (DOS and Windows), within the UNIX environment. 8.
Networks The usual UNIX communications protocol is TCP/IP. This allows variants of UNIX based operating systems to communicate between themselves or with other platforms (Osiris, 1-2). CONTRAST Both DOS and UNIX present a number of similarities, several of which shall be addressed here. First, both systems are interactive, meaning that the shell presents a prompt and waits for the user to enter a command. After the return or enter key is pressed, the shell processes the command and when the command is finished, the shell re-displays the prompt. Second, DOS batch files and UNIX script files can be used which can store commonly used commands in a file, which when executed, runs each command as though it has been typed from the command line. A sequence of commands can be executed by executing the file which contains the command(s).
Third, the handling of files in both DOS and UNIX is simplified by using wild-card characters to match files which match particular patterns. Also, with both operating systems, users can customize and control the behavior of the shell by using special variables that the shell supports, such as the prompt (20,1). In addition, both systems make use of “pipes” whose symbol is a vertical bar ( | ). With this convention, the output from one command becomes the input for another command. Several dissimilarities are worth noting. As was previously mentioned, DOS is a single user, single task operating system.
Its user interface is not case sensitive, which means that commands may be typed in either upper case, lower case or a combination of the two. UNIX however, is a multi-user, multi-task OS. Non-interactive tasks which do not require keyboard input can be run in the background as a separate task while the user continues working with other interactive programs (20,1). Differing from DOS, its user interface is case sensitive, meaning that only upper or lower case commands must be used. APPLICATIONS & COMPUTER TYPES Whereas DOS has been used primarily on PCs and standalone computers, UNIX can be run on single- or multi-user computers of all sizes with a wide range of microprocessors (Flynn & McHoes 319).
UNIX is the widely supported operating system in the field of computer science, used extensively in business as well as educational institutions. Conversely, DOS is used mainly in businesses with older computer systems. BENEFITS & DISADVANTAGES The major advantage that DOS has over UNIX is its basic simplicity. Between this and the uncomplicated commands presented by the user interface, it is a relatively simple OS to learn. DOS also has the advantage of allowing the user to create an environment tailored strictly for the particular task they wish to accomplish. In addition, one can customize DOS to suit the current hardware.
This can be accomplished with commands such as date, time, prompt, path, set, assign and subst. Unlike DOS, UNIXs main feature is that it is a multi-user system, meaning more than one user can use the machine at a time when supported via terminals provided by a serial or network connection. Offering true preemptive multi-tasking, UNIX can run more than one program at a time with a CPU that services all applications equally. In addition, it has a hierarchical directory structure which supports the organization and maintenance of files. Other advantages are that it has been in the market for a number of years, and is therefore considered a stable product. Also, due to the fact that the kernel is in “C”, UNIX works in just about every machine in the market, once again, making it a portable system with a collection of very powerful utilities.
Also, there are many applications developed for DOS and UNIX which fall into the category of “shareware” available via the Internet (8,1). As with advantages, both DOS and UNIX have their share of disadvantages. It can be said that DOS has two main drawbacks. Since MS-DOS was originally written for a particular family of microprocessors, it displays an incredible lack of flexibility and limited ability to meet the needs of programmers and experienced users (Flynn & McHoes, 265). UNIX also has several very distinct disadvantages.
First, novice users find its commands are almost cryptic which is interpreted as being non-“user-friendly”. Second, the fact that there exist so many versions of the operating system means that software producers must make several versions of their applications to cover the greatest number of potential users. Third, UNIX is a large operating system, and depending on the number of services installed and the functions used, space used on a hard drive may vary from 20 Mb to 300 Mb (Osiris, 1). Bibliography Benson, Alex. Client/Server Architecture.
Gainesville: U P of Florida, 1992. Comelford, Richard. “Operating Systems go Head to Head”, IEEE Spectrum. Dec 1993, pp 23-25. Flynn, Ida M., and Ann M.
McHoes. Understanding Operating Systems. Second ed. Boston: PWS, 1997. Greenfield, Larry. UNIX: The Users Guide. University of Deuselldorf.
[Accessed 3 September 1998]. *http://www. Theochem.uni-duesseldorf.de/docu/user-guide* Introduction to UNIX. University of Guadalajara. [Accessed 3 September 1998]. http://osiris.staff.udg.mx/man/ingles/introduccion .html ” Microsoft Corporation” Brittanica Online [Accessed 20 September 1998]. *http://www.eb.com:180/cgi-bin/g?DocF=micro/711/22 .html* Operating Systems Introduction, v 3.2. Central Institute of Technology. [Accessed 5 September 1998]. *http://www.cit.ac.nz/smac/os100/unix01.html* Randall, Neil. “So, Whats an Operating System, Anyway?” PC Magazine 5 May 1998. *http://www.zdnet.com/pcmag/pctech/content/17/tu17 09.001.html* [Accessed 6 September 1998].
STScI UNIX Users Guide. Space Telescope Science Institute. 24 September 1998. [Accessed 3 September 1998]. *http://ra.stsci.edu/documents/UUG/UnixGuide.book 65.html* UNIX History. Linux International.
14 November 1997. [Accessed 3 September 1998]. *http://ir.parks.lv/li/Resources/LDP/guide/section 2 4 1.html*.