0% found this document useful (0 votes)
12 views

Unit-I-Operating System Overview and Structure

The document provides an overview of operating systems, detailing their functions, history, and types of management including process, memory, and storage management. It outlines the evolution of operating systems from the first generation to the present, highlighting key developments and characteristics of each generation. Additionally, it discusses the advantages and disadvantages of operating systems, as well as the importance of security and protection mechanisms in managing system resources.

Uploaded by

Ankita Bidarkar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
12 views

Unit-I-Operating System Overview and Structure

The document provides an overview of operating systems, detailing their functions, history, and types of management including process, memory, and storage management. It outlines the evolution of operating systems from the first generation to the present, highlighting key developments and characteristics of each generation. Additionally, it discusses the advantages and disadvantages of operating systems, as well as the importance of security and protection mechanisms in managing system resources.

Uploaded by

Ankita Bidarkar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 68

Ms.B.D.

Lambture
Artificial Intelligence and
Subject: Operating SystemData Science
Operating Systems Overview and Structure
Department
AISSMS IOIT, Pune
Unit-I- Operating Systems Overview and Structure

Content:
• Introduction
• Operating Systems Operations
• OS Generations
• Types of Management
1. Process management
2. Memory management
3. Storage management
4. Protection and security
• Structures-OS Services and system Calls
• System Programs
• OS Structure
• Types of OS
• Batch
• Time Sharing
• Multiprogramming
• Distributed
2
Introduction:
What is an Operating System?
• Computer System = Hardware + Software
• Software = Application Software + System Software(OS)
• An Operating System is a system Software that acts as an intermediary/interface
between a user of a computer and the computer hardware.
• Operating system goals:
 Execute user programs and make solving user problems easier.
 Make the computer system convenient to use.
 Use the computer hardware in an efficient manner.

https://www.geeksforgeeks.org/what-is-an-operating-system/
3
• In the Computer System (comprises of Hardware and software), Hardware can
only understand machine code (in the form of 0 and 1) which doesn't make any
sense to a naive user.
• We need a system which can act as an intermediary and manage all the
processes and resources present in the system.

4
• An Operating System is the low-level software that supports a computer's basic
functions, such as scheduling tasks and controlling peripherals. OR
• An operating system is a program that acts as an interface between the user
and the computer hardware and controls the execution of all kinds of
programs.
• Architecture:

5
History of Operating System
The First Generation (1940's to early 1950's)
 No Operating System
 All programming was done in absolute machine language, often by wiring up plug-boards to control the
machine’s basic functions.
The Second Generation (1955-1965)
 First operating system was introduced in the early 1950's.It was called GMOS
 Created by General Motors for IBM's machine the 701.
 Single-stream batch processing systems
The Third Generation (1965-1980)
 Introduction of multiprogramming
 Development of Minicomputer
The Fourth Generation (1980-Present Day)
 Development of PCs
 Birth of Windows/MaC OS

6
History of Operating System

7
History of Operating System

8
Operating System Generations

0th Generation
The term 0th generation is used to refer to the period of development of computing when Charles Babbage
invented the Analytical Engine and later John Atanasoff created a computer in 1940. The hardware component
technology of this period was electronic vacuum tubes. There was no Operating System available for this
generation computer and computer programs were written in machine language. This computers in this generation
were inefficient and dependent on the varying competencies of the individual programmer as operators .

First Generation (1951-1956)


