Operating System

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 33

Introduction of Operating

System
OPERATING SYSTEM
An operating system is a program that acts as an interface
between the user and the computer hardware and
controls the execution of all kinds of programs.
• An Operating System (OS) is system software that manages
computer hardware and software resources and
provides common services for computer programs.
• The operating system is the most important program that
runs on a computer.
• Every general-purpose computer must have an
operating system to run other programs and applications.
• Operating systems perform basic tasks, such
as recognizing input from the keyboard, sending output to
the display screen, keeping track of files and directories on the
disk, and controlling peripheral devices such as disk drives and
printers.
Functions of an operating System

•Memory Management
•Process Management
•I/O Device Management
•File Management
•Security
•Secondary storage Management
•Network Management
•Command Interpretation
• Memory Management
– Memory management refers to management of Primary Memory or
Main Memory. Main memory is a large array of words or bytes
where each word or byte has its own address.
• Processor Management
– In multiprogramming environment, OS decides which process gets
the processor when and how much time. This function is called
process scheduling. Operating System does the following activities
for processor management.
• Device Management
– OS manages device communication via their respective drivers.
Operating System does the following activities for device
management.
• File Management
– A file system is normally organized into directories for easy
navigation and usage. These directories may contain files and
other directions. Operating System does the following activities for
file management.
• Other Important Activities:

• Security -- By means of password and similar other


techniques, preventing unauthorized access to programs
and data.
• Control over system performance -- Recording delays
between request for a service and response from the
system.
• Job accounting -- Keeping track of time and resources
used by various jobs and users.
• Error detecting aids -- Production of dumps, traces, error
messages and other debugging and error detecting aids.
• Coordination between other softwares and users --
Coordination and assignment of compilers, interpreters,
assemblers and other software to the various users of the
computer systems.
Types of Operating System

• Following are some of the most widely


used types of Operating system.

– Simple Batch System


– Multiprogramming Batch System
– Multiprocessor System
– Distributed Operating System
– Real-time Operating System
SIMPLE BATCH SYSTEMS

• In this type of system, there is no direct interaction


between user and the computer.
• The user has to submit a job (written on cards or tape) to
a computer operator.
• Then computer operator places a batch of several jobs
on an input device.
• Jobs are batched together by type of languages
and requirement.
SIMPLE BATCH SYSTEMS
• Then a special program, the monitor, manages
the execution of each program in the batch.
• The monitor is always in the main memory and
available for execution.
• Following are some disadvantages of this type of
system :
 Zero interaction between user and computer.
 No mechanism to prioritize processes.
MULTIPROGRAMMING BATCH
SYSTEMS

• In this the operating system, picks and begins to execute


one job from memory.
• Once this job needs an I/O operation operating system
switches to another job (CPU and OS always busy).
• Jobs in the memory are always less than the number
of jobs on disk(Job Pool).
• If several jobs are ready to run at the same time, then
system chooses which one to run (CPU Scheduling).
MULTIPROGRAMMING BATCH
SYSTEMS
• In Non-multiprogrammed system, there are moments when CPU sits
idle and does not do any work.
• In Multiprogramming system, CPU will never be idle and keeps
on processing.
• Time-Sharing Systems are very similar to Multiprogramming batch
systems. In fact time sharing systems are an extension of
multiprogramming systems.
• In time sharing systems the prime focus is on minimizing the
response time, while in multiprogramming the prime focus is to
maximize the CPU usage.
MULTITASKING SYSTEMS

 Multitasking is when multiple jobs are executed by the


CPU simultaneously by switching between them.
 Switches occur so frequently that the users may interact
with each program while it is running.
 An OS does the following activities related to multitasking

•The user gives instructions to the operating system or to a
program directly, and receives an immediate response.
•The OS handles multitasking in the way that it can handle
multiple operations/executes multiple programs at a time.
MULTITASKING SYSTEMS

•These Operating Systems were developed to provide


interactive use of a computer system at a reasonable cost.
•A time-shared operating system uses the concept of CPU
scheduling and multiprogramming to provide each user with
a small portion of a time-shared CPU.
•Each user has at least one separate program in memory.
DISTRIBUTED OPERATING SYSTEMS

• The motivation behind developing distributed


