|
|
|
|
Operating Systems
DOS, Unix, NT
Introduction
We will consider two of the most popular (or rather most widely used)
of operating systems - namely DOS (MicroSoft-DOS), Windows 95
and UNIX. We will also consider some characteristics of the WINDOWS
NT operating system.
All operating systems/environments share a common purpose - to provide
a (sometimes primitive) human-computer interface. The design principles,
operation and management of resources displayed in available operating
systems vary widely.
General Concepts
- DOS is a SINGLE USER SINGLE TASKING operating system - that
is it was designed to allow one person to execute a single process
at any one time in STAND-ALONE MODE.
DOS can be command-line driven, or 'menu systems' and 'operating
environments' (like MS Windows) can be added to 'insulate' the user
from the complexities of the command line.
DOS ships with a large collection of in-built (called internal)
commands, and other utility programs that provide external commands.
Files in DOS are usually arranged according to a strict tree hierarchy
of directories and sub-directories. They are 'public domain' (if
you can get to command line, you can get to the file), there is
little built-in automatic file maintenance (defragmentation and
optimisation), however there are many file maintenance commands.
There is no built-in user management, no facility to protect files
(apart from the easily removed file attributes). Multi-user networks
can be added to DOS systems, these introduce user management, file
protection and resource allocation.
- UNIX is a MULTI-USER MULTI-TASKING operating system - that
is, it was designed to allow many people to execute many processes
concurrently on a NETWORK.
UNIX can be controlled from the command-line, customised command-line
environments (called user shells or profiles), or via integrated
graphical operating environments (like X-Windows).
UNIX ships with a very simple command processor (or KERNEL) and
a large suite of integrated utility programs (called tools).
Files in UNIX are owned by their creators, and as such are controlled
by them. Read, Write and Execute privileges are granted to other
people by the file creator or by a 'super-user' (like a system administrator).
Files in UNIX are maintained according to a strict tree hierarchy
of directories and sub-directories. There is built-in automatic
file maintenance (both defragmentation and optimisation), and there
are many file maintenance commands. There is built-in user account
and password management.
- WINDOWS NT is a MULTI-USER MULTI-TASKING MULTI-PROCESSOR
32bit graphical operating system - that is, it divides up processor
time between currently 'running' applications to allow many programs
to run at once. It supports multiple CPUs on servers and workstations,
thus allowing 'scalable' sharing of computational load.
Currently, WinNT is a complex suite (or collection) of co-operating
and interrelated programs and configuration files that sit between
the user and the computer hardware. It follows a point and click
'windowing' metaphor in order to make underlying commands 'easier'
to understand by using icons, pull down menus and dialog boxes.
WinNT allows individual and group user management, has robust NETWORKING
and TCP/IP built in. NT is available in SERVER and WORKSTATION versions
and, along with some network cards and some cabling, you can share
files and devices (e.g. Person A can use Person B's CDROM if B has
'shared' it with the network. NT begins to introduce file ownership
- only those files 'shared' on an NT network can be viewed by the
groups of users given that privilege. User management and file security
is robust and relatively easy to manage.
Operating systems running realtime applications have a number of exacting
(ideal) requirements:
- realtime - handles streams of time-critical multimedia data
- multithreading - concurrent management of simultaneous media
streams while doing administrative tasks
- scalability - the ability to run anything from a palmtop
cellphone to a multi-processor media server
- coherent comms - support for location transparent messaging
between remote and local processes
- modularity - adaption to new environments by adding and removing
modules
- dynamic reconfiguration - adding and removing new modules
while OS is running
- fault tolerant - ability to revover from hardware, software
errors by restarting without stopping or rebooting
The basic job of an operating system is:
Repeat
Fetch a command
If the command makes sense
then execute the command
else report a problem
Until turned off
More Specifically: an O.S should
- maintain data in a file system
- direct info. flow between peripherals
- 'boot' up the computer when powered on
- provide an interaction interface
- keep track of individual groups of users
- organise service for multiple users and prevent interference
- record and diagnose system failures
Some operating systems currently popular include UNIX/XENIX/LINUX,
ProDos, System 7, MS-DOS, DR-DOS, PC-DOS, OS/2, CP/M, Windows
|
|
|
|
|
|
|