• The first generation marked the beginning of commercial computing including the introduction of Eckert and
Mauchly’s UNIVAC I in early 1951, and a bit later, the IBM 701.
• System operation was performed with the help of expert operators and without the benefit of an operating
system for a time though programs began to be written in higher level, procedure-oriented languages, and thus
the operator’s routine expanded. Later mono-programmed operating system was developed, which eliminated
some of the human intervention in running job and provided programmers with a number of desirable
functions. These systems still continued to operate under the control of a human operator who used to follow a
number of steps to execute a program. Programming language like FORTRAN was developed by John W.
Backus in 1956.
9
Second Generation (1956-1964)
The second generation of computer hardware was most notably characterised by transistors replacing vacuum
tubes as the hardware component technology. The first operating system GMOS was developed by the IBM
computer. GMOS was based on single stream batch processing system, because it collects all similar jobs in
groups or batches and then submits the jobs to the operating system using a punch card to complete all jobs in a
machine. Operating system is cleaned after completing one job and then continues to read and initiates the next
job in punch card.
Third Generation (1964-1979)
• The third generation officially began in April 1964 with IBM’s announcement of its System/360 family of
computers. Hardware technology began to use integrated circuits (ICs) which yielded significant advantages in
both speed and economy.
• Operating system development continued with the introduction and widespread adoption of multiprogramming.
The idea of taking fuller advantage of the computer’s data channel I/O capabilities continued to develop.
Fourth Generation (1979 – Present)
• The fourth generation is characterised by the appearance of the personal computer and the workstation. The
component technology of the third generation, was replaced by very large scale integration (VLSI). Many
Operating Systems which we are using today like Windows, Linux, MacOS etc developed in the fourth
generation.
10
Operating System Operations
• Operating system operations refer to the tasks and processes that an operating system performs
to manage hardware resources and provide a platform for software applications to run on.
• These operations include managing memory, controlling input and output devices, handling
user input, providing a user interface, managing security, and facilitating software application
communication with hardware devices.
Basic Operating System Operations
1. File Management: A file is a named collection of related data that is stored on a storage
device such as a hard disk or flash drive. The operating system provides a file system that
manages the creation, deletion, and manipulation of files. It provides a way for applications
to access and modify the data stored in files.
2. Device Management: A device in an operating system refers to any physical or virtual
component that is used to interact with the system. The operating system provides device
drivers, which are software components that enable the system to communicate with
different devices and manage their input/output operations.

11
Continue..
3. Memory Management: The operating system manages the allocation of
memory to running processes and ensures that they do not interfere with each
other’s memory usage. Memory is typically divided into two types: physical
memory RAM and virtual memory, which uses hard disk space to simulate
additional RAM.
4. Process Management: A process has its own memory space, CPU time, and
other system resources allocated to it by the operating system. The operating
system schedules process on the CPU manages their memory usage and provides
inter-process communication mechanisms that allow processes to communicate
and synchronize with each other.

12
Advantages of Operating System Operations
Here, are the advantages of operating system operations:
• They can manage hardware resources and prioritize tasks, making the system run more
efficiently.
• They provide a user-friendly interface for users to interact with the computer.
• They can manage system resources such as memory, CPU, and storage to ensure optimal
performance.
• They allow multiple applications to run simultaneously, increasing productivity.
• It supports a wide range of hardware devices and peripherals, making them accessible to
users.
• These provide file management tools such as copy, move, and delete, making it easier to
organize and manage data.

13
Disadvantages of Operating System Operations
Here, are the disadvantages of operating system operations:
• They require significant hardware resources to run, which can limit performance on older or
less powerful machines.
• They may not be consistent with all software applications and hardware devices, causing
compatibility issues and limiting functionality.
• They may have security vulnerabilities that can be exploited by hackers and malicious
software.
• It may be expensive to purchase or upgrade, which can be a financial burden for users.
• The users may become dependent on the OS and the software applications that run on it,
limiting flexibility and freedom.
• Operating system upgrades may be required to maintain security and compatibility, which
can be time-consuming and disruptive.