operating systems is the availability of powerful
and inexpensive microprocessors and advances
in communication technology.
• These advancements in technology have made it
possible to design and develop distributed
systems comprising of many computers that are
inter connected by communication networks. The
main benefit of distributed systems is its low
price/performance ratio.
REAL-TIME OPERATING
SYSTEM
• 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.
• Hard real-time systems guarantee that critical tasks
complete on time. In hard real-time systems secondary
storage is limited or missing with data stored in ROM.
• Soft real time systems are less restrictive. Critical real-time
task gets priority over other tasks and retains the priority
until it completes.
• For example, Multimedia, virtual reality, Advanced
Scientific Projects like undersea exploration and planetary
rovers etc.
OS Services
• An Operating System provides services
to both the users and to the programs.

– It provides programs, an environment to


execute.
– It provides users, services to execute the
programs in a convenient manner.
• Following are few common services provided by
operating systems.

– Program execution
– I/O operations
– File System manipulation
– Communication
– Error Detection
– Resource Allocation
– Protection
Program execution:

• Operating system handles many kinds of activities from


user programs to system programs like printer spooler,
name servers, file server etc. Each of these activities is
encapsulated as a process.
• A process includes the complete execution context (code to
execute, data to manipulate, registers, OS resources in
use).
Following are the major activities of an operating system
with respect to program management.
– Loads a program into memory.
– Executes the program.
– Handles program's execution.
– Provides a mechanism for process synchronization.
– Provides a mechanism for process communication.
– Provides a mechanism for deadlock handling.
I/O Operation:

• I/O subsystem comprised of I/O devices and their


corresponding driver software.
• Drivers hides the peculiarities of specific hardware
devices from the user as the device driver knows the
peculiarities of the specific device.
• Operating System manages the communication
between user and device drivers.
I/O Operation:

Following are the major activities of an operating system


with respect to I/O Operation.
– I/O operation means read or write operation with any
file or any specific I/O device.
– Program may require any I/O device while running.
– Operating system provides the access to the required
I/O device when required.
File system manipulation:

• A file represents a collection of related information.


• Computer can store files on the disk (secondary storage), for long term
storage purpose.
• Few examples of storage media are magnetic tape, magnetic disk and
optical disk drives like CD, DVD. Each of these media has its own
properties like speed, capacity, data transfer rate and data access
methods.
• A file system is normally organized into directories for easy navigation
and usage. These directories may contain files and other directions.
File system manipulation:

Following are the major activities of an operating system with respect to


file management.
• Program needs to read a file or write a file.
• The operating system gives the permission to the program
for operation on file.
• Permission varies from read-only, read-write, denied and so on.
• Operating System provides an interface to the user to create/delete
files.
• Operating System provides an interface to the user to create/delete
directories.
• Operating System provides an interface to create the backup of file
system.
Communication:

• In case of distributed systems which are a collection of


processors that do not share memory, peripheral
devices, or a clock, operating system manages
communications between processes.
• Multiple processes with one another through
communication lines in the network.
• OS handles routing and connection strategies, and the
problems of contention and security.
Communication:

Following are the major activities of an operating system


with respect to communication.
– Two processes often require data to be transferred
between them.
– The both processes can be on the one computer or on
different computer but are connected through computer
network.
– Communication may be implemented by two methods
either by Shared Memory or by Message Passing.
Error handling:

• Error can occur anytime and anywhere. Error may


occur in CPU, in I/O devices or in the memory
hardware.
• Following are the major activities of an operating
system with respect to error handling.
– OS constantly remains aware of possible errors.
– OS takes the appropriate action to ensure
correct and consistent computing.
Resource Management:

• In case of multi-user or multi-tasking environment,


resources such as main memory, CPU cycles and
files storage are to be allocated to each user or
job.
• Following are the major activities of an operating
system with respect to resource management.
– OS manages all kind of resources using
schedulers.
– CPU scheduling algorithms are used for better
utilization of CPU.
Protection:
• Considering a computer systems having multiple users the
concurrent execution of multiple processes, then the various
processes must be protected from each another's activities.
• Protection refers to mechanism or a way to control the
access of programs, processes, or users to the resources
defined by a computer systems.
• Following are the major activities of an operating system
with respect to protection.
– OS ensures that all access to system resources is
controlled.
– OS ensures that external I/O devices are protected from
invalid access attempts.
– OS provides authentication feature for each user by
means of a password.

You might also like