You are on page 1of 44

WELL COME TO OUR

PRESENTATION!!!!!!!!
OPERATING SYSTEMS

OBJECTIVE
• The objective of this lesson is to make the students familiar
with the basics of operating system.
• After studying this lesson you will be familiar with:
Definition of operating system
History of operating systems
functions performed by an operating system.
Different types of operating systems.
DEFINITION

• An operating system (OS) is a software program that manages
the hardware and software resources of a computer.
• An operating system (OS) is system software that
manages computer hardware and software resources and
provides common services for computer programs.
• All computer programs, excluding firmware, require an
operating system to function.
CONT..
CONT.
CONT.
HISTORY PHASE I: HARDWARE EXPENSIVE, HUMANS
CHEAP

• Hardware: mainframes
• OS: human operators
• Handle one job (a unit of processing) at a time
• Computer time wasted while operators walk around
the machine room
OS DESIGN GOAL

• Efficient use of the hardware
• Batch system: collects a batch of jobs before processing
them and printing out results
• Job collection, job processing, and printing out results can
occur concurrently
• Multiprogramming: multiple programs can run
concurrently
• Example: I/O-bound jobs and CPU-bound jobs
HISTORY PHASE II: HARDWARE CHEAP, HUMANS
EXPENSIVE
• Hardware: terminals
• OS design goal: more efficient use of human
resources
• Timesharing systems: each user can afford to own
terminals to interact with machines
HISTORY PHASE III: HARDWARE VERY CHEAP,
HUMANS VERY EXPENSIVE
• Hardware: personal computers
• OS design goal: allowing a user to perform many tasks at
the same time
• Multitasking: the ability to run multiple programs on the same
machine at the same time
• Multiprocessing: the ability to use multiple processors
on the same machine
HISTORY PHASE IV: DISTRIBUTED SYSTEMS
• Hardware: computers with networks
• OS design goal: ease of resource sharing among machines
HISTORY OF OPERATING SYSTEMS
• The OS performs basic tasks, such as:
controlling and allocating memory,
prioritizing the processing of instructions,
controlling input and output devices,
facilitating networking, and
managing files.
• The first computers did not have operating systems.
However, software tools for managing the system and
simplifying the use of hardware appeared very quickly
afterwards, and gradually expanded in scope.
CONT..

• Through the 1960s, several major concepts were developed, driving the
development of operating systems.
• The development of the IBM System/360 produced a family of mainframe
computers available in widely differing capacities and price points, for which
a single operating system OS/360 was planned (rather than developing ad-
hoc programs for every individual model).
• By the 1990s, the microcomputer had evolved to the point where, as well as
extensive GUI facilities, the robustness and flexibility of operating systems of
larger computers became increasingly desirable
CONT.

• Microsoft's response to this change was the development of Windows NT,
which served as the basis for Microsoft's entire operating system line starting
in 1999.
• Apple rebuilt their operating system on top of a Unix core as Mac OS X,
released in 2001.
• The growing complexity of embedded devices has a growing trend to use
embedded operating systems on them.
TODAY
• Command line interface (or CLI) operating systems can operate using only the
keyboard for input.
• Modern OS's use a mouse for input with a graphical user interface (GUI)
sometimes implemented as a shell.
• The appropriate OS may depend on the hardware architecture, specifically
the CPU, with only Linux and BSD running on almost any CPU.
• Windows NT has been ported to other CPUs, most notably the Alpha, but
not many.
• Since the early 1990s the choice for personal computers has been largely
limited to the Microsoft Windows family and the Unix-like family, of which
Linux and Mac OS X are becoming the major choices.
CONT..

• Personal computers
IBM PC compatible - Microsoft Windows and smaller Unix-variants
(like Linux and BSD)
Apple Macintosh - Mac OS X, Windows, Linux and BSD
• Mainframes - A number of unique OS's, sometimes Linux and other
Unix variants.
• Embedded systems - a variety of dedicated OS's, and limited
versions of Linux or other OS's
UNIX-LIKE

• The Unix-like family is a diverse group of operating systems, with
several major subcategories including System V, BSD, and Linux.
• The name "Unix" is a trademark of The Open Group which licenses
it for use to any operating system that has been shown to conform
to the definitions that they have cooperatively developed.
• The name is commonly used to refer to the large set of operating
systems which resemble the original Unix. Unix
MICROSOFT WINDOWS

• The Microsoft Windows family of operating systems originated as a graphical
layer on top of the older MS-DOS environment for the IBM PC.
• Modern versions are based on the newer Windows NT core that first took
shape in OS/2 and borrowed from OpenVMS.
• Windows runs on 32-bit and 64-bit Intel and AMD computers, although earlier
versions also ran on the DEC Alpha, MIPS, and PowerPC architectures (some
work was done to port it to the SPARC architecture).
OPERATING SYSTEMS
• The operating system is the most important program that runs on a computer.
• Operating system is an interface between computer and user.
• It is responsible for the management and coordination of activities and the sharing of the
resources of the computer.
Operating System
(OS) is system software, which acts as an interface between a user of the computer and the
computer hardware.
• The main purpose of an Operating System is to provide an environment in which we can
execute programs.
• The main goals of the Operating System are:
(i) To make the computer system convenient to use,
(ii) To make the use of computer hardware in efficient way
CONT..