14
Types of Management
1. Process Management:
• A process is a program in execution.
• A Process is an active entity.
• A process needs certain resources, including CPU time, memory, files, and I/O devices to
accomplish its task.
• Simultaneous execution leads to multiple processes. Hence creation, execution and
termination of a process are the most basic functionality of an OS
• If processes are dependent, than they may try to share same resources. thus task of process
synchronization comes to the picture.
• If processes are independent, than a due care needs to be taken to avoid their overlapping in
memory area.
• Based on priority, it is important to allow more important processes to execute first than
others.
15
• States of Process
• A process is in one of the following states:
• New: Newly Created Process (or) being-created
process.
• Ready: After the creation process moves to the
Ready state, i.e. the process is ready for execution.
• Run: Currently running process in CPU (only one
process at a time can be under execution in a single
processor)
• Wait (or Block): When a process requests I/O access.
• Complete (or Terminated): The process completed
its execution.
• Suspended Ready: When the ready queue becomes
full, some processes are moved to a suspended ready
state
• Suspended Block: When the waiting queue becomes
full. 16
• In a multi-programming environment, the OS decides the order in which
processes have access to the processor, and how much processing time each
process has. This function of OS is called Process Scheduling. An Operating
System performs the following activities for Processor Management.
• An operating system manages the processor’s work by allocating various jobs
to it and ensuring that each process receives enough time from the processor to
function properly.
Keeps track of the status of processes. The program which performs this task is
known as a traffic controller. Allocates the CPU that is a processor to a process.
De-allocates processor when a process is no longer required.

https://www.geeksforgeeks.org/functions-of-operating-system/

17
2. 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. When the computer made turn off everything
stored in RAM will be erased automatically.
• In addition to the physical RAM installed in your computer, most modern operating systems
allow your computer to use a virtual memory system. Virtual memory allows your computer
to use part of a permanent storage device (such as a hard disk) as extra memory.
• 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.

18
What is Memory Management?
• In a multiprogramming computer, the Operating System resides in a part of memory,
and the rest is used by multiple processes.
• The task of subdividing the memory among different processes is called Memory
Management.
• Memory management is a method in the operating system to manage operations
between main memory and disk during process execution.
• The main aim of memory management is to achieve efficient utilization of memory.
Why Memory Management is Required?
• Allocate and de-allocate memory before and after process execution.
• To keep track of used memory space by processes.
• To minimize fragmentation issues.
• To proper utilization of main memory.
• To maintain data integrity while executing of process. 19
3. Storage Management
• Storage Management is defined as it refers to the management of the data storage
equipment’s that are used to store the user/computer generated data. Hence it is a tool or set
of processes used by an administrator to keep your data and storage equipment’s safe.
• Storage management is a process for users to optimize the use of storage devices and to
protect the integrity of data for any media on which it resides and the category of storage
management generally contain the different type of subcategories covering aspects such as
security, virtualization and more, as well as different types of provisioning or automation,
which is generally made up the entire storage management software market.
• Storage management key attributes: Storage management has some key attribute which is
generally used to manage the storage capacity of the system. These are given below:
1. Performance
2. Reliability
3. Recoverability
4. Capacity
20
Feature of Storage management:
There is some feature of storage management which is provided for storage
capacity. These are given below:
• Storage management is a process that is used to optimize the use of storage
devices.
• Storage management must be allocated and managed as a resource in order to
truly benefit a corporation.
• Storage management is generally a basic system component of information
systems.
• It is used to improve the performance of their data storage resources.

21
Advantage of storage management:
There are some advantage of storage management which are given below:
• It becomes very simple to manage a storage capacity.
• It generally reduces the time consumption.
• It improves the performance of system.
• In virtualization and automation technologies, it can help an organization
improve its agility.

22
Limitations of storage management:

• Limited physical storage capacity: Operating systems can only manage the physical
storage space that is available, and as such, there is a limit to how much data can be stored.
• Performance degradation with increased storage utilization: As more data is stored, the
system’s performance can decrease due to increased disk access time, fragmentation, and
other factors.
• Complexity of storage management: Storage management can be complex, especially as
the size of the storage environment grows.
• Cost: Storing large amounts of data can be expensive, and the cost of additional storage
capacity can add up quickly.
• Security issues: Storing sensitive data can also present security risks, and the operating
system must have robust security features in place to prevent unauthorized access to this
data.
• Backup and Recovery: Backup and recovery of data can also be challenging, especially if
the data is stored on multiple systems or devices. 23
Protection and Security
• Operating systems use security as a technique to deal with external threats and
maintain the system's proper operation.
• Protection, on the other hand, is a method used in operating systems to manage
risks and keep the system operating correctly.
• The operating system uses password protection to protect user data and similar
other techniques.
• It also prevents unauthorized access to programs and user data by assigning
access right permission to files and directories.
• The owners of information stored in a multiuser or networked computer system
may want to control use of that information, concurrent processes should not
interfere with each other.

