Introduction To Operating System
Introduction To Operating System
Introduction To Operating System
Chapter 1
Introduction to Operating System
Part 2
Chapter Summary
At the end of this chapter, students will be able to:
1) Common Tasks and standards of an Operating Systems.
2) List types of operating system such as: Batch system,
multiprogramming, and distributed system.
3) Explain the differences between different types of
operating system.
5 Common Tasks and
standards of an Operating
Systems
Operating Systems Processor Management
This involves ensuring that all the system resources
receive sufficient processes time for expected
functioning as well as making sure that the
processer is used to its optimum capacity.
Operating Systems-Memory Management or
Storage Management:
Computer systems have different types of
memories such as temporary (RAM, Cache, etc.) as
well as permanent memories (Hard Drives, USB
Drives, etc.). It is the job of an Operating System to
allocate the relevant and necessary memory space
to the applications & devices for efficient and
optimum processing of information. 5 Common Tasks and
standards of an Operating
Systems
Operating Systems-Device Management
Managing the inputs and outputs of various devices /
peripherals is also one of the critical functions of an
Operating Systems. With the help of device drivers,
the OS controls flow of information with the
necessary allocation of system resources to ensure
correct input and output.
Operating Systems-Application Management
As the OS manages the devices using drivers, it also
manages the various applications running on a
computer using different Application Program
Interfaces (APIs). Based on the data received from
the application through the APIs, the OS performs
actions to provide the expected results. 5 Common Tasks and
standards of an Operating
Systems
Operating Systems-User Interface
A user interface provides a consistent way of
interaction between the user and the computer
system. The OS acts as an engine to provide
means of interaction between user and computer
through the user interfaces.
Types of Operating System
Batch System
Multiprogramming
Distributed System
Types of Operating System:
Batch System
A batch system is one in which jobs are bundled together
with the instructions necessary to allow them to be
processed without intervention.
The basic physical layout of the memory of a batch job
computer is shown below:
- The monitor is system software that is responsible for
interpreting and carrying out the instructions in the batch
jobs.
- When the monitor starts a job, the entire computer is
dedicated to the job, which then controls the computer until
it finishes.
Monitor (permanently resident)
User Space
(compilers, programs, data, etc.)
Types of Operating System:
Batch System
Operating Systems for Real-time OS
These types of OS are used to control machinery,
control systems and industrial systems and have
very less or in certain case no user-interface
capability.
Types of Operating System:
Batch System
Advantages:
1) Move much of the work of the operator to the computer
2) Increased performance since it was possible for job to start
as soon as the previous job finished
Disadvantages:
1) Due to lack of protection scheme, one batch job can affect
pending jobs (read too many cards, etc)
Example: A job could corrupt the monitor, thus affecting
pending jobs
2) A job could enter an infinite loop
Types of Operating System:
Multiprogramming
As machines with more and more memory became
available, it was possible to extend the idea of
multiprogramming (or multiprocessing) as used in batch
systems.
This create a systems that would load several jobs into
memory at once and cycle through them in some order,
working on each one for a specified period of time.
The basic physical layout of a multiprogramming system is
as shown:
Monitor (more like an operating system)
User program 1
User program 2
User program 3
User program 4
Types of Operating System:
Multiprogramming
At this point the monitor is growing to the point where it
begins to resemble a modern operating system.
It is responsible for:
1) Starting user jobs
2) Spooling operations
3) IO for user jobs
4) Switching between user jobs
5) Ensuring proper protection while doing the above
Spooling ?
Spooling refers to a process of transferring data by
placing it in a temporary working area where another
program may access it for processing at a later point in
time.
Spooling refers to putting jobs in a buffer, a special area in
memory or on a disk where a device can access them
when it is ready.
Spooling is useful because devices access data at different
rates. The buffer provides a waiting station where data can
rest while the slower device catches up.
This temporary working area would normally be a file or
storage device.
Types of Operating System:
Multiprogramming
There are different type of Multiprogramming Operating
System such as:
1) Operating Systems for Single User, Single Task OS
This is a typical computer system where one user can work
effectively only on one task. Cell phones and palm tops are
examples where these types of systems are used.
Types of Operating System:
Multiprogramming
2) Operating Systems for Single User, Multi-tasking
Computer Operating Systems of desktops or laptops
typically fall within this category. Here, the user can use
several applications at a time.
3) Operating Systems for Multi-User:
Here, various users use the computer system through
different terminal and the Operating Systems on that
computer has to balance multiple users with multiple
applications.
Types of Operating System:
Distributed System
A Distributed Operating System is the one that runs on
multiple, autonomous CPUs which provides its users an
illusion of an ordinary Centralized Operating System that
runs on a Virtual Uniprocessor.
Distributed Operating Systems provide resource
transparency to the user processes.
If you can tell which computer you are using, you are not
using a distributed operating system. - Tanenbaum
Types of Operating System:
Distributed System
The Distributed Operating System is unique and resides
on different machines.
User processes can run on any of the CPUs as allocated
by the Distributed Operating System.
Data can be resident on any machine that is the part of
the Distributed System.
It is the software not the hardware that determines
whether a system is distributed or not - Tanenbaum
Types of Operating System:
Distributed System
Advantages:
1) Price/Performance advantage (Availability of cheap and
powerful Microprocessors).
2) Resources Sharing
3) Computation speed up load sharing
4) Reliability and Availability.
5) Provides Transparency.
Disadvantages:
1) Lack of security - Easy access also applies to secret
data.
Types of Operating System:
Distributed System
An example of a distributed system: Amoeba
- An open source microkernel-based distributed operating
system developed by Andrew S. Tanenbaum and others at
the Vrije Universiteit.
- The aim of the Amoeba project is to build a timesharing
system that makes an entire network of computers appear
to the user as a single machine.
- Development seems to have stalled: the files in the latest
version (5.3) were last modified on 12 February 2001.
- Amoeba runs on several platforms, including i386, i486,
68030, Sun 3/50 and Sun 3/60.
Activity
1) What is the main differences between batch,
multiprogramming and distributed operating
system?
2) AmigaOS is a operating
system.
3) Draw a basic physical layout of a multiprogramming
operating system.