OPERATING
SYSTEM
WHAT IS AN
OPERATING SYSTEM?
A program that acts as an intermediary
between a user of a computer and the computer hardware.
An operating System is a collection of
system programs that together control the operations of a computer system.
OPERATING
SYSTEM GOALS
-
Execute user
programs and make solving user problems easier.
-
Make the computer
system convenient to use.
-
Use the computer
hardware in an efficient manner.
COMPUTER SYSTEM
COMPONENTS
1. Hardware
- provides basic computing resources (CPU, memory, I/O devices).
2. Operating
system -
Controls and coordinates the use of the hardware among the various application
programs for the various users.
3. Applications
programs -
Define the ways in which the system resources are used to solve the computing
problems of the users (compilers, database systems, video games, business
programs).
4. Users –
people
OPERATING-SYSTEM
STRUCTURES
-
System Components
-
Operating System
Services
-
System Calls
-
System Programs
-
System Structure
-
Virtual Machines
-
System Design and
Implementation
-
System Generation
Common System
Components
-
Process
Management
-
Main Memory
Management
-
File Management
-
I/O System
Management
-
Secondary
Management
-
Networking
-
Protection System
-
Command-Interpreter
System
Functions of
operating system
1) Process management
2) Main memory management
3) File management
4) Input/output system management
5) Secondary storage management
6) Networking
7) Protection system
1) Process management
Process management is an integral part of any modern-day operating
system. The OS must allocate resources to processes, enable processes to share
and exchange information, protect the resources of each process from other
processes and enable synchronization among processes.
2) Main memory management
In operating systems, memory management is the
function responsible for managing the computer's primary memory. The memory
management function
keeps track of the status of each memory location, either allocated or free.
3) File management
A file management system is a type of software that manages data files in a computer
system. It has limited capabilities and is designed to manage individual or
group files, such as special
office documents and records.
4) Input/output system management
In computing, input/output, refers to the
communication between an information processing system (such as a
computer), and the outside world possibly a human, or another information
processing system. The OS must maintain security of the devices.
5) Secondary storage management
Secondary storage devices are non-volatile devices where the data is stored for long-term storage. Disks are the
mainly used secondary storage devices. They provide the bulk of secondary
storage in operating
systems today. The main activity that is performed in secondary
storage management is disk
scheduling.
6) Networking
A network operating
system (NOS) is a computer operating system (OS) that is designed primarily to support workstations,
personal computers and, in some instances, older terminals that are connected
on a local area network (LAN).
7) Protection system
Security refers to
providing a protection system to computer system resources such as CPU, memory, disk, software programs
and most importantly data/information stored in the computer system. So a computer system must be
protected against unauthorized access, malicious access to system memory,
viruses, worms etc.
TYPES
OF OPERATING SYSTEM
1) Batch operating system
2) Time sharing operating system
3) Distributed operating system
4) Network operating system
5) Real time operating system
1) 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.
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. Lack of
interaction between the user and the job.
Advantage of
Batch operating system
-
Processor consume
good time while processing that mean it knows which job to process next. In real
time system we don’t have expectation time of how long the job is and what is
estimated time to complete it. But in Batch system the processor knows how long
the job is as it is queued.
-
Sharing the batch
system for multiple users.
-
The idle time batch system is very less.
-
The batch system
can manage large repeated work easily.
-
You can assign
specific time for batch jobs so when the computer is idle its start processing
the batch jobs.
Disadvantage of
Batch operating system
-
Computer operator
must be trained for using batch system.
-
It is difficult to
debug batch system
-
Batch system are sometime
costly
-
If some jobs take
too much time. Ex, if error occurs in job then other job will wait for unknown
time.
2)
Time Sharing operating system
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 multiprogramming. Processor's time which is shared among
multiple users simultaneously is termed as time-sharing.
The
main difference between Multiprogram med Batch Systems and Time-Sharing Systems
is that in case of Multiprogram med 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 multiprogramming 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
-
Provides the advantage
of quick response
-
Avoids
duplication of software
-
Reduces CPU idle
time
Disadvantage of Time-Sharing operating
system
-
Problem of
reliability
-
Problem of data
communication
-
Question of
security and integrity of user program and Data
3) Distributed operating system
A distributed
operating system is a software
over a collection of independent, networked, communicating, and physically
separate computational nodes. They handle jobs which are serviced by multiple
CPUs. Each individual node holds a specific software subset of the global
aggregate 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.
Advantage of
Distributed operating system
-
With resource sharing
facility 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.
Disadvantage of
Distributed operating system
-
Network reliance
-
Complexities
-
Security
-
Multiple point of
failure
4) 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.
A network
operating system (NOS) is a
computer operating system (OS) that is designed primarily to support
workstations, personal computers and, in some instances, older terminals that
are connected on a local area network
Advantage of network
operating system
-
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.
Disadvantages of
network operating systems
-
High cost of buying
and running a server.
-
Dependency on a
central location for most operations.
-
Regular maintenance
and updates are required.
5) Real time operating system
A real-time operating
system is an operating system intended to serve real-time applications that
process data as it comes in, typically without buffer delays. Processing time
requirements are measured in tenths of seconds or shorter increments of time.
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.
Advantage of Real Time
operating system
-
Task scheduling and shifting
-
Deterministic behavior
-
Inter task communication
-
Maximum consumption
-
Error free
-
Task can have priority
-
Scalable
-
Portable
-
Provision of interrupts
Disadvantage of Real Time operating system
-
Sometime cost is more
-
Availability of development tool
-
Low multi-tasking
-
Limited task
-
Multiple user
-
Multiple modes
-
Not easy to program
0 Comments