24
• What is Security?
• The security systems cover the safety of their system resources (saved data,
memory, disks, etc) across malignant alteration, illegal access, and disparity or
inconsistency.
• The security gives a mechanism (authentication and encryption) to analyze the
user to permit for using the system.
• For example, in a corporation the info is obtained by completely different
workers however, it can’t be obtained by a user that doesn’t exist in this explicit
organization or a user operating in different business enterprises.
• Security is a vital task for a corporation to provide some safety mechanism in
order that no outside user will access the knowledge of the organization.

25
• What is Protection?
• The protection deals with access to the system resources. It determines what
files can be accessed or permeated by a special user.
• The protection of the system should confirm the approval of the process and
users. Due to this, these licensed users and processes will care for the central
processing unit, memory, and alternative sources.
• The protection mechanism ought to provide a path for specifying the controls to
be obligatory, besides how of implementing them.
• An example of protection can be given by security, any organization will have
many departments below which several staff operate. the assorted departments
will share frequent info with one another but not sensitive info. So, completely
different employees have different access rights to the info in step with that they
will access the defined data.
26
Differences between the Security and Protection in Operating Systems
• Operating systems use security as a technique to deal with external threats and
maintain the system’s proper operation. Protection, on the other hand, is a
method used in operating systems to manage risks and keep the system
operating correctly.
• The security measure establishes whether a particular user is permitted access to
the system or not. The protection method, on the other hand, specifies which
users are allowed access to a specific resource.
• A few security measures are adding and deleting users, checking a user’s
authorization, using anti-malware software, etc.

27
Security Protection

Security grants access to specific users of Protection deals with the access to certain
the system only. system resources.

There are external security threats There are internal threats associated with
associated with the system. protection of the system.
Convoluted queries are handled by security
Simple queries are handled in protection.
systems.
Security uses mechanisms like encryption Protection tries to determine the files that
and authentication (also known as could be accessed or permeated by a
certification) are used. special user.

Security implements a process to enforce Protection implements authorization


the data integrity. mechanism.
28
Continue..

Structures

29
Operating System Services
• Operating system is a software that acts as an intermediary between the user and computer
hardware.
• It is a program with the help of which we are able to run various applications. It is the one
program that is running all the time.
• The operating system is a set of special programs that run on a computer system that allows
it to work properly. It controls input-output devices, execution of programs, managing files,
etc.

30
Services of Operating System
• User Interface
• Program execution
• Input Output Operations
• File system manipulation
• Communication between Process
• Error handling/detection
• Resource allocation:
 Memory Management
Process Management
Time Management
• Protection
• Security and Privacy
• Accounting
Fig.1 A view of operating system services.
Note: For Detail Explanation of above System services
https://www.geeksforgeeks.org/operating-system-services/ 31
Continue..
• User Interface: OS provides a user interface. The user interface may be command line user interface or
graphical user interface.
• Program execution: Loading a program into memory and executing the program.
• Input Output Operations: Programs need I/O(Files or I/O devices) fro their execution, so it is the job of the
OS to provide I/O facilities to the running programs.
• File system manipulation: Programs need to read and write files and directories, It is one of the services of OS
to provide a file system having such features and performance characteristics.
• Communication between Process: OS allow exchange of information between processes executing either on
the same computer or on different systems tied together by a network.
• Error handling/detection: OS ensures correct computing by detecting errors in the CPU and memory h/w, in
I/O devices, or in user programs.
• Resource allocation: Allocation of resources to multiple users or multiple jobs running at the same time.
• Protection: Ensuring that all access to system resources is controlled.
• Accounting : Keeping track of record which users use how much and what kinds of computer resources for
account billing or for accumulating usage statistics.

