OPERATING SYSTEM
An OPERATING SYSTEM is a program which acts as a n
interface between a user and the hardware (i.e. all the computer resources).
OS controls are a major component of a system and
controls all other components.
FUNCTIONS OF OPERATING SYSTEM
Provide a user interface
Performing
housekeeping procedures requested by the user, often concerning storage
devices, such as
Reorganizing a hard drive, deleting files, copying files,
and changing the system date • providing a way
For the user to manage the desktop, hardware, applications,
and data
Manage files
Managing files on
hard drives, DVD drives, CD drives, USB flash drives, and other drives •
Creating,
Storing, retrieving, deleting, and moving files
Manage hardware
Managing the BIOS
(programs permanently stored on hardware devices) • Managing memory, which is
A temporary place to store data and instructions as they are
being processed • Diagnosing problems
With software and hardware
Manage applications
Installing and
uninstalling applications • Running applications and managing the interface to
the
Hardware on behalf of an application
OS (INTERFACE MANAGER)
TYPES OF OPERATING
SYSTEM
There are many types of OS:-
Batch
operating system
The
users of a batch operating system do not interact with the computer directly.
Each user prepares his job on an off-line device like punch cards and submits
it to the computer operator. To speed up processing, jobs with similar needs
are batched together and run as a group. The programmers leave their programs
with the operator and the operator then sorts the programs with similar
requirements into batches.
The
problems with Batch Systems are as follows −
Lack
of interaction between the user and the job.
CPU
is often idle, because the speed of the mechanical I/O devices is slower than
the CPU.
Difficult
to provide the desired priority.
Time-sharing
operating systems
Time-sharing
is a technique which enables many people, located at various terminals, to use
a particular computer system at the same time. Time-sharing or multitasking is
a logical extension of multi programming. Processor's time which is shared among
multiple users simultaneously is termed as time-sharing.
The
main difference between Multi programmed Batch Systems and Time-Sharing Systems
is that in case of Multi programmed batch systems, the objective is to maximize
processor use, whereas in Time-Sharing Systems, the objective is to minimize
response time.
Multiple
jobs are executed by the CPU by switching between them, but the switches occur
so frequently. Thus, the user can receive an immediate response. For example,
in a transaction processing, the processor executes each user program in a
short burst or quantum of computation. That is, if n users are present, then
each user can get a time quantum. When the user submits the command, the
response time is in few seconds at most.
The
operating system uses CPU scheduling and multi programming to provide each user
with a small portion of a time. Computer systems that were designed primarily
as batch systems have been modified to time-sharing systems.
Advantages
of Time sharing operating systems are as follows −
Provides
the advantage of quick response.
Avoids
duplication of software.
Reduces
CPU idle time.
Disadvantages
of Time-sharing operating systems are as follows −
Problem
of reliability.
Question
of security and integrity of user programs and data.
Problem
of data communication.
Distributed
operating System
Distributed
systems use multiple central processors to serve multiple real-time
applications and multiple users. Data processing jobs are distributed among the
processors accordingly.
The
processors communicate with one another through various communication lines
(such as high-speed buses or telephone lines). These are referred as loosely
coupled systems or distributed systems. Processors in a distributed system may
vary in size and function. These processors are referred as sites, nodes,
computers, and so on.
The
advantages of distributed systems are as follows −
With
resource sharing facility, a user at one site may be able to use the resources
available at another.
Speedup
the exchange of data with one another via electronic mail.
If
one site fails in a distributed system, the remaining sites can potentially
continue operating.
Better
service to the customers.
Reduction
of the load on the host computer.
Reduction
of delays in data processing.
Network
operating System
A
Network Operating System runs on a server and provides the server the
capability to manage data, users, groups, security, applications, and other
networking functions. The primary purpose of the network operating system is to
allow shared file and printer access among multiple computers in a network,
typically a local area network (LAN), a private network or to other networks.
Examples
of network operating systems include Microsoft Windows Server 2003, Microsoft
Windows Server 2008, UNIX, Linux, Mac OS X, Novell NetWare, and BSD.
The
advantages of network operating systems are as follows −
Centralized
servers are highly stable.
Security
is server managed.
Upgrades
to new technologies and hardware can be easily integrated into the system.
Remote
access to servers is possible from different locations and types of systems.
The
disadvantages of network operating systems are as follows −
High
cost of buying and running a server.
Dependency
on a central location for most operations.
Regular
maintenance and updates are required.
Real
Time operating System
A
real-time system is defined as a data processing system in which the time
interval required to process and respond to inputs is so small that it controls
the environment. The time taken by the system to respond to an input and
display of required updated information is termed as the response time. So in
this method, the response time is very less as compared to online processing.
Real-time
systems are used when there are rigid time requirements on the operation of a
processor or the flow of data and real-time systems can be used as a control
device in a dedicated application. A real-time operating system must have
well-defined, fixed time constraints, otherwise the system will fail. For
example, Scientific experiments, medical imaging systems, industrial control
systems, weapon systems, robots, air traffic control systems, etc.
There
are two types of real-time operating systems.
Hard
real-time systems
Hard
real-time systems guarantee that critical tasks complete on time. In hard
real-time systems, secondary storage is limited or missing and the data is
stored in ROM. In these systems, virtual memory is almost never found.
Soft
real-time systems
Soft
real-time systems are less restrictive. A critical real-time task gets priority
over other tasks and retains the priority until it completes. Soft real-time
systems have limited utility than hard real-time systems. For example,
multimedia, virtual reality, Advanced Scientific Projects like undersea
exploration and planetary rovers, etc.