Compare And Contrast Microsoft Dos With Unix Essay, Research
Paper
Compare and Contrast Microsoft DOS with UNIX Arthur Bennis
Microcomputer Operating Systems CGS 1560 INTRODUCTION As is
suggestive of its name, an operating system (OS) is a collection of
programs that operate the personal computer (PC). Its primary
purpose is to support programs that actually do the work one is
interested in, and to allow competing programs to share the
resources of the computer. However, the OS also controls the inner
workings of the computer, acting as a traffic manager which
controls the flow of data through the system and initiates the
starting and stopping processes, and as a means through which
software can access the hardware and system software. In addition,
it provides routines for device control, provides for the
management, scheduling and interaction of tasks, and maintains
system integrity. It also provides a facility called the user
interface which issues commands to the system software. Utilities
are provided for managing files and documents created by users,
development of programs and software, communicating between users
with other computer systems and managing user requirements for
programs, storage space and priority. There are a number of
different types of operating systems with varying degrees of
complexity. A system such as DOS can be relatively simple and
minimalistic, while others, like UNIX, can be somewhat more
complicated. Some systems run only a single process at a time
(DOS), while other systems run multiple processes at once (UNIX).
In reality, it is not possible for a single processor to run
multiple processes simultaneously. The processor of the computer
runs one process for a short period of time, then is switched to
the next process and so on. As the processor executes millions of
instructions per second, this gives the appearance of many
processes running at once. User programs are usually stored on a
hard disk and need to be loaded into memory before being executed.
This presents the need for memory management, as the memory of the
computer would need to be searched for a free area in which to load
a users program. When the user was finished running the program,
the memory consumed by it would need to be freed up and made
available for another user when required (CIT). Process scheduling
and management is also necessary, so that all programs can be
executed and run without conflict. Some programs might need to be
executed more frequently than others, for example, printing.
Conversely, some programs may need to be temporarily halted, then
restarted again, so this introduces the need for inter-program
communication. In modern operating systems, we speak more of a
process (a portion of a program in some stage of execution (CIT,
3)) than a program. This is because only a portion of the program
is loaded at any one time. The rest of the program sits waiting on
the disk until it is needed, thereby saving memory space. UNIX
users speak of the operating system as having three main parts: the
kernel, the shell and the file system. While DOS users tend not to
use the term kernel and only sometimes use the term shell, the
terms remain relevant. The kernel, also known as the “Real Time
Executive”, is the low-level core of the OS and is loaded into
memory right after the loading of the BIOS whenever the system is
started. The kernel handles the transfer of data among the various
parts of the system, such as from hard disk to RAM to CPU. It also
assigns memory to the various system-level processes that occur
whenever the computer does anything. The kernel is also responsible
for scheduling the CPU’s operations and for letting the shell
access the CPU (PC Mag, 1). The shell is the visible user interface
to the OS and is a program that loads on top of the operating
system and offers users commands that lets them access the OS.
Strictly speaking, the shell is an input utility that offers access
to the operating system. Technically speaking, the shell, being a
separate program, is not a part of the OS at all. In the UNIX world
a number of shells are available, among them the Korn shell, the
C-shell, the Bourne shell and the Bourne Again shell (yes, really).
In DOS, the standard shell is COMMAND.COM, again nothing more than
a program. As different versions of command.com came with different
versions of DOS, each added new commands and new things that could
be done by the user. For example, DOS 4’s COMMAND.COM added the /P
switch to DEL to verify each deletion, and DOS 5’s COMMAND.COM
provided the ability to sort the output of the DIR command. HISTORY
An acronym for disk operating system, the term DOS can refer to any
operating system, but is most often used as shorthand for MS-DOS.
Originally developed by Microsoft for IBM, MS-DOS was the standard
operating system for IBM-compatible computers. The initial version
of DOS was somewhat uncomplicated and resembled another operating
system called CP/M. Subsequent versions have become increasingly
sophisticated, however DOS remains a 16-bit operating system
without support for multiple users or multitasking. The earliest
forms of DOS were crude and utilized only a few commands, but as
computers became more advanced, so did DOS. By keeping up with
technology, DOS was implemented into more “user friendly” operating
systems. However, as more sophisticated operating systems were
released, DOS became less important. “Today, cyberpunks involved
with the latest OS trends joke that DOS stands for ‘Dad’s Operating
System’” (Comerford, 23). In 1980, IBM asked the Microsoft
Corporation to produce the operating system for its first personal
computer, the IBM PC. Prior to this, a company called Seattle
Computer Products had sold an operating system called 86-DOS to
Microsoft. Microsoft hired the author of 86-DOS, Tim Paterson, in
April of 1981 to modify the system, and renaming it MS-DOS
(Microsoft Disk Operating System), it was released with the IBM PC.
Thereafter, most manufacturers of personal computers licensed
MS-DOS as their operating system (Brittanica, 1). Limitations of
the early PC’s hardware were a big influence on MS-DOS. Although
the 8088 model computer had a 1Mb address space, IBM decided to
allocate the first 640K of this to RAM, and the rest to ROMs, video
boards and other things. Consequently, MS-DOS was set up to support
programs whose maximum size was 640K. Version 1.0 of DOS was
released along with the IBM PC in August 1981. It occupied 12K of
the systems 640K of memory, was somewhat compatible with CP/M and,
much like CP/M, supported only a single directory. By contrast,
even the first version of UNIX had a full hierarchical file system.
In addition, Version 1.0 supported only a 160K single sided
51/4-inch floppy diskette. Version 1.1 was released by Microsoft in
October 1982 and supported double sided 320K diskettes. Aside from
fixing some bugs, this release was similar to Version 1.0. Releases
such as 1.1, in which the number to the left of the decimal point
is the same as the previous version depict relatively minor changes
from the previous release. By contrast, Version 2.0 was largely a
new system. In March 1983, IBM introduced the PC/XT, its first
personal computer with a hard disk. It came with a new variant of
MS-DOS, Version 2.0. In this version, Microsoft incorporated many
ideas from the UNIX system for which it was also a vendor. For
example, incorporating minor changes, the MS-DOS file system was
taken largely from UNIX. In addition, the shell was improved, and
Version 2.0 supported a new floppy diskette format, the 360K as
well as user installable device drivers, print spooling, system
configuration and memory management. At this point, MS-DOS was
established as the dominant operating system in PC market. In
August 1984, IBM released its first 286 chip based PC, the PC/AT.
The PC/AT supported memory up to 16 Mb and had the ability to run
multiple programs at once. However, the version of MS-DOS that
shipped with the PC/AT was 3.0, which supported neither of these.
Rather, it ran the PC/AT in a mode that simulated the 8088, only
faster. Since the PC/AT came with a 1.2Mb disk drive, battery
backup clock, and configuration information in the CMOS, support
for these devices was added. What’s more, hard disks larger that
10Mb were now supported. In addition, the command processor (shell)
was removed from the operating system and made into a separate
program. In November 1984, 3.0 was replace by 3.1 which provided
the first support for networking. In 1987, IBM came out with the
PS/2 line of PC which shipped with MS-DOS 3.3, providing support
for both 720K and 1.44Mb 31/3 floppy disk drives. With Version 4.0,
Microsoft added the DOS shell, a menu driven shell rather than the
previous keyboard driven ones. In addition, it now provided support
for hard drives larger than 32 Mb. A major new release, MS-DOS
Version 5.0 was shipped in April 1991. Although this was the first
version that made any serious use of the extended memory, it still
had the restrictions that programs could not exceed 640K. However,
it had the ability to locate most of MS-DOS itself in extended
memory, so about 600K of the lower 640K was now available for user
programs. Version 5.0 also came with a useful HELP utility, to aid
new users. For the first time, MS-DOS was sold in stores to the
public (previous versions were only sold to computer vendors who
delivered them with their machines) (CIT, 1-3). The MS-DOS 6 family
provided more memory management for applications such as Microsoft
Windows. In addition, newer utilities were provided for
disk-defragmentation, file compression, file backups and anti-virus
checking. Other variations of MS-DOS exist, such as PC-DOS by IBM,
DOS-V, Dr. DOS and others. There is even a FREE DOS available on
the Internet as an MS-DOS clone. Although it can still be found on
many computers, MS-DOS is technically an obsolete operating system,
being replaced by Microsoft Windows. For personal computers, MS-DOS
is a single user, single tasking operating system. Single user
means only one person uses the computer at a time. Single tasking
means that it essentially runs one application program at a time,
and has no inherent support for running more than one application
program simultaneously (CIT, 2). If we want to look at the basic
DOS operating system itself, there is no need to look further than
three system files, command.com, Io.sys and (in DOS6.x and earlier)
Msdos.sys. These files are crucial in DOS versions up to 6.22.
Io.sys represents the lowest level of the interface and contains
the routines necessary for interfacing the OS with the system’s
BIOS. It implements MS-DOS as seen by the hardware and has default
drivers for console display and keyboard, printer, serial
communications, clock, and a boot disk drive. Msdos.sys handles the
higher-level routines such as converting commands from applications
into instructions for Io.sys. It implements MS-DOS as seen by
application programs. It supports file and record management,
memory management, character device input and output, execution of
other programs, and access to a real-time clock (CIT, 3). Both of
these files are in the root directory, and both are hidden from
view by default.
The idea is that you are not suppose to see them,
so that you don’t do anything destructive to them (such as deleting
them). They are also read-only so that they can’t be deleted
accidentally. Command.com is the shell program which interprets
user commands, presents the shell prompt, and contains a set of
internal 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 BSD’s 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 system’s 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, UNIX’s 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).
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 User’s 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].
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,
Compare And Contrast Microsoft Dos With Unix
18
0
13 минут
Темы:
Понравилась работу? Лайкни ее и оставь свой комментарий!
Для автора это очень важно, это стимулирует его на новое творчество!