32
System Calls
• A system call is a programmatic way in which a computer program requests a service from the kernel
of the operating system it is executed on.
• Provides the interface between a process and the operating system.
• A system call is a way for programs to interact with the operating system. A computer program
makes a system call when it makes a request to the operating system’s kernel.
• System call provides the services of the operating system to the user programs via Application
Program Interface(API).
• It provides an interface between a process and an operating system to allow user-level processes to
request services of the operating system.
• A system call can be written in high-level languages like C or Pascal or in assembly language.
• System calls are essential for the proper functioning of an operating system, as they provide a
standardized way for programs to access system resources.
• Without system calls, each program would need to implement its own methods for accessing
hardware and system services, leading to inconsistent and error-prone behavior.

33
Types of System Calls
• Process control • File management
 end, abort  create file, delete file
 load, execute  open, close
create process, terminate process  read, write, reposition
get process attributes, set process attributes  get file attributes, set file attributes
 wait for time
 wait event, signal event
 allocate and free memory

34
Continue..
• Device management
 request device, release device • Communications
 read, write, reposition  create, delete communication connection
 get device attributes, set device attributes  send, receive messages
 logically attach or detach devices  transfer status information
• Information maintenance  attach or detach remote devices
get time or date, set time or date
get system data, set system data
get process, file, or device attributes
set process, file, or device attributes

35
Features of System Calls:
• Interface: System calls provide a well-defined interface between user programs and the operating system.
Programs make requests by calling specific functions, and the operating system responds by executing the
requested service and returning a result.
• Protection: System calls are used to access privileged operations that are not available to normal user
programs. The operating system uses this privilege to protect the system from malicious or unauthorized
access.
• Kernel Mode: When a system call is made, the program is temporarily switched from user mode to kernel
mode. In kernel mode, the program has access to all system resources, including hardware, memory, and other
processes.
• Context Switching: A system call requires a context switch, which involves saving the state of the current
process and switching to the kernel mode to execute the requested service. This can introduce overhead, which
can impact system performance.
• Error Handling: System calls can return error codes to indicate problems with the requested service. Programs
must check for these errors and handle them appropriately.
• Synchronization: System calls can be used to synchronize access to shared resources, such as files or network
connections. The operating system provides synchronization mechanisms, such as locks or semaphores, to
ensure that multiple programs can access these resources safely.
36
System Calls Advantages
• Access to hardware resources: System calls allow programs to access hardware resources such as disk drives,
printers, and network devices.
• Memory management: System calls provide a way for programs to allocate and deallocate memory, as well as
access memory-mapped hardware devices.
• Process management: System calls allow programs to create and terminate processes, as well as manage
inter-process communication.
• Security: System calls provide a way for programs to access privileged resources, such as the ability to modify
system settings or perform operations that require administrative permissions.
• Standardization: System calls provide a standardized interface for programs to interact with the operating
system, ensuring consistency and compatibility across different hardware platforms and operating system
versions.

37
System Programs
• System Programming can be defined as the act of
building Systems Software using System Programming
Languages.
• According to Computer Hierarchy, Hardware comes first
then is Operating System, System Programs, and finally
Application Programs.
• Program Development and Execution can be done
conveniently in System Programs. Some of the System
Programs are simply user interfaces, others are complex.
• It traditionally sits between the user interface and system
calls.
• In the context of an operating system, system programs
are nothing but a special software which give us facility
to manage and control the computer’s hardware and
resources.
• It executes the operation fast and helpful in performing
essential opeartion which can’t be handled by application
software .
38
System Programs can be divided into the following categories:
• File Management:
 A file is a collection of specific information stored in the memory of a computer system. File
management is defined as the process of manipulating files in the computer system, its management
includes the process of creating, modifying and deleting files.
Like: create, delete, copy, rename, print, list and directories.
• Status Information :
 Information like date, time amount of available memory, or disk space is asked by some users.
