4. WHAT IS OS?
It is the software that enables all the programs we use.
The OS organizes and controls the hardware (CPU, RAM,
I/O)
Security
System interface
Application interface
OS acts as an interface between the application programs
and the machine hardware.
4
7. OS FUNCTIONS
The main functions of operating systems are:
• Manages and Interacts with Computer Hardware
• Process the tasks
• Provides the User/ Computer Interface (CLI / GUI)
• Provides the Interface for Application Software
• Input / Output Operations
• Error Detection, Resource Allocation, Security and
Protection
7
8. OS SERVICES
Operating system services such as,
• Input / Output Operations ,Controlling and Allocating
memory,
• Work as a Resource Allocator ,Prioritizing system
requests, File System Manipulation, Error Detection,
• Controlling input and output devices, Communication
• Managing file systems, protection
• CPUs have this capability to use at least two modes:
protected mode and supervisor mode.
8
9. Manages the CPU
- by CPU scheduling
algorithms.
Manages RAM
- What is processing in RAM
- Virtual memory.
Provides the Interface for
Application Software
-Operating systems are
designed and developed for
a specific CPU or “family of
CPUs”
9
10. Provides the interface for
storage devices and manages
how data is stored on those
devices.
Provides the Interface for
I/O Devices
• device drivers
• keyboard, mouse, printer
10
11. VIRTUAL MEMORY
Virtual Memory (VM) = the ability of the CPU and the operating
system software to use the hard disk drive as additional RAM when
needed.
Good – no longer get “insufficient memory” error.
Bad - performance is very slow when accessing VM.
Solution = increase size of RAM.
11
13. PROCESSES
Scheduler – Maintains a record of
the processes.
• Adds new processes when
launched.
• Removes old processes when
completed.
• Uses a process table.
Process Table – Information
about each process including:
• Main memory cells (RAM)
• Priority
• Running or waiting (input from
user or saving to disk)
13
15. PROCESSES
Dispatcher - Oversees the
execution of each process by the
CPU.
• Gives each process a time slice
of CPU time.
• Changes between processes.
15
16. MULTIPROCESSING WITH MULTIPLE
CPU’S
Asymmetric Multiprocessing = Tasks are assigned to a specific
CPU and each CPU has its own RAM memory
Symmetric Multiprocessing = Tasks are assigned to any
available CPU and CPU’s can share RAM memory
16
Rick Graziani graziani@cabrillo.edu
16
18. STRUCTURE OF OPERATING SYSTEM
The structure of OS consists of 4 layers:
1. Hardware
Hardware consists of CPU, Main
memory, I/O Devices, etc,
2. Software (Operating System)
Software includes process management
routines, memory management routines,
I/O control routines, file management
routines.
18
19. STRUCTURE OF OPERATING SYSTEM
3. System programs
This layer consists of compilers, Assemblers,
linker etc.
4. Application programs
This is dependent on users need. Ex. Railway
reservation system, Bank database
management etc.,
19
20. EVOLUTION OF OS:
Evolution of an OS from simple Batch processing to today’s
OS-
• Batch Operating System
• Multiprogramming Operating System
• Time Sharing or Multitasking Operating System
• Real-Time Systems
• Distributed Operating System
20
21. BATCH PROCESSING:
• In Batch processing same type of jobs batch (BATCH- a
set of jobs with similar needs) together and execute at a
time.
• The OS was simple, its major task was to transfer
control from one job to the next.
• The job was submitted to the computer operator in form
of punch cards. At some later time the output appeared.
• The OS was always resident in memory.
• Common Input devices were card readers and tape
drives.
21
22. Common output devices were line printers, tape drives,
and card punches.
Users did not interact directly with the computer
systems, but he prepared a job (comprising of the
program, the data, & some control information).
OS
User
program
area
22
23. MULTIPROGRAMMING:
• Multiprogramming is a technique to execute number of
programs simultaneously by a single processor.
• In Multiprogramming, number of processes reside in
main memory at a time.
• The OS picks and begins to executes one of the jobs in
the main memory.
• If any I/O wait happened in a process, then CPU
switches from that job to another job.
• Hence CPU in not idle at any time.
23
24. MULTIPROGRAMMING
OS • Figuredipicts the layout of
multiprogramming system.
Job 1
• The main memory consists of 5
Job 2 jobs at a time, the CPU executes
one by one.
Job 3
Advantages:
Job 4 •Efficient memory utilization
Job 5 •Throughput increases
•CPU is never idle, so performance
increases.
24
25. TIME SHARING SYSTEMS:
• Time sharing, or multitasking, is a logical extension of
multiprogramming.
• Multiple jobs are executed by switching the CPU
between them.
• In this, the CPU time is shared by different processes, so
it is called as “Time sharing Systems”.
• Time slice is defined by the OS, for sharing CPU time
between processes.
• Examples: Unix.
25
26. PROCESS STATES
FOR TIME SHARING
New Job Execution Terminated
Ready Running
Time Slice over
Wait for I/O
I/O Completed
Completion
Blocked
26
27. REAL-TIME SYSTEMS:
• A real-time operating system is a multitasking
operating system intended for applications with
fixed deadlines.
• Such applications include some small embedded
systems, automobile engine controllers, industrial
robots, spacecraft, industrial control, and some
large-scale computing systems.
• An early example of a large-scale real-time
operating system was Transaction Processing
Facility developed by American Airlines and
IBM for the Sabre Airline Reservations System.
27
28. These are of two types: a) Hard Real Time,
b) Soft Real Time.
a) These OS guarantee that critical tasks be completed
within a certain range of time.
Ex: A complete car welding by robot hardly on the time.
a) These OS provides some relaxation in time limit.
Ex: Multimedia systems, digital audio system.
28
29. DISTRIBUTED SYSTEMS:
• A distributed computer system is a collection of
autonomous computer systems capable of
communication and cooperation via their H/w and
S/w interconnection.
• The distributed operating system provides a
illusion to its users that it has a single
uniprocessor system, although it is actually
consisted of multiprocessors.
• Distributed OS provide the means for system-
wide sharing of resources such as computational
capacity, files and I/O devices.
• Ex: UNIX, LINUX.
29
30. SUMMAR
Y
• HOW AN OS WORKS
Interpreting commands, enabling the user to
communicate with the computer.
• OS IS SOFTWARE
• COMPUTER WORKS WITH THE HELP OF OS
When a computer is turned on it searches for instructions
in its memory. These instructions tell the computer how to start
up. Usually, one of the first sets of these instructions is a
special program called the operating system .
30