Operating System
Jimma University
Jimma institute of Technology College
Department of Computer Science
Operating System
Lecture One
Overview
Jiimma Institute of Technology College Jimma University
Outline
3
What is operating
system?
Operating System
Functionalities
Goals of Operating
System?
History of Operating
System?
Operating System Service and
Structure
Types of Operating
System
12/05/2025
What is an operating system?
4
An Operating System is a program that:
controls the execution of application programs,
acts an intermediary between the user of a
computer and computer hardware.
An operating system is a program or
software that manages the computer
hardware.
OS simplifies and manages the complexity of
running application programs efficiently.
12/05/2025
Cont’d…
5
A more common definition is that:
the operating system is the one program running at all
times on the computer (usually called the kernel), with all
else being applications programs.
An OS is concerned with the allocation of resources and
services, such as memory, processors, devices and information.
The Operating System correspondingly includes programs to
manage these resources, such as a traffic controller, a
scheduler, memory management module, I/O programs,
and a file system
Modern Operating System
Functionality
6
Booting: An OS manages the start-up of a device.
Concurrency: Multiple processes active at once, cpu
scheduling
Processor Management – Scheduling: Fairness,
Priorities
Memory Management: Allocate memory to processes
Storage Management – File system:
Disk/Device Management: manages computer drives
Data security: An OS protects your data from
cyberattacks.
Loading and execution: An OS starts and executes a
program.
Device control:The OS uses device drivers to control and
coordinate input/output devices, ensuring proper operation and
communication. 12/05/2025
Operating System
Functionality …
7
12/05/2025
Operating System
Functionality …
8
Process Management:
A process is a program in execution.
A process needs certain resources, including CPU
time, memory, files, and I/O devices to accomplish its
task.
creation, execution and termination of a process are
the most basic functionality of an OS.
Controlling the progress of processes.
Based on priority, it is important to allow more
important processes to execute first than others.
12/05/2025
Operating System
Functionality …
9
Memory Management:
Memory is a large array of words or bytes, each with its
own address.
The OS is responsible for the following activities in
connections with memory management:
Keep track of which parts of memory are currently
being used and by whom.
Decide which processes to load when memory space
becomes available.
Allocate and de-allocate memory space as needed.
12/05/2025
Operating System
Functionality …
10
File Management:
File systems provide the conventions for the encoding,
storage and management of data on a storage device such as
a hard disk.
The operating system is responsible for the following activities in
connections with file management:
✦ File creation and deletion.
✦ Directory creation and deletion.
✦ Protection and security of the files.
✦ Mapping files onto secondary storage.
✦ File backup on stable (non-volatile) storage media.
12/05/2025
Operating System
Functionality …
11
Device Management or I/O Management:
Device controllers are components on the motherboard (or
on expansion cards) that act as an interface between the CPU
and the actual device.
It performs the following activities for device
management.
Keeps tracks of all devices connected to system.
Decides which process gets access to a certain device and
for how long.
Allocates devices in an effective and efficient way.
Deallocates devices when they are no longer required
12/05/2025
Operating System
Functionality …
12
Security and Protection
The OS uses password protection to protect user
data and similar other techniques.
It also prevents unauthorized access to programs
and user data by assigning access right permission
to files and directories.
12/05/2025
Operating System
Functionality …
13
User Interface Mechanism
A user interface (UI) controls how you enter data and
instructions and how information is displayed on the
screen
There are two types of user interfaces
1. Command Line Interface(CLI)
2. Graphical user Interface(GUI)
12/05/2025
Goal of Operating System
14
Simplify the execution of user programs
make solving user problems easier
Make the computer system convenient to use
Use the computer hardware in an efficient
manner
Provide isolation, security and protection
among user programs.
Improve overall system reliability
12/05/2025
Why Should I Study Operating
System?
15
Need to understand interaction between
the hardware and applications.
New applications, new hardware.
Need to understand basic principles in
the design of computer systems
efficient resource management, security, flexibility
Increasing need for specialized operating
systems
e.g. embedded operating systems for devices - cell
phones, sensors and controllers
real-time operating systems – vehicles, aircraft control,
multimedia service
12/05/2025
Systems Today
16
12/05/2025
Systems Today…
17
12/05/2025
Operating systems are
everywhere
18
12/05/2025
Operating systems are
everywhere …
19
12/05/2025
Structure of Computer System
20
Hardware
Hardware consists of CPU, Main memory, I/O Devices, etc,
Software (Operating System)
Software includes process management routines,
memory management routines, I/O control
routines, file management routines.
System Program
This layer consists of compilers, Assemblers,
linker etc.
Application Program
This is dependent on users need.
Ex. Railway reservation system,
Bank database management etc.
12/05/2025
Cont’d… (abstract view of system)
21
12/05/2025
Cont’d… (computer hardware
organization)
22
12/05/2025
Cont’d… (computer hardware
organization)
23
12/05/2025
Cont’d… (computer hardware
organization)
24
12/05/2025
Kernel and User Mode Programs
25
Typical functionality implemented in either mode:
Kernel:
is the core inner component that processes data at the
hardware level. It handles input-output management,
memory and process management.
Memory resident
CPU-, memory-, Input/output management
Multiprocessor management, diagnosis, test
Parts of file system and of the networking interface
User Space:
is the outer layer that manages the interaction between the
user and the OS.
The shell communicates with the OS by either taking the
input from the user or a shell script. Is a sequence of system
commands that are stored in a file.
Simpler maintenance and debugging 12/05/2025
Operating System Components
26
Shell: Communicates with users
Text based (CLI)
Graphical user interface (GUI)
Kernel: Performs basic required functions
File Manager
Device Drivers
Memory Manager
Process Manager (Scheduler, Dispatcher, etc..)
The shell as an interface between users and the operating
system
12/05/2025
History of Operating System
27
Operating systems have been evolving through the
years.
Following table shows the history of OS.
12/05/2025
History of Operating System…
28
It all started with computer hardware in about
1940s
ENIAC 1943
12/05/2025
History of Operating System…
29
ENIAC (Electronic Numerical Integrator
and Computer), at the U.S. Army's Aberdeen
Proving Ground in Maryland
built in the 1940s, weighed 30 tons,
was eight feet high, three feet deep, and 100 feet long
contained over 18,000 vacuum tubes that were cooled by 80
air blowers
Computers were using vacuum tube technology
ENIAC’s
Vacuum Tubes
12/05/2025
History of Operating System…
30
ENIAC Back Side
Programs were loaded into memory manually
using switches, punched cards, or paper tapes.
12/05/2025
History of Operating System…
31
12/05/2025
History of Operating System…
32
12/05/2025
History of Operating System…
33
12/05/2025
Types of Operating System
34
Operating System can also be classified as,-
1. Batch OS
2. Multi programming OS
3. Multi Processing OS
4. Multi Tasking OS
5. Network OS
6. Real-Time OS (RTOS)
7. Time Sharing OS
8. Distributed OS
9. Single User/Multi user Systems
12/05/2025
Types of Operating System…
35
1. Batch Operating System
In the 1970s, Batch processing was very popular.
The users of this type of OS does 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
There is an operator which takes similar jobs having the same
requirement and group them into batches.
12/05/2025
Types of Operating System…
36
Advantages of Batch OS
Multiple users can share the batch systems
The idle time for the batch system is very less
Disadvantages of Batch OS
Starvation
For Example: -->There are five jobs J1, J2, J3, J4, and J5, present in the
batch. If the execution time of J1 is very high, then the other four jobs will
never be executed, or they will have to wait for a very long time.
Hard to debug
Sometimes costly
Not Interactive
Examples of Batch based Operating System
IBM’s MVS
12/05/2025
Types of Operating System…
37
2. Multiprogramming Operating System
This type of OS is used to execute more than one jobs
simultaneously by a single processor.
Each process needs two types of system time: CPU time and
I/O time.
In a multiprogramming environment, when a process does its
I/O, The CPU can start the execution of other processes.
Therefore, multiprogramming improves the efficiency of the system.
12/05/2025
Types of Operating System…
38
Advantages of Multiprogramming OS
Throughout the system, it increased as the CPU always had
one program to execute.
Each task gets an equal opportunity
Response time can also be reduced.
CPU idle time can be reduced
Disadvantages of Multiprogramming OS
Multiprogramming systems provide an environment in which
various systems resources are used efficiently, but they do
not provide any user interaction with the computer
system.
Examples of Time-Sharing Oss
Multics, Unix, etc.
12/05/2025
Types of Operating System…
39
3. Multiprocessing Operating System
There are more than one processors present in the system
which can execute more than one process at the same
time.
This will increase the throughput of the system.
12/05/2025
Types of Operating System…
40
Advantages of Multiprocessing operating system:
Increased reliability: Due to the multiprocessing
system, processing tasks can be distributed among
several processors.
This increases reliability as if one processor fails, the task can
be given to another processor for completion.
Increased throughput: As several processors
increase, more work can be done in less.
Disadvantages of Multiprocessing operating System
Multiprocessing operating system is:
more complex and sophisticated as it takes care of multiple
CPUs simultaneously.
Example: Unix OS
12/05/2025
Types of Operating System…
41
4. Multitasking Operating System
The multitasking operating system is a logical
extension of a multiprogramming system:
that enables multiple programs simultaneously.
It allows a user to perform more than one computer task
at the same time.
12/05/2025
Types of Operating System…
42
Advantages of Multitasking operating system
This OS is more suited to supporting multiple users
simultaneously.
The multitasking operating systems have well-
defined memory management.
Disadvantages of Multitasking operating system
The multiple processors are busier at the same time
to complete any task in a multitasking environment,
so the CPU generates more heat.
12/05/2025
Types of Operating System…
43
5. Network Operating System
An Operating system, which includes software and
associated protocols to communicate with other
computers via a network conveniently and cost-
effectively.
12/05/2025
Types of Operating System…
44
Advantages of Network Operating System
network traffic reduces due to the division between
clients and the server.
less expensive to set up and maintain.
Disadvantages of Network Operating System
the failure of any node in a system affects the whole
system.
Security and performance are important issues. So
trained network administrators are required for
network administration
Example
UNIX, Linux, Microsoft Windows Server 2008, Microsoft Windows Server 2003
12/05/2025
Types of Operating System…
45
6. Real Time Operating System
The Application of a Real-Time system exists in the
case of military applications, if you want to drop a
missile, then the missile is supposed to be dropped
with a certain precision.
12/05/2025
Types of Operating System …
46
12/05/2025
Types of Operating System…
47
Advantages of Real-time operating system:
Easy to layout, develop and execute real-time
applications under the real-time operating system.
Disadvantages of Real-time operating system:
very costly to develop.
are very complex
can consume critical CPU cycles.
12/05/2025
Types of Operating System…
48
7. Time-Sharing Operating System
In the Time Sharing operating system, computer
resources are allocated in a time-dependent
fashion to several programs simultaneously. Thus
it helps to provide a large number of user's direct
access to the main computer.
It is a logical extension of multiprogramming. In
time-sharing, the CPU is switched among multiple
programs given by different users on a scheduled
basis.
12/05/2025
Types of Operating System…
49
Advantages of Time Sharing Operating System
provides effective utilization and sharing of
resources.
This system reduces CPU idle and response time.
Disadvantages of Time Sharing Operating
System
Data transmission rates are very high in comparison
to other methods.
Security and integrity of user programs loaded in
memory and data need to be maintained as many
users access the system at the same time.
12/05/2025
Types of Operating System…
50
8. Distributed Operating System
The Distributed Operating system is not installed on
a single machine, it is divided into parts, and these
parts are loaded on different machines.
A part of the distributed Operating system is installed
on each machine to make their communication
possible. Distributed Operating systems are much
more complex, large, and sophisticated than Network
operating systems because they also have to take care
of varying networking protocols.
12/05/2025
Types of Operating System…
51
Advantages of Distributed Operating System
provides sharing of resources.
This type of system is fault-tolerant.
Disadvantages of Distributed Operating System
Protocol overhead can dominate computation cost
12/05/2025
Other Types of Operating System
52
12/05/2025
Types of Operating System …
53
12/05/2025
Types of Operating System …
54
12/05/2025
Types of Operating System …
55
12/05/2025
Popular Types of Operating System
56
Desktop Class
Windows
OS X
Unix/Linux
Chrome OS
Server Class
Windows Server
Mac OS X Server
Unix/Linux
Mobile Class
Android
iOS
Windows Phone
12/05/2025
End of Chapter One
12/05/2025