Others providing detailed performance, logging, and debugging information which is more complex.
All this information is formatted and displayed on output devices or printed.
• File Modification :
This is used for modifying the content of files. Files stored on disks or other storage devices, we use
different types of editors. For searching contents of files or perform transformations of files we use
special commands.

39
Continue..
• Programming-Language support :
 For common programming languages, (such as C, C++, Java, Visual Basic and PERL)
 we use Compilers, Assemblers, Debuggers, and interpreters are often provided to the user with the
operating system.
• Program Loading and Execution :
When the program is ready after Assembling and compilation, it must be loaded into memory for
execution.
 A loader is part of an operating system that is responsible for loading programs and libraries. It
provides absolute loaders, relocatable loaders, linkage editors, and Overlay loaders.
• Communications:
Creating virtual connections among processes, users and computer systems.
Allows users to send messages to another user on their screen, User can send e-mail, browsing on
web pages, remote login, the transformation of files from one user to another.

40
Continue..

41
Operating System Structure
What is the Operating System Structure?
• The operating system structure refers to the way in which the various components of an operating system are
organized and interconnected. There are several different approaches to operating system structure, each with
its own advantages and disadvantages.
• An operating system has a complex structure, so we need a well-defined structure to assist us in applying it to
our unique requirements.
• Just as we break down a big problem into smaller, easier-to-solve subproblems, designing an operating system
in parts is a simpler approach to do it. And each section is an Operating System component.
• The approach of interconnecting and integrating multiple operating system components into the kernel can be
described as an operating system structure. As mentioned below, various sorts of structures are used to
implement operating systems.
• This structure is implemented in MS-DOS operating system:
• The MS-DOS operating System is made up of various layers, each with its own set of functions.

42
1. Simple Structure:
• These layers are:
• Application Program
• System Program
• MS-DOS device drivers
• ROM BIOS device drivers
• Simple structure operating systems do not have well-
defined structures and are small, simple, and limited.
• The interfaces and levels of functionality are not well
separated.
• MS-DOS is an example of such an operating system. In
MS-DOS, application programs are able to access the
basic I/O routines. Fig. MS-DOS layer structure
• These types of operating systems cause the entire system
to crash if one of the user programs fails.

43
• Advantages of Simple Structure
• It delivers better application performance because of the few interfaces between the application
program and the hardware.
• It is easy for kernel developers to develop such an operating system.

• Disadvantages of Simple Structure


• The structure is very complicated, as no clear boundaries exist between modules.
• It does not enforce data hiding in the operating system.

44
2. Layered Approach:
• In layered approach , the OS is broken into a number of
layers(levels) each built on top of lower layers.
• Layering has an advantage in the MS-DOS operating system
since all the levels can be defined separately and can interact
with each other when needed.
• It is easier to design, maintain, and update the system if it is
made in layers. So that's why limited systems with less
complexity can be constructed easily using Simple Structure.
• This approach simplifies dubbing and system verification.

Fig. A layered operating system

45
46
2. Kernel Structure:
• A kernel structure is the control module of an operating system. It is the one structure
which loads first and remains in the memory.
• It lies between system program and hardware.
• Kernel uses system calls to perform all its functions like CPU scheduling, memory
management etc.
• Main functions of kernel are:
• It provides mechanism for creation and deletion of processes.
• It provides CPU scheduling, memory management and /O management.
• It provides mechanism for inter-process communication.

47
Types of Operating System
• Operating System is a type of software that works as an interface between the system program and the
hardware.
• An Operating System performs all the basic tasks like managing files, processes, and memory.
• Thus, the operating system acts as the manager of all the resources, i.e. resource manager.
• Thus, the operating system becomes an interface between the user and the machine.
• It is one of the most required software that is present in the device.

• There are several types of Operating Systems many of which are mentioned below:
1. Batch Operating System
2. Time sharing Operating System
3. Distributed Operating System
4. Network Operating System
5. Real-Time Operating System
48
1. Batch Operating System
• This type of operating system does not interact with the computer directly. There is an operator which takes
similar jobs having the same requirement and groups them into batches.
• It is the responsibility of the operator to sort jobs with similar needs.

