OPERATING SYSTEM
Modules
Process
Synchronization
CPU Scheduling
Process and
Threads
Operating System
Basics
Disk Scheduling
Disk Management
Memory
Management
Deadlock
OS Basics
Topics
Introduction
Types of OS
Function and need of OS
Basic Structure of Computer System
Contains people who are using computer
User End and application programs(compilers,
databases games etc.
Contains utilities and Operating System.
System System programs includes Shells, Editors,
Compilers etc. OS is an interface between
user and hardware
Contains hardware devices like CPU,
Hardware Memory, I/O devices. Microprogramming
and Machine language comes under this
part.
What is Operating System?
• It acts as the interface between user and the hardware.
• It is responsible for the execution of all the processes, resource allocation, file management,
memory management etc.
• It is the program which runs all the time, all else being application programs.
Hardware Operating System Application Layer
What are the functions of OS?
Process Management
Process Synchronization
CPU Scheduling
File Management
Security
Resource Management
Examples of OS
• Windows
• Linux
• macOS
• Android
• iOS
Types of OS
Batch OS
Multiproces Multiprog-
sing OS ramming OS
Multi- Operating Networking
tasking OS Systems OS
Time Distributed
Sharing OS OS
Real Time
OS
Batch OS
It takes similar jobs having same requirement and group them into batches.
The users collect respective output when all the jobs get executed.
Job 1
Batch
Job 2 OS CPU
Batch
Job n
Advantages of Batch OS
Multiple users can share batch OS
Idle time is very less
Easy to manage large work repeatedly in batch systems.
Improves computer efficiency because it eliminates CPU time between two jobs.
Disadvantages of Batch OS
Hard to debug
Sometimes Costly
It causes starvation, other jobs have to wait for unknown time if any job fails.
Not interactive:- getting input from user is not possible in batch OS as the user is not present in
execution time.
Multiprogramming OS
An extension of batch OS where CPU is always kept busy. Each process needs two types of system
time. CPU time and IO time.
When a process uses IO, other process will use CPU. Thus it improves efficiency of the system.
Advantages
Response time can be reduced.
Disadvantages
Do not provide user interaction with computer system.
Multiprocessing OS
Here parallel computing is achieved. More than one processors are present in system which helps
in executing more than one process at same time.
Increase throughput of the system.
CPU CPU
I/O Main I/O
Processor Memory Processor
I/O Units I/O Units
Advantages
Increased reliability
Increased throughout
Disadvantages
More complex as it contains multiple CPUs
Multitasking OS
It is a logical extension of multiprogramming system
Allows user to perform more than one task at the same time.
Power Web Music
point Browser Player
Operating System
CPU
Advantages
More suited to support multiple users simultaneously
Well defined memory management
Disadvantages
Busier, because at the same time many task will be working thus CPU generates more heat.
Networking OS
This runs on server and provide capability to manage data, groups, users, applications and other
networking functions.
Allow shared access to resources
Client Client
Server
Client Client
Advantages
Network traffic reduces due to division between client and server
Less expensive to setup and maintain
Server access is possible remotely
Disadvantages
Servers are costly
Maintenance and updates are required frequently
Failure of one node affects whole system
Real Time OS
Each job carries a certain deadline within which that job has to be completed
Used when there is a strict time constraints.
Advantages
Maximum utilization of devices and systems
Since size of program is small, it can be installed in embedded systems
Error free
Disadvantages
Very few task run at same time to avoid errors
Algorithms are complex and difficult. It consume critical CPU cycles
Time Sharing OS
Resources are allocated in a time-dependent fashion to several programs simultaneously. Thus
helps to provide large number access to main computer.
CPU will be switched among multiple users on the basis of a schedule
User1 User2
CPU
User5 User3
User4
Advantages
Effective utilization and sharing of resources
Reduces CPU Idle time and response time
Disadvantages
Very difficult and expensive to build
Data transmission rates are very high in comparison to other methods.
Security and integrity should be maintained well as many users access the system.
Distributed OS
It is not installed in a single machine instead divided into parts and loaded over different
machines.
Possible to access files or software on other system which is connected within this network.
Advantages
Provides sharing of resources
Fault tolerant
Easily scalable
Disadvantages
Failure of main network will stop the entire communication.
Expensive and underlying software is complex
Functions of OS
Security
Job accounting
Control over system performance
Error detecting aids
Memory Management
Process Management
Device Management
File Management
Services of OS
Program Execution
Handling Input/output Operations
Error Detection
Resource allocation
Communication