1.overview of Operating System
1.overview of Operating System
1.overview of Operating System
UNIT -1
OVERVIEW OF OPERATING
SYSTEM
Marks-08
By - Mr.A.D.Cholke
1.1 What is an Operating System
• A program that acts as an intermediary between a user of a computer and
the computer hardware.
Goals:
➢ Execute user programs and solve their problems.
➢ Make computer system for convenient to use.
➢ Use hardware in efficient manner.
Computer System Structure
Computer System Structure
• Hardware
• Operating System
• Application Programs
• Users
Components of Operating System
Components of Operating System
• Kernel
• Process Execution
• Interrupt
• Multitasking
• Networking
• Security
• User Interface
Functions/Operations of the operating system
Functions/Operations of the operating system
• Resource Manager
• Process Management
• Memory Management
• Device Management
• Storage Management or File Management
• Protection and Security
Functions/Operations of the operating system
• Resource Manager
➢ Operating system is a resource allocator.
➢ The operating system acts as the manager of Input / Output devices, Memory
file storage space, CPU(Central Processing Unit) time resources and allocates
them to specific programs and users as necessary for their tasks.
➢ Generally, resources sharing in two ways "in time" and "in space“.
➢ In “in time sharing” resource, first one of the tasks get the resource for some
time, then another and so on.
➢ In "space sharing“ resource the users share the space of resource.
➢ The main difference between "in time" sharing resources and "in space"
sharing resources is "in time" resources are not divided into units, whereas "in
space" sharing resources are divided into units.
Functions/Operations of the operating system
• Process Management
➢ A process is a program in execution.
➢ A process needs certain resources, including CPU time, memory, files, and I/O
devices, to accomplish its task.
➢ The operating system is responsible for the following activities in connection with
process management.
▪ Process creation and deletion.
▪ process suspension and resumption.
▪ Provision of mechanisms for:
➢ process synchronization
➢ process communication
Functions/Operations of the operating system
• Memory Management
➢ Memory is a large array of words or bytes, each with its own address. It is a repository of
quickly accessible data shared by the CPU and I/O devices.
➢ Main memory is a volatile storage device . It loses its contents in the case of system failure.
➢ The operating system is responsible for the following activities in connections with
memory management:
▪ Keep track of which parts of memory are currently being used and by whom.
▪ Decide which processes to load when memory space becomes available.
▪ Allocate and de-allocate memory space as needed
Functions/Operations of the operating system
• Device Management
➢The I/O system consists of:
▪A buffer-caching system.
▪A general device-driver interface.
• File Management
➢ A file is a collection of related information defined by its creator. Commonly,
files represent programs (both source and object forms) and data.
➢ The operating system is responsible for the following activities in connections
with file management:
▪ File creation and deletion.
▪ Directory creation and deletion.
▪ Support of primitives for manipulating files and directories.
▪ Mapping files onto secondary storage.
▪ File backup on stable (nonvolatile) storage media.
Functions/Operations of the operating system
Advantages- Disadvantages-
1. In Batch Jobs are executed one after 1. Memory limitation
another it saves the time of loading a
2. CPU is often idle, because the speed of
program.
the mechanical I/O devices is slower
2. During batch execution no manual than the CPU.
interruption is needed.
3. Difficult to provide the desired priority.
2. Multi-programmed Operating System
2. Multi-programmed Operating System
• Sharing the processor, when two or more programs reside in memory at the
same time, is referred as multiprogramming.
• Multiprogramming assumes a single shared processor.
• Multiprogramming increases CPU utilization by organizing jobs so that the
CPU always has one to execute.
• An OS does the following activities related to multiprogramming.
1. The operating system keeps several jobs in memory at a time.
2. This set of jobs is a subset of the jobs kept in the job pool.
3. The operating system picks and begins to execute one of the jobs in the
memory.
4. Multiprogramming operating systems monitor the state of all active programs
and system resources using memory management programs to ensures that the
CPU is never idle, unless there are no jobs to process.
2. Multi-programmed Operating System
Advantages Disadvantages
1. High and efficient CPU 1. CPU scheduling is required.
utilization. 2. To accommodate many jobs
2. User feels that many programs in memory, memory
are allotted CPU almost management is required.
simultaneously.
3. Multitasking Operating System
Multitasking, in an operating
system, is allowing a user to
perform more than one
computer task (such as the
operation of an application
program) at a time.
3. Multitasking Operating System
•Multitasking, in an operating system, is allowing a user to perform more
than one computer task (such as the operation of an application program) at a
time.
•The operating system is able to keep track of where you are in these tasks and
go from one to the other without losing information.
•In multitasking only one CPU is involved, but it switches from one program
to another
•Two methods for sharing CPU time to run to process simultaneously are:
1. Cooperative Multitasking:
➢ It lets the program decide when they wish to let other tasks run.
➢ Not good method, as it lets process control the CPU and never let other process to run.
2. Preemptive Multitasking:
➢ In moves control of the CPU to the OS, letting each process run for given amount of
time and then switching to another task.
3. Multitasking Operating System
Advantages Disadvantages
1. It helps in increasing the 1. It requires more system
overall productivity by resources e.g. large amount of
performing number of tasks at memory required for several
same time. programs(tasks).
2. It helps in increasing overall 2. To perform multiple task at a
performance of the computer time, CPU speed must be
system. high.
4. Time Sharing Operating System
4. Time Sharing Operating System
• Time-sharing is a technique which enables many people, located at
various terminals, to use a particular computer system at the
same time.
• Time-sharing or multitasking is a logical extension of
multiprogramming.
• Processor's time which is shared among multiple users
simultaneously is termed as time-sharing.
• The main difference between Multi-programmed Batch Systems and
Time-Sharing Systems is that in case of Multi-programmed batch
systems, the objective is to maximize processor use.
• whereas in Time-Sharing Systems, the objective is to minimize
response time
4. Time Sharing Operating System
Advantages Disadvantages
1. Provides the advantage of 1. Problem of reliability.
quick response. 2. Question of security and
integrity of user programs and
2. Avoids duplication of
data.
software.
3. Problem of data
3. Reduces CPU idle time communication.
5. Multiprocessor Operating System
5. Multiprocessor Operating System
• Multiprocessor operating system allows the multiple processors, and these
processors are connected with physical memory, computer buses, and
peripheral devices.
• Main objective of using multiprocessor operating system increase the
execution speed of system.
• There are mainly three types.
1. Each CPU has its own operating system.
2. Master Slave Multiprocessors. (Asymmetric)
3. Symmetric Multiprocessor.
5. Multiprocessor Operating System
• Advantages
a. More reliable Systems.
b. Enhanced Throughput.
c. More Economic Systems.
• Disadvantages
a. Complicated Operating System Required.
b. Large Main Memory Required.
6. Distributed System
6. Distributed System
• A distributed system contains multiple nodes that are physically separate but
linked together using the network.
• All the nodes in this system communicate with each other and handle
processes.
• Types of Distributed Systems:
• 1.Client/Server Systems
o In client server systems, the client requests a resource and the server provides
that resource.
• 2.Peer to Peer Systems
o The peer to peer systems contains nodes that are equal participants in data
sharing.
o All the tasks are equally divided between all the nodes.
6. Distributed System
Advantages -
• Nodes can easily share data with other nodes.
• More nodes can easily be added .
• Failure of one node does not lead to the failure of the entire distributed system.
• Resources can be easily shared with multiple nodes.
Disadvantages -
• It is difficult to provide adequate security
• Some messages or data can be lost in the network while moving from one
node to another.
• The database connected to the distributed systems is Complicated.
• Overloading may occur in the network.
7. Real-time Operating System
Advantages-
1. GUIs are easy to operate and provide better accessibility.
2. User can switch quickly between the task on the GUI interface.
3. GUI allows multiple program and its instances to be displayed
simultaneously.
4. GUI is convenient and user-friendly.
Disadvantages-
1. It uses more Computer memory.
2. GUI become more complex if user needs to communicate with the
computer directly
3. Difficult to display all necessary control because of Limited
Windows space.
4. Slow speed because of long pointer operation.
Command line based OS and GUI Based OS
1.Windows-
• It series of operating system developed by the Microsoft.
• Each version of Windows includes graphical user interface with
desktop that allows a user to view a files.
• Microsoft Windows is designed for both home computer and
professional purpose fast version of Windows includes Windows
3.0(1990), Windows 3.1 (1992),Windows 95 (1995),
• Windows 98(1998),Windows ME(2000),Windows XP (2001)
Windows Vista(2006),Windows 7(2009) etc.
• The Current version Windows 10 was release on 29 July 2015.
Command line based OS and GUI Based OS
2. Linux-
• Linux is UNIX-like operating system created by LinusTorvalds. Linux
each Freely Distributed Operating System.
• Today Linux is used by millions of people around the world
programmer can even modify the source code and create their own
unique version of the Linux operating system.
• Some of the popular version of Linux Red Hat Enterprise, cent OS,
and Ubuntu.
• Most Linux System provide either K Desktop environment (KDE) or
GNOME interface.
• GNOME stands for GNU network object model environment is one of
the oldest and most widely used Linux Desktop Environment.
Command line based OS and GUI Based OS
Difference between CLI and GUI-
Sr. CLI GUI
no.
1. It is a text based interface used to interact Including Windows icon and images It
with software and operating system by is visual based interface which features the
typing the ,commands. use of graphical images.
2. It is faster and difficult to use than GUI. It is slower and easier to use than CLI.