• Operating System may be viewed as collection of software consisting
of procedures for operating the computer and providing an
environment for execution of programs.
• It is an interface between user and computer.
• So an Operating System makes everything in the computer to work
together smoothly and efficiently
CONT.

• Basically, an Operating System has three main responsibilities:
(a) Perform basic tasks such as recognizing input from the keyboard,
sending output to the display screen, keeping track of files and
directories on the disk, and controlling peripheral devices such as disk
drives and printers.
(b) Ensure that different programs and users running at the same
time do not interfere with each other.
(c) Provide a software platform on top of which other programs can
run.
CONT..
OS FUNCTIONS

• Memory Management
• Processor Management
• Device Management
• File Management
• Security
• Control over system performance
• Job accounting
• Error detecting aids
• Coordination between other software and users
MEMORY MANAGEMENT

• Keeps tracks of primary memory, i.e., what part of it are in use by
whom, what part are not in use.
• In multiprogramming, the OS decides which process will get
memory when and how much.
• Allocates the memory when a process requests it to do so.
• De-allocates the memory when a process no longer needs it or has
been terminated
PROCESSOR MANAGEMENT

• Keeps tracks of processor and status of process. The program
responsible for this task is known as traffic controller.
• Allocates the processor (CPU) to a process.
• De-allocates processor when a process is no longer required.
DEVICE MANAGEMENT

• Keeps tracks of all devices. The program responsible for this
task is known as the I/O controller.
• Decides which process gets the device when and for how
much time.
• Allocates the device in the most efficient way.
• De-allocates devices.
FILE MANAGEMENT

• Keeps track of information, location, uses, status etc. The collective
facilities are often known as file system.
• Decides who gets the resources.
• Allocates the resources.
• De-allocates the resources.
CONT..
• It manages the hardware and software resources of the system.
In a desktop computer, these resources include such things as:
 The processor (is an electronic circuit that can execute computer
programs)
Memory
Disk Space
(On a cell phone, they include the keypad, the screen, the address
book, the phone dialer, the battery and the network connection).
TYPES OF OPERATING SYSTEMS

There are generally many types, categorized based on the types of
computers they control and the sort of applications they support. Some
of the categories are:
TYPES OF OPERATING SYSTEMS

1 Batch Operating System.
2 Multi Programming Operating System.
3 Multitasking Operating System.
4 Multi-user Operating System.
5 Multithreading.
6 Time Sharing System.
7 Real Time Systems.
8.Distributed Operating Systems
BATCH OPERATING SYSTEM
• Is simple operating system and its major task was to transfer control from one job to
the next.
• The job was submitted to the computer operator in the from of punch cards.
• The operating systems was always resident in memory.
• Common Input Device were Card readers and Tape drivers.
• Common out put device line printers, tape drivers and card punches
• Users did not interact with the computer system, but he prepared a job(comprising of
the program, data and some control information)
• Small resident kernel sequences jobs for one or more batch streams using a job
control interface.
Goal
• minimize setup time, minimize idle time.
CONT.
MULTI PROGRAMMING OPERATING SYSTEM.
• 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.
CONT...

Advantages:

•Efficient memory utilization

•Throughput increases

•CPU is never idle, so performance increases.
MULTITASKING OPERATING SYSTEM.

• Allows two or more users to run programs at the same
time.
• Some operating systems permit hundreds or even
thousands of concurrent users.
MULTI-USER OPERATING SYSTEM

• Provides regulated access for a number of users by maintaining a database of
known users.
• Refers to computer systems that support two or more simultaneous users.
• Another term for multi-user is time sharing.
Example
• All mainframes and are multi-user systems.
• Unix
MULTITHREADING

• It isalso known as threading.
• it is an excution model that allows a single process to
have multiple code segments (i.e threads) run
concurrently with in the context of that process.
• Multithreading is the ability of an operating system
proccess to manage its use by more than one user at
a time.
• Even to manage multiple requests by the same user.
TIME SHARING SYSTEM

• 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: Multics, Unix, etc.
REAL TIME OPERATING
• Well-defined fixed-time constraints.
• There is typically very little user interface capability.
• Resources are managed so that a particular operation executes precisely the same
every time.
• Real-Time systems may have either hard or soft real-time.
Hard real-time
• Secondary storage limited or absent, data stored in short term memory, or read-only
memory (ROM)
• Conflicts with time-sharing systems, usually not supported by general-purpose
operating systems.
Soft real-time
• Limited utility in industrial control of robotics
• Quality of Service
• Useful in applications (multimedia, virtual reality) requiring advanced operating-
system features.
DISTRIBUTED OPERATING SYSTEMS

• Distribute the computation among several physical processors.
• Loosely coupled system–each processor has its own local memory; processors
communicate with one another through various communications lines, such as
high-speed buses or network communication.
Advantages of distributed systems.
• Resources Sharing
• Computation speed up
• load balancing
• Scalability
• Reliability
• Fail-Safe
• Communications
• May make use of commodity platforms.
• OS has to cater for resource sharing.
• May be either client-server or peer-to-peer systems.