Page 32 - DCAP403_Operating System
P. 32
Unit 2: Operation and Function of Operating System
was pressed on the keyboard (again a task with slow input). Same thing happens today, where Notes
your computer actually does no work most of the time - it just waits for your input. Therefore
using multitasking where serveral tasks run on the same computer improves performance.
Multitasking is the process of letting the operating system perform multiple task at what seems
to the user simultaniously. In SMP (Symmetric Multi Processor systems) this is the case, since
there are serveral CPU’s to execute programs on - in systems with only a single CPU this is
done by switching execution very rapidly between each program, thus givin the impression of
simultanious execution. This process is also known as task swithcing or timesharing. Practically
all modern OS has this ability.
Multitasking is, on single-processor machines, implemented by letting the running process
own the CPU for a while (a timeslice) and when required gets replaced with another process,
which then owns the CPU. The two most common methods for sharing the CPU time is either
cooperative multitasking or preempetive multitasking.
Cooperative Multitasking: The simplest form of multitasking is cooperative multitasking. It lets
the programs decide when they wish to let other tasks run. This method is not good since it lets
one process monopolise the CPU and never let other processes run. This way a program may be
reluctant to give away processing power in the fear of another process hogging all CPU-time.
Early versions of the MacOS (up til MacOS 8) and versions of Windows earlier than Win95/
WinNT used cooperative multitasking (Win95 when running old apps).
Preempetive Multitasking: Preempetive multitasking moves the control of the CPU to the OS,
letting each process run for a given amount of time (a timeslice) and then switching to another
task. This method prevents one process from taking complete control of the system and thereby
making it seem as if it is crashed. This method is most common today, implemented by among
others OS/2, Win95/98, WinNT, Unix, Linux, BeOS, QNX, OS9 and most mainframe OS. The
assignment of CPU time is taken care of by the scheduler.
2.3 Operating System: Examples
2.3.1 Disk Operating System (DOS)
DOS (Disk Operating System) was the first widely-installed operating system for personal
computers. It is a master control program that is automatically run when you start your personal
computer (PC). DOS stays in the computer all the time letting you run a program and manage
files. It is a single-user operating system from Microsoft for the PC. It was the first OS for the PC
and is the underlying control program for Windows 3.1, 95, 98 and ME. Windows NT, 2000 and
XP emulate DOS in order to support existing DOS applications.
2.3.2 UNIX
UNIX operating systems are used in widely-sold workstation products from Sun Microsystems,
Silicon Graphics, IBM, and a number of other companies. The UNIX environment and the
client/server program model were important elements in the development of the Internet and
the reshaping of computing as centered in networks rather than in individual computers. Linux,
a UNIX derivative available in both “free software” and commercial versions, is increasing in
popularity as an alternative to proprietary operating systems.
UNIX is written in C. Both UNIX and C were developed by AT&T and freely distributed to
government and academic institutions, causing it to be ported to a wider variety of machine
families than any other operating system. As a result, UNIX became synonymous with “open
systems”.
LOVELY PROFESSIONAL UNIVERSITY 25