The document provides an overview of operating systems, including their goals, advantages, components, and views from the user and system perspectives. It describes various operating system techniques like spooling, time-sharing, multiprocessor systems, distributed systems, and real-time systems. Multiprocessor systems can be symmetric (SMP) or asymmetric (AMP) depending on how processors are treated. Distributed systems have loosely coupled processors that communicate over a network, providing benefits like improved communication, computation speedup, reliability, and resource sharing. Real-time systems ensure tasks are completed within deadlines and can be soft or hard, with safety-critical systems usually requiring hard real-time guarantees.
2. Operating System
An operating system is a program that manages the computer
hardware. It also provides a basis for application programs
and acts as an intermediary between the computer user and the
computer hardware.
3. Goals of operating system
Execute user
programs and make
solving user
problems easier
Make the computer
more convenient to
use.
Provide isolation,
security and
protection among user
programs
Efficiently use the
computer hardware
5. Component of computer
.
The body, who/what
instructs the computer.
Example: people, machines,
other computers.
Provide basic resources for a
computer.
Example: CPU, memory, I/O
devices etc.
Defines how the program
resources are used to solve
the computing problems of
the user. Example: database
system, compiler, business
programs, video games etc.
01
Hardware
02
Operating
system
03
Application
program
04
User
Controls and coordinates the
use of the hardware among
various application programs
for the various user.
Example: Windows, Linux,
etc.
7. Operating system from the user view
The user's view of the computer varies according to the
interface being used.
For the users of personal computers, the operating
system is designed mostly for ease of the user, with
some attention paid to performance and none paid to
resource utilization. In this case, performance is
important to the user but it does not matter if most of
the system is sitting idle, waiting for the slow I/O
speed of the user.
The users that are connected to a mainframe or mini-
computer, share resources and may exchange information.
For them, the OS is designed to maximize resource
utilization to assure that all available CPU time,
memory and I/O are used efficiently and that no
individual user takes more than her fair share.
8. Operating system from the system view
From the computer's point of view, the operating
system is the program that is most intimate with
the hardware. We can view OS as:
• Resource allocator- manages and allocates
resources.
• Control program- controls the execution of user
programs and operations of I/O devices.
• Kernel- the one program running at all times
(all else being application programs).
9. Spooling
Spooling refers to placing data into an intermediate storage area,
where it is held until the computer (or the user) is ready to
process it. This storage area is called a spool. Spool- simultaneous
peripheral operation online. This technique used by the operating
system to enable device sharing among user processes.
Spool
disk
Line
printer
Line
printer
CPU
10. Time-scheduling
Time-scheduling is a technique that
enables many people, located at various
terminals, to use a particular computer
system at the same time. Time-scheduling
or multitasking is a logical extension of
multiprogramming. The processor's time
which is shared among multiple users
simultaneously is termed as time-
scheduling.
11. Multiprocessor systems/tightly coupled system/parallel system
multiprocessor systems (also known as
parallel systems or tightly coupled
systems) are growing in importance. Such
systems have two or more processors in
close communication, sharing the computer
bus and sometimes the clock, memory, and
peripheral devices.
12. Economy of scale:
Multiprocessor systems can
cost less than equivalent
multiple single-processor
systems, because they can
share peripherals, mass
storage, and power
supplies
Increased
throughput:
By increasing the number
of processors, we expect
to get more work done in
less time.
If functions can be
distributed properly
among several
processors, then the
failure of one
processor will not halt
the system, only slow
it down.
Increased
reliability:
Advantages of multiprocessor system
13. Processing of programs by multiple
processors that share a common operating
system and memory.
All processors are designed the same and
handle the same type of tasks.
Used when more resources are available.
Used in general-purpose computers
because things need to be done in the
sank way.
Symmetric
Multiprocessor
(SMP)
Asymmetric
Multiprocessor
(AMP)
Processing of programs by multiple
processors that function according to the
master-slave relationship.
Each processor specialized to a specific
task.
Used when fewer resources are available.
Used in embedded systems.
All the processors are treated equally. Processors are not treated equally.
Processors communicate with each other
by the shared memory.
Processors communicate with the master
processor.
14. Distributed or loosely coupled system
A distributed system is a collection of processors
that do not share memory or a clock, distributes the
computation among several physical processors.
A distributed system is a collection of loosely
coupled processors interconnected by a communication
network. Each processor has its own local memory. The
processors communicate with one another through
various communication networks, such as high-speed
buses or telephone lines.
15. Advantages of loosely coupled system
Communication
Computation
speedup
Reliability
Resource
sharing
16. Real-time system
A real-time system is a computer system
that requires not only that the computing
results be "correct" but also that the
results be produced within a specified
deadline period. A real-time system has
well-defined, fixed time constraints. It
is used as a control device in a dedicated
application such as scientific
experiments, medical imaging systems,
industrial control systems, and certain
display systems.
17. Types of real-time system
Soft real-time systemYourText Here
A soft real-time system is less
restrictive, simply providing that
a critical real-time task will
receive priority over other tasks
and that it will retain that
priority until it completes. Many
commercial operating systems soft
real-time support.
A hard real-time system has the most
stringent requirements, guaranteeing
that critical real-time tasks to be
completed within their deadlines.
Safety-critical systems are
typically hard real-time systems.
2
1
Hard real-time system
18. Prepared by:
Ankon Gopal Banik
Front End Developer | WWF
(Web With Friends)
m: +8801771981989
p: 027730402
e: agbanik2081@outlook.com
75-B, Kyetpara, Dhamrai,
Dhaka, Bangladesh
www.wwfriends.org