Fig. Batch Operating System


49
Advantages of Batch Operating System
• It is very difficult to guess or know the time required for any job to complete. Processors of
the batch systems know how long the job would be when it is in the queue.
• Multiple users can share the batch systems.
• The idle time for the batch system is very less.
• It is easy to manage large work repeatedly in batch systems.
Disadvantages of Batch Operating System
• The computer operators should be well known with batch systems.
• Batch systems are hard to debug.
• It is sometimes costly.
• The other jobs will have to wait for an unknown time if any job fails.
Examples of Batch Operating Systems: Payroll Systems, Bank Statements, etc.

50
2. Time-Sharing Operating Systems
• Each task is given some time to execute so that all the tasks work smoothly. Each user gets the time
of the CPU as they use a single system. These systems are also known as Multitasking Systems.
• The task can be from a single user or different users also. The time that each task gets to execute is
called quantum. After this time interval is over OS switches over to the next task.
• The CPU will provide a same time period to each process to complete its task as soon as possible
weather it is a long process or short process.

51
Advantages of Time-Sharing OS
• Each task gets an equal opportunity.
• Fewer chances of duplication of software.
• CPU idle time can be reduced.
• Resource Sharing: Time-sharing systems allow multiple users to share hardware resources such as
the CPU, memory, and peripherals, reducing the cost of hardware and increasing efficiency.
• Improved Productivity: Time-sharing allows users to work concurrently, thereby reducing the
waiting time for their turn to use the computer. This increased productivity translates to more work
getting done in less time.
• Improved User Experience: Time-sharing provides an interactive environment that allows users to
communicate with the computer in real time, providing a better user experience than batch
processing.

52
Disadvantages of Time-Sharing OS
• Reliability problem.
• One must have to take care of the security and integrity of user programs and data.
• Data communication problem.
• High Overhead: Time-sharing systems have a higher overhead than other operating systems due to the need
for scheduling, context switching, and other overheads that come with supporting multiple users.
• Complexity: Time-sharing systems are complex and require advanced software to manage multiple users
simultaneously. This complexity increases the chance of bugs and errors.
• Security Risks: With multiple users sharing resources, the risk of security breaches increases. Time-sharing
systems require careful management of user access, authentication, and authorization to ensure the security of
data and software.

53
3. Distributed Operating System
• These types of operating system is a recent advancement in the world of computer technology and are being
widely accepted all over the world and, that too, at a great pace.
• Various computer interconnected with each other using a shared communication network for the purpose of
sharing their task then it is called distributed OS.
• The major benefit of working with these types of the operating system is that it is always possible that one user
can access the files or software which are not actually present on his system but some other system connected
within this network i.e., remote access is enabled within the devices connected in that network.

54
Advantages of Distributed Operating System
• Failure of one will not affect the other network communication, as all systems are independent of each other.
• Since resources are being shared, computation is highly fast and durable.
• Load on host computer reduces.

Disadvantages of Distributed Operating System


• Failure of the main network will stop the entire communication.
• To establish distributed systems the language is used not well-defined yet.
• These types of systems are not readily available as they are very expensive.
• Not only that the underlying software is highly complex and not understood well yet.

55
4. Network Operating System
• These systems run on a server and provide the capability to manage data, users, groups, security,
applications, and other networking functions.
• N/W OS have a server that connects many other client computers.
• These types of operating systems allow shared access to files, printers, security, applications, and other
networking functions over a small private network.

56
Advantages of Network Operating System
• Highly stable centralized servers.
• Security concerns are handled through servers.
• New technologies and hardware up-gradation are easily integrated into the system.
• Server access is possible remotely from different locations and types of systems.

Disadvantages of Network Operating System


• Servers are costly.
• Maintenance and updates are required regularly.

Examples of Network Operating Systems are :


