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.
