Operating Systems
Download
Report
Transcript Operating Systems
Operating Systems
Definition
An operating system is a collection
of programs that manage the
resources of the system, and
provides a interface between the
user, the hardware, and the
applications.
Types of Operating Systems
Simple
device control
embedded on a ROM chip
Complex
Windows
NT
Unix, Etc.
Complex Operating Systems
Consist of multiple programs
The Kernel is the core of the
operating systems.
Kernel
The kernel is responsible for:
Device control
Memory management
Scheduling
Inter-process communication
Processing of interrupts and exceptions.
Single vs. Multiple
Processor
Single Processor can only run one
instruction at a time.
It gives the appearance of multitasking with switching.
2 Types of Switching
Co-Operative Switching
Pre-Emptive Switching
Co-Operative Switching
In co-operative switching the task
which is currently running must
voluntarily give up the processor for
the next process to run.
Problem with Co-Operative
Switching
If first process “hangs up” and does
not give up control the computer
freezes. No other task can run.
Pre-Emptive Switching
In pre-emptive switching the task
that is currently running is forced to
give up control after a certain period
of time. If a task “hangs” it does not
stop subsequent task from running.
Pre-Emptive Switching is
“Better” than Co-Operative
Switching
16-Bit
vs.
32-bit
32-bit programs use pre-emptive
switching.
16-bit program use co-operative
switching and are more susceptible
to “freezing”.
Context Switching
The process of switching from one
task to another is called “Context
Switching”.
Scheduling
Scheduling is the process of deciding
which task should run next.
Time Slice
The amount of time that a process
runs before giving up control is
called time slice or quantum period.
Co-Operative Processing
In co-operative processing the
processes are generally arranged
such that as the top process is
completed each task moves up one
place.
Pre-Emptive Scheduling
Pre-emptive scheduling uses a realtime clock, which generates
interrupts at regular intervals. Each
time an interrupt occurs the
processor is switched to another
task.
Generally tasked are assigned a
priority in pre-emptive scheduling.
Multiprocessor vs.
Multiprocessing
A multi-processor computer is a
computer with more than one
processor.
Categories of MultiProcessor Computers
Shared memory multi-processor
Distributed memory multi-processor
Shared Memory Multiprocessor
Shared memory multi-processors
have multiply CPUs, and they all
share the same memory.
Communication between the
processors is easy to implement, but
care must be taken to synchronize
memory access.
Distributed Memory MultiProcessors
Also has multiple CPUs, but each
CPU has its own memory.
In distributed memory multiprocessor memory synchronization
is not a problem,
but communication between the
processors is often slow and
complicated.
Related to Multi-Processors
Networked Systems
Distributed Systems
Networked Systems
Networked systems consist of
multiple computers, networked
together. Users are aware of the
different computers that make up
the system.
Distributed Systems
Distributed systems also consist of
multiple computer but unlike the
networked system the various
computers are transparent to the
user.
Operating System
A computer is a set of resources for
the movement, storage, and
processing of data.
The operating system is responsible
for
managing these resources
scheduling the other programs
and providing the user interface.