Microsoft Windows Server 2003, Microsoft Windows Server 2008, UNIX, Linux, Mac OS X, Novell NetWare,
BSD, etc.

57
5. Real-Time Operating System
• These types of OSs serve real-time systems. The time interval required to process and respond to inputs is
very small. This time interval is called response time.
• Real-time systems are used when there are time requirements that are very strict like missile systems, air
traffic control systems, robots, etc.
Types of Real-Time Operating Systems
1. Hard Real-Time Systems
2. Soft Real-Time Systems

58
Advantages of RTOS:
• Quick response
• Task Shifting: The time assigned for shifting tasks in these systems is very less. For example, in older
systems, it takes about 10 microseconds in shifting from one task to another, and in the latest systems, it
takes 3 microseconds.
• Focus on Application: Focus on running applications and less importance on applications that are in the
queue.
• Real-time operating system in the embedded system: Since the size of programs is small, RTOS can also
be used in embedded systems like in transport and others.
• Error Free: These types of systems are error-free.
• Memory Allocation: Memory allocation is best managed in these types of systems.

59
Disadvantages of RTOS :
• Limited Tasks: Very few tasks run at the same time and their concentration is very less on a few applications
to avoid errors.
• Very Costly
• Use heavy system resources: Sometimes the system resources are not so good and they are expensive as
well.
• Complex Algorithms: The algorithms are very complex and difficult for the designer to write on.
• Device driver and interrupt signals: It needs specific device drivers and interrupts signal to respond
earliest to interrupts.
• Thread Priority: It is not good to set thread priority as these systems are very less prone to switching tasks.
Examples of Real-Time Operating Systems are:
Scientific experiments, medical imaging systems, industrial control systems, weapon systems, robots, air
traffic control systems, etc.

60
6. Multi-Programming Operating System

• Multiprogramming Operating Systems can be simply illustrated as more than one program is present
in the main memory and any one of them can be kept in execution. This is basically used for better
execution of resources.
• In a multiprogramming system there are one or more programs loaded in main memory which are
ready to execute.

61
Advantages of Multi-Programming Operating System

• Multi Programming increases the Throughput of the System.


• It helps in reducing the response time.

Disadvantages of Multi-Programming Operating System

• There is not any facility for user interaction of system resources with the system.

62
7. Multi-Tasking Operating System/ Time
sharing
• Multitasking Operating System is simply a multiprogramming Operating System with having facility of a
Round-Robin Scheduling Algorithm. It can run multiple programs simultaneously.
• Each task is given some time to execute, so that all tasks work smoothly. The time that each task gets to execute
is called quantum.

63
Advantages of Multi-Tasking Operating System
• Multiple Programs can be executed simultaneously in Multi-Tasking Operating System.
• It comes with proper memory management.

Disadvantages of Multi-Tasking Operating System


• The system gets heated in case of heavy programs multiple times.

64
8. Multi-Processing Operating System
• Multi-Processing Operating System is a type of Operating System in which more than one
CPU is used for the execution of resources. It betters the throughput of the System.

65
Advantages of Multi-Processing Operating System

• It increases the throughput of the system.


• As it has several processors, so, if one processor fails, we can proceed with another processor.

Disadvantages of Multi-Processing Operating System

• Due to the multiple CPU, it can be more complex and somehow difficult to understand.

66
Reference questions:
1. Define an operating system.
2. List the different types of operating systems.
3. What are the key services provided by an operating system?
4. Name any three types of system programs.
5. Explain the concept of process management in an operating system.
6. Describe the differences between batch systems and time-sharing systems.
7. Demonstrate how memory management works in a multiprogramming environment.
8. Illustrate the structure of a layered operating system.
9. Summarize the purpose of protection and security in operating systems.
10. What is the role of system calls in operating systems?
11. Compare and contrast distributed operating systems and network operating systems.
12. Analyze the advantages and disadvantages of multiprogramming systems.
13. Define the system calls.
14. Describe the purpose of operating system services.
15. Propose improvements to the process management of a time-sharing system.

67
Thank You

You might also like