0% found this document useful (0 votes)
18 views33 pages

Osy Micro

Osy micro project

Uploaded by

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

Osy Micro

Osy micro project

Uploaded by

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

S.H.

JONDHALE POLYTECHNIC

SUBJECT NAME:OPERATINGSYSTEM
DEPARTMENT: COMPUTER
SEMESTER: 5TH
MICROPROJECTTITLE: DETAIL REPORT ON DIFFERENT
TPYES OF OS LISTING THEIR FEATURES.
YEAR: 2024-25
PREPAREDBY:
1. PANKAJ MOHAN PATIL[1541]

UNDER THE GUIDANCE OF: Prof. MR.D.D.SHELKE

1
Maharashtra State Board of Technical Education
Certificate

This is to certify that Mr. Pankaj Mohan Patil Of fifth Semester of


Diploma in computer engineering of Institute S.H.Jondhale
polytechnic has Successfully completed Micro-project work in subject
Operating system for the academic year 2024-2025 as prescribed in the
I-Scheme Curriculum .

Place: Dombivili Enrollment no: 2200440144


Date: Exam seat no:

Signature Signature Signature


Of Of Of
Project guide HOD Principal

Seal of institute

2
ACKNOWLEDGMENT

We wish to express our profound gratitude to our guide Mr.


D.D.Shelke who guided us endlessly in the framing and completion of
the micro project. He guided us on all the main points in that micro
project. We are indebted to his constant encouragement, cooperation,
and help. It was his enthusiastic support that helped us in overcoming
various obstacles in the micro-project. We are also thankful to our
Principal, HOD, faculty members and classmates of department for
extending their support and motivation in the completion of this micro-
project.

Names of Team Members with Roll Nos.


1. Pankaj Mohan Patil [1541]

3
ABSTRACT

Operating system serves as a vital interface between hardware and software,


enabling the execution of programs and management of hardware resources. This
report provides a comprehensive overview of various types of operating systems
(OS), categorizing them into distinct types based on their architecture and
functionality. The primary classifications discussed include:
1. Batch Operating Systems: These systems execute jobs in batches without
user interaction. Key features include job scheduling, automated job
sequencing, and minimal user control during execution.
2. Time-Sharing Operating Systems: These enable multiple users to
interact with the computer simultaneously by dividing CPU time among
users. Features include multitasking, user-friendly interfaces, and efficient
resource management.
3. Distributed Operating Systems: These manage a group of independent
computers and present them as a single coherent system. Key features
encompass resource sharing, fault tolerance, and transparency in resource
access.
4. Network Operating Systems: These support networking capabilities and
allow multiple computers to communicate and share resources. Important
features include network management, security protocols, and file sharing.
5. Real-Time Operating Systems (RTOS): Designed for applications
requiring immediate processing and response, RTOS features include
predictability, high reliability, and task prioritization.
6. Embedded Operating Systems: Found in embedded systems, these are
tailored for specific tasks. Features include resource efficiency, low power
consumption, and minimal user interfaces.
The report further analyzes the strengths and weaknesses of each OS type,
highlighting their applicability in different scenarios. By understanding these
distinctions, organizations can select the appropriate OS that aligns with their
operational needs and technological requirements.

4
ACTION PLAN

Sr. Planned Planned Name of


Wee Details of activity
No. Start date Finish date Responsibe
k
Team
Membes
1 1& Discussion and finalization of the 1/8/24 10/8/24 Pankaj
2 topic.
2 3 Preparation of the abstract 11/8/24 17/8/24 Pankaj

3 4 Literature review 18/8/24 24/8/24 Pankaj

4 5 Submission of micro project 25/8/24 31/8/24 Pankaj


proposal (Annexure I)

5 6 Collection of the information 1/9/24 7/9/24 Pankaj


on the topic.

6 7 Collection of all relevant content / 8/9/24 14/9/24 Pankaj


materials for the execution of the
project.
7 8 Discussion and submission of 15/9/24 21/9/24 Pankaj
outline of the project.

Analysis/execution of collected 22/9/24 28/9/24 Pankaj


8 9 data/information and Preparation of
prototypes/drawings/charts/graphs/
tables/models/circuits/programs etc.

9 10 Compilation of contents of project 29/9/24 5/10/24 Pankaj

10 11 Compilation of weekly progress 6/10/24 12/10/24 Pankaj


report
11 12 Preparation of the project 13/10/24 19/10/24 Pankaj
report (Annexure II)

12 13 Viva Voce / Delivery of 20/10/24 /11/24 Pankaj


presentation.

5
INDEX

Sr.no Topic Pgn.o

1 Introduction 7

2 Requirements analysis and System specifications 9

3 Types of Operating System 10

4 Future Scope 30

5 Conclusion 32

6 Reference 33

6
INTRODUCTION

This detailed report explores the different types of operating systems,


categorizing them based on their architecture, functionality, and intended use.
Each type of OS is designed to address specific challenges and provide unique
features that cater to varying user needs and application environments. From
batch processing systems that optimize job execution to real-time operating
systems that prioritize immediate response, understanding these distinctions is
essential for selecting the right OS for specific tasks. This report will outline the
key characteristics of each OS type, including batch operating systems, time-
sharing systems, distributed systems, network operating systems, real-time
systems, and embedded systems, offering insights into their features, advantages,
and limitations. By analyzing these aspects, the report aims to equip readers with
a comprehensive understanding of operating systems and their practical
implications in today’s technology landscape.
What is an OS(operating System) ?
An operating system (OS) is a crucial software component that serves as an
intermediary between computer hardware and users. It manages hardware
resources, facilitates user interaction, and provides essential services for
application programs. By performing core functions such as process
management, memory management, file system handling, and device
management, operating systems ensure the efficient execution of applications and
the smooth functioning of computer systems. With the advent of diverse
computing environments—from personal computers to embedded systems—
various types of operating systems have emerged, each tailored to meet specific
requirements and use cases.
An operating system (OS) is fundamentally responsible for managing a
computer's hardware and software resources. It acts as a bridge between the user
and the hardware, enabling efficient and effective utilization of system
resources. Here are some key components and functions of an operating system:
Key Components of an Operating System
1. Kernel: The core part of the OS that manages system resources and
communication between hardware and software. It operates in a

7
privileged mode, allowing it to execute tasks that regular applications
cannot.
2. User Interface: This can be either command-line (CLI) or graphical
(GUI). The user interface allows users to interact with the computer,
execute commands, and run applications.
3. File System: The OS organizes and manages data on storage devices
through a file system, which provides a way to create, read, write, and
organize files.
4. Device Drivers: These are specific software components that allow the
OS to communicate with hardware peripherals such as printers, graphics
cards, and storage devices.
5. System Utilities: These are programs that perform maintenance tasks for
the computer, such as disk management, system monitoring, and
configuration settings.
Core Functions of an Operating System
1. Process Management: The OS manages the execution of processes
(running programs), including process scheduling, creation, and
termination. It ensures that each process gets the necessary CPU time
while maintaining system stability.
2. Memory Management: This function involves tracking each byte in a
computer's memory, allocating memory to processes when needed, and
reclaiming memory when processes are finished. The OS must efficiently
manage both RAM and virtual memory.
3. File Management: The OS oversees the creation, deletion, and access of
files and directories, ensuring data is organized and secure. It also handles
permissions to control access to files.
4. Security and Access Control: Operating systems enforce security
measures to protect data and resources from unauthorized access. This
includes user authentication, encryption, and access control policies.
5. Networking: Many modern operating systems provide networking
capabilities, allowing computers to connect and communicate over local
and wide area networks. This includes managing network protocols and
ensuring secure data transmission.

8
REQUIREMENTANALYSISANDSYSTEMSPECIFICATION

Resource name Specification Quantity

Minimum 4 GB
Laptop RAM,50GB available 1
storage,

Operating System Linux (ubuntu) 1

Documentation Tool MS-Word 1

Operating system
textbook Nirali Prakashan 1

9
TYPES OF OPERATING SYSTEM

1.Batch Operating System.


Batch processing was very popular in the 1970s. The jobs were executed in
batches. People used to have a single computer known as a mainframe. Users
using batch operating systems do not interact directly with the computer. Each
user prepares their job using an offline device like a punch card and submitting it
to the computer operator. Jobs with similar requirements are grouped and
executed as a group to speed up processing. Once the programmers have left their
programs with the operator, they sort the programs with similar needs into
batches.
The batch operating system
grouped jobs that perform similar
functions. These job groups are
treated as a batch and executed
simultaneously. A computer system with this
operating system performs the
following batch processing
activities:
1. A job is a single unit that consists of a preset sequence of commands, data,
and programs.
2. Processing takes place in the order in which they are received, i.e., first
come, first serve.
3. These jobs are stored in memory and executed without the need for manual
information.
4. When a job is successfully run, the operating system releases its memory.

KEY FEATURES
Batch operating systems are characterized by several key features that make them
efficient for processing large volumes of jobs without user interaction. Here are
the main features:
1. Job Scheduling:

10
o Automatic Job Queuing: Jobs are collected and queued based on
specific criteria such as priority, resource requirements, or arrival
time.
o Sequential Execution: Jobs are executed one after another in the
order they are scheduled, which maximizes resource utilization.
2. Spooling (Simultaneous Peripheral Operations Online):
o Overlap of I/O and Processing: While one job is being executed, the
next job can be read from the input device or output can be written
to a printer, minimizing idle time.
o Buffering: Input and output operations are managed through buffers,
allowing for efficient data transfer.
3. No Direct User Interaction:
o Job Submission and Output Retrieval: Users submit jobs (often
using Job Control Language, JCL) and retrieve the results later, with
no need for interaction during processing.
o Unattended Operation: The system operates autonomously, allowing
for batch jobs to be processed without user supervision.
4. Job Control Language (JCL):
o Specification of Job Requirements: Users define job parameters,
such as resource allocation and execution commands, using a
scripting language that the batch system can understand.
o Flexible Configuration: JCL allows users to customize job execution
based on their needs.
5. Resource Management:
o Efficient Use of CPU and Memory: The OS optimizes the allocation
of CPU time and memory to ensure that jobs run efficiently.
o Minimized Idle Time: By processing jobs back-to-back, batch
systems keep system resources actively engaged.
6. High Throughput:

11
o Maximized Job Execution: The design of batch systems allows for a high
number of jobs to be processed in a given timeframe, enhancing overall
throughput.
7. Error Handling:
o Logging and Reporting: Errors encountered during job execution
can be logged, and reports generated for review after processing.
o Job Recovery: Some systems include features for recovering from
certain types of errors without requiring complete job resubmission.
8. Performance Monitoring:
o System Utilization Metrics: Batch systems often include tools for
monitoring resource usage and performance, enabling
administrators to optimize job scheduling.

2.Multiprogramming in Operating System


As the name suggests, Multiprogramming means more than one program can be
active at the same time. Before the operating system concept, only one program
was to be loaded at a time and run. These systems were not efficient as the CPU
was not used efficiently. For example, in a single-tasking system, the CPU is not
used if the current program waits for some input/output to finish. The idea of
multiprogramming is to assign CPUs to other processes while the current process
might not be finished. This has the below advantages.
1) The user gets the feeling that he/she can run multiple applications on a single
CPU even if the CPU is running one process at a time.
2) CPU is utilized better
All modern operating systems like MS
Windows, Linux, etc are
multiprogramming operating systems.

12
KEY FEATURES
Multiprogramming operating systems are designed to efficiently manage and
execute multiple processes simultaneously. Here are the key features that define
multiprogramming OS:
1. Multiple Process Loading:
o Concurrent Execution: Allows multiple programs to be loaded into
memory and executed simultaneously, ensuring that the CPU can
work on multiple tasks at once.
2. Process Scheduling:
o Scheduling Algorithms: Utilizes various algorithms (e.g., round-
robin, priority-based, shortest job first) to determine the order in
which processes access the CPU, optimizing CPU utilization and
responsiveness.
3. Context Switching:
o State Management: Supports quick switching between processes by
saving and restoring the state (context) of processes. This allows the
OS to pause one process and resume another without losing
information.
4. Efficient Resource Management:
o Memory Management: Implements techniques such as paging and
segmentation to allocate memory efficiently among multiple
processes, ensuring that they can coexist without conflicts.
o I/O Operation Overlap: Allows I/O operations to occur
simultaneously with CPU processing, reducing idle times for both
the CPU and devices.
5. Inter-Process Communication (IPC):
o Communication Mechanisms: Provides methods for processes to
communicate and synchronize with each other (e.g., message
passing, shared memory), facilitating collaboration among
concurrently running processes.
6. Dynamic Allocation of Resources:

13
o Adaptability: The OS dynamically allocates CPU time, memory, and
I/O resources based on process needs, improving responsiveness and
efficiency.
7. Error Handling and Recovery:
o Fault Tolerance: Manages errors and exceptions effectively,
allowing processes to recover or be terminated without crashing the
entire system.
8. User Experience:
o Enhanced Responsiveness: Users experience quicker response times
as the system can switch to another process while one is waiting for
I/O, making the overall system feel more responsive.
9. Process Prioritization:
o Priority Levels: Supports the assignment of priority levels to
processes, ensuring that critical tasks receive the necessary CPU
time ahead of less important ones.
10.High Throughput:
o Increased Job Completion Rate: The ability to run multiple
processes simultaneously leads to a higher overall number of
completed tasks in a given period.

3.Multi-Tasking Operating System


Multitasking operating systems allow multiple users to perform multiple tasks at
the same time. The allocation of system resources such as input/output
devices, CPU and memory among processes can be easily managed by multi-
tasking operating system. There are various states through which
a processor passes to complete particular or multiple executions. Multitasking is
the ability of an OS to execute more than one task simultaneously
on a CPU machine as shown in the below diagram.
Types of Multi-Tasking Operating System
Two types of Multi-Tasking Operating System available as shown below:

14
• Pre-emptive Multi-Tasking Operating
System: In pre-emptive multitasking, the
operating system can initiate a context
switching from the running process to another
process. In other words, the operating system
allows stopping the execution of the currently
running process and allocating the CPU to
some other process. The OS uses some
criteria to decide for how long a process
should execute before allowing another
process to use the operating system. The mechanism of taking control of
the operating system from one process and giving it to another process is
called pre-emption. Here are some Examples UNIX, Windows 95,
Windows NT operating system.
• Non-pre-emptive Multi-Tasking Operating System: Non-pre-emptive
Multi-Tasking Operating System is also known as cooperative
multitasking, this operating system never initiates context switching from
the running process to another process. A context switch occurs only when
the processes voluntarily yield control periodically or when idle or
logically blocked to allow multiple applications to execute simultaneously.
Also, in this multitasking, all the processes cooperate for the scheduling
scheme to work. Example – Macintosh OS version 8.0-9.2.2 and Windows
3.x operating system.
KEY FEATURES
Multitasking operating systems allow multiple tasks or processes to run
concurrently, improving resource utilization and user experience. Here are the
key features of multitasking OS:
1. Concurrent Process Execution:
o Simultaneous Running: Multiple processes can run at the same time,
making efficient use of CPU resources and improving overall system
responsiveness.
2. Time-Slicing:

15
o CPU Time Allocation: The OS allocates small time slices to each
process, allowing it to switch between tasks rapidly. This gives the
illusion of simultaneous execution, even on single-core processors.
3. Context Switching:
o State Management: The OS saves the state of a currently running
process and loads the state of the next process to be executed. This
allows for seamless transitions between tasks.
4. Process Prioritization:
o Priority Levels: Supports assigning priority levels to processes,
ensuring that more critical tasks receive CPU time before less
important ones, optimizing performance based on user needs.
5. Inter-Process Communication (IPC):
o Collaboration Between Processes: Provides mechanisms for
processes to communicate and synchronize with each other (e.g.,
message queues, shared memory), facilitating cooperative
multitasking.
6. Memory Management:
o Efficient Memory Allocation: The OS dynamically allocates and
manages memory for multiple processes, often using techniques like
paging and segmentation to keep processes isolated yet accessible.
7. User Interface:
o Graphical User Interface (GUI): Many multitasking OS offer user-
friendly interfaces that allow users to easily switch between tasks,
view active applications, and manage system resources.
8. Background Processing:
o Support for Background Tasks: Users can run applications in the
background while interacting with others, allowing for tasks like file
downloads or system updates to occur without interrupting the user
experience.
9. Robustness and Stability:

16
o Error Handling: Multitasking OS are designed to manage errors in
individual processes without crashing the entire system, improving
reliability and stability.
10.Resource Sharing:
o Efficient Use of Resources: Multiple processes can share resources
like memory, CPU, and I/O devices effectively, enhancing overall
system performance.

4. Multi-Processing Operating System


A multiprocessing operating system is defined as a type of operating system that
makes use of more than one CPU to improve performance. Multiple processors
work parallelly in multi-processing operating systems to perform the given task.
All the available processors are connected to peripheral devices, computer buses,
physical memory, and clocks. The main aim of the multi-processing operating
system is to increase the speed of execution of the system. The use of a
multiprocessing operating system improves the overall performance of the
system. For example, UNIX, LINUX, and Solaris are the most widely used multi-
processing operating system.
The below diagram describes the working of multi-processing operating systems.

1. Symmetrical Multiprocessing Operating System


In a Symmetrical multiprocessing operating system, each processor executes the
same copy of operating system every time. Each process makes its own decisions
and works according to all other process to make sure that system works
efficiently. With the help of CPU scheduling algorithms, the task is assigned to

17
the CPU that has least burden.
Symmetrical multiprocessing operating
system is also known as “Shared
Everything System” because all the
processors share memory and input-
output bus. Below image describes about
symmetrical multiprocessing operating
system.
2. Asymmetrical Multiprocessing Operating System
In Asymmetrical multiprocessing operating system one processor acts as a master
whereas remaining all processors act a slaves. Slave processors are assigned with
ready to execute processes by the master processor. A ready queue is being
maintained by master processor to provides with processes for slaves. In
multiprocessing operating system a schedular is created by master process that
assigns processes to be executed to slave processors. Below diagram describes
about the asymmetrical multiprocessing operating system.

KEY FEATURES
Multiprocessing operating systems are designed to manage and utilize multiple
processors (CPUs) within a single system, allowing for improved performance
and efficiency. Here are the key features of multiprocessing OS:
1. Multiple CPUs:
o Simultaneous Execution: Supports multiple processors working on
different tasks simultaneously, which enhances overall system
throughput and performance.
2. Load Balancing:

18
o Even Distribution of Tasks: The OS distributes processes and threads
evenly across processors to optimize CPU utilization and avoid
bottlenecks, ensuring that no single CPU is overwhelmed while
others remain idle.
3. Parallel Processing:
o Task Parallelism: Enables different tasks to be processed in parallel,
improving execution speed for applications that can take advantage
of concurrent processing.
4. Shared Memory Architecture:
o Efficient Communication: Processes can access shared memory
locations, facilitating fast communication and data sharing between
processes running on different CPUs.
5. Inter-Process Communication (IPC):
o Coordination Between Processes: Provides mechanisms for
processes running on different processors to communicate and
synchronize their actions, enhancing cooperation and coordination.
6. Scalability:
o Support for Additional Processors: The architecture allows for easy
addition of more processors to improve performance, making it
scalable according to workload demands.
7. Fault Tolerance:
o Redundancy and Recovery: If one processor fails, the OS can
reallocate tasks to other functioning processors, enhancing system
reliability and minimizing downtime.
8. Thread Management:
o Support for Multithreading: Allows processes to be split into
multiple threads that can run concurrently on different CPUs,
improving resource utilization and responsiveness.
9. Resource Management:

19
o Efficient Resource Allocation: The OS manages CPU, memory, and
I/O resources across multiple processors to ensure optimal
performance and avoid resource contention.
10.Complex Scheduling:
o Advanced Scheduling Algorithms: Implements sophisticated
scheduling algorithms to determine which process or thread should
execute on which processor, considering factors like priority and
workload.

5. Time-shared operating system


A time-shared operating system uses CPU scheduling and multi-programming to
provide each user with a small portion of a shared computer at once. Each user
has at least one separate program in memory. A program is loaded into memory
and executes, it performs a short period of time either before completion or to
complete I/O. This short period of time during which the user gets the attention
of the CPU is known as time slice, time slot, or quantum. It is typically of the
order of 10 to 100 milliseconds. Time-shared operating systems are more
complex than
multiprogrammed operating
systems. In both, multiple jobs
must be kept in memory
simultaneously, so the system
must have memory
management and security. To
achieve a good response time,
jobs may have to swap in and
out of disk from the main
memory which now serves as a
backing store for the main memory. A common method to achieve this goal is
virtual memory, a technique that allows the execution of a job that may not be
completely in memory.
In the above figure the user 5 is active state but user 1, user 2, user 3, and user 4
are in a waiting state whereas user 6 is in a ready state.

20
1. Active State – The user’s program is under the control of the CPU. Only
one program is available in this state.
2. Ready State – The user program is ready to execute but it is waiting for its
turn to get the CPU. More than one user can be in a ready state at a time.
3. Waiting State – The user’s program is waiting for some input/output
operation. More than one user can be in a waiting state at a time.
KEY FEATURES
1. Multitasking:
o Supports multiple processes running concurrently, allowing users to
execute several applications at once.
2. Time-Slicing:
o Divides CPU time into small time slots assigned to each active
process, ensuring fair CPU allocation and quick responses.
3. Interactive User Interfaces:
o Provides user-friendly interfaces (often graphical) that allow users
to interact easily with applications, promoting immediate feedback.
4. Dynamic Resource Allocation:
o Allocates system resources (CPU, memory) based on current needs,
optimizing performance and responsiveness.
5. Advanced Process Scheduling:
o Utilizes sophisticated scheduling algorithms to determine the order
of process execution, maximizing efficiency and responsiveness.
6. User Authentication and Security:
o Implements security measures to protect user data and manage
access, ensuring secure and isolated user sessions.
7. Inter-Process Communication (IPC):
o Facilitates communication between processes, enabling them to
synchronize and cooperate effectively.
8. Support for Multiple Users:

21
o Allows concurrent access by multiple users, enabling them to share
resources while maintaining individual sessions.
9. Job Control Language (JCL):
o Often includes a scripting language for defining job parameters and
managing resource allocation, simplifying user interaction.
10.System Monitoring and Performance Metrics:
o Provides tools for monitoring system performance and resource
usage, assisting administrators in managing the system effectively.

6. What is a Distributed Operating System?


In a Distributed Operating System, multiple CPUs are utilized, but for end-users,
it appears as a typical centralized operating system. It enables the sharing of
various resources such as CPUs, disks, network interfaces, nodes, and computers
across different sites, thereby expanding the available data within the entire
system.
Effective communication channels like high-speed buses and telephone lines
connect all processors, each equipped with its own local memory and other
neighboring processors.
Due to its characteristics, a distributed operating system is classified as a loosely
coupled system. It encompasses multiple computers, nodes, and sites, all
interconnected through LAN/WAN lines. The ability of a Distributed OS to share
processing resources and I/O files while providing users with a virtual machine
abstraction is an important feature.
The diagram below illustrates the structure of a distributed operating system:

22
KEY FEATURES
Distributed operating systems (DOS) offer a range of features that facilitate the
management of a collection of independent computers, making them work
together as a cohesive unit. Here are the key features:
1. Transparency:
o Location Transparency: Users can access resources without needing
to know their physical locations.
o Access Transparency: Provides a uniform way to access resources,
regardless of whether they are local or remote.
o Failure Transparency: The system masks failures, allowing
processes to continue without interruption.
2. Resource Sharing:
o Shared Resources: Enables users to access and share resources (files,
printers, etc.) across the network, promoting collaboration and
efficiency.
3. Scalability:
o Easily Expandable: The system can grow by adding more nodes
without major reconfiguration, accommodating increasing
workloads seamlessly.
4. Concurrency:
o Simultaneous Execution: Supports multiple processes running at the
same time on different machines, improving overall system
performance.
5. Inter-Process Communication (IPC):
o Communication Mechanisms: Facilitates communication between
processes on different nodes through methods like message passing
and remote procedure calls (RPC).
6. Distributed File System:
o Unified Access: Allows users to interact with files stored on various
machines as if they were local, providing a consistent file
management experience.

23
7. Fault Tolerance:
o Redundancy and Recovery: Designed to handle failures gracefully,
with mechanisms in place to recover from hardware or software
issues without significant downtime.
8. Load Balancing:
o Workload Distribution: Dynamically allocates tasks across the
available nodes to optimize resource utilization and prevent
bottlenecks.
9. Security:
o Access Control: Implements security protocols to protect data and
resources across the network, ensuring that only authorized users
have access.
10.Centralized and Decentralized Models:
o Architectural Flexibility: Can be organized in various models
(centralized, decentralized, or hybrid), allowing for diverse
application needs and resource management strategies.

7. Real-Time Operating System (RTOS)


A real-time operating system (RTOS) is a special kind of operating system
designed to handle tasks that need to be completed quickly and on time. Unlike
general-purpose operating systems (GPOS), which are good at multitasking and
user interaction, RTOS focuses on doing things in real time.
The idea of real-time computing has been around for many years. The first RTOS
was created by Cambridge University in the 1960s. This early system allowed
multiple processes to run at the same time, each within strict time limits.
RTOS is essential in systems that require real-time task scheduling.
Types of Real-Time Operating System
The real-time operating systems can be of 3 types –

24
Hard Real-Time Operating
System
These operating systems
guarantee that critical tasks are
completed within a range of
time. For example, a robot is
hired to weld a car body. If the
robot welds too early or too late,
the car cannot be sold, so it is a
hard real-time system that
requires complete car welding
by the robot hardly on time., scientific experiments, medical imaging systems,
industrial control systems, weapon systems, robots, air traffic control systems,
etc.
Soft Real-Time Operating System
This operating system provides some relaxation in the time limit. For example –
Multimedia systems, digital audio systems, etc. Explicit, programmer-defined,
and controlled processes are encountered in real-time systems. A separate process
is changed by handling a single external event. The process is activated upon the
occurrence of the related event signaled by an interrupt.
Multitasking operation is accomplished by scheduling processes for execution
independently of each other. Each process is assigned a certain level of priority
that corresponds to the relative importance of the event that it services. The
processor is allocated to the highest-priority processes. This type of schedule,
called, priority-based preemptive scheduling is used by real-time systems.
Firm Real-time Operating System
RTOS of this type have to follow deadlines as well. In spite of its small impact,
missing a deadline can have unintended consequences, including a reduction in
the quality of the product. Example: Multimedia applications.
KEY FEATURES
Real-time operating systems (RTOS) are designed to serve real-time applications
that require immediate processing and timely response. Here are the key features
that define an RTOS:

25
1. Deterministic Behavior:
o Predictable Response Times: RTOS provides guaranteed response
times for tasks, ensuring that operations occur within strict timing
constraints.
2. Task Prioritization:
o Priority-Based Scheduling: Supports task prioritization, allowing
critical tasks to execute before less important ones. This is crucial
for meeting deadlines in real-time applications.
3. Low Latency:
o Fast Context Switching: Minimizes the time it takes to switch
between tasks, reducing latency and ensuring timely responses to
external events.
4. Concurrency:
o Multitasking Capability: Manages multiple tasks concurrently,
allowing simultaneous execution of high-priority and low-priority
tasks.
5. Resource Management:
o Efficient Resource Allocation: Allocates CPU time, memory, and
other resources effectively to meet real-time constraints and
maintain system performance.
6. Inter-Task Communication:
o Synchronization Mechanisms: Provides mechanisms (e.g.,
semaphores, message queues) for tasks to communicate and
synchronize with each other, ensuring coordinated execution.
7. Reliability and Stability:
o Fault Tolerance: Designed to handle errors gracefully, ensuring
system stability even in the presence of faults, which is critical for
safety in real-time applications.
8. Minimal Interrupt Handling:
o Efficient Interrupt Management: Prioritizes and manages interrupts
efficiently to ensure that high-priority tasks are serviced promptly.

26
9. Real-Time Clock:
o Timing Mechanism: Often includes a real-time clock for scheduling
tasks and tracking time-related events accurately.
10.Task Management:
o Task Creation and Termination: Provides efficient mechanisms for
creating, terminating, and managing tasks to maintain performance
and meet deadlines.

8. Clustered Operating System


Cluster systems are similar to parallel systems because both systems use multiple
CPUs. The primary difference is that clustered systems are made up of two or
more independent systems linked together. They have independent computer
systems and a shared storage media, and all systems work together to complete
all tasks. All cluster nodes use two different approaches to interact with one
another, like message passing interface (MPI) and parallel virtual machine
(PVM).
Cluster operating systems are
combination
of software and hardware clusters.
Hardware clusters aid in the sharing
of high-performance disks among all
computer systems, while software
clusters give a better environment for
all systems to operate. A cluster
system consists of various nodes,
each of which contains its cluster
software. The cluster software is
installed on each node in the clustered system, and it monitors the cluster system
and ensures that it is operating properly. If one of the clustered system's nodes
fails, the other nodes take over its storage and resources and try to restart.
Cluster components are generally linked via fast area networks, and each node
executing its instance of an operating system. In most cases, all nodes share the
same hardware and operating system, while different hardware or different
operating systems could be used in other cases. The primary purpose of using a

27
cluster system is to assist with weather forecasting, scientific computing, and
supercomputing systems.
KEY FEATURES
1. Resource Sharing:
o Allows multiple nodes to share resources (CPU, memory, storage)
efficiently, enhancing overall system performance.
2. Load Balancing:
o Distributes workloads evenly across nodes to prevent any single
node from becoming overloaded, optimizing resource utilization.
3. High Availability:
o Ensures continuous operation by allowing other nodes to take over
tasks if one node fails, minimizing downtime and improving
reliability.
4. Scalability:
o Supports easy addition of new nodes to the cluster without
significant reconfiguration, accommodating increasing workloads.
5. Inter-Node Communication:
o Facilitates efficient communication between nodes, enabling
coordinated operations and resource sharing for improved
performance.
6. Centralized Management:
o Provides unified tools for managing the entire cluster from a single
interface, simplifying administration and monitoring tasks.
7. Data Redundancy:
o Implements redundancy mechanisms (e.g., replication, mirroring) to
protect against data loss and ensure data integrity.
8. Distributed Job Scheduling:
o Employs intelligent scheduling algorithms to optimize the allocation
of tasks across nodes based on their availability and load.
9. Clustered File Systems:
28
o Includes file systems that allow multiple nodes to access shared data
concurrently while maintaining data consistency and integrity.
10.Parallel Processing:
o Supports the execution of multiple tasks simultaneously across
different nodes, enhancing performance for compute-intensive
applications.

29
FUTURE SCOPE
The landscape of operating systems is continuously evolving, driven by
advancements in technology and changing user needs. Here are some key areas
where the future scope of operating systems is likely to expand:
1. Cloud Computing Integration:
o Seamless Cloud Services: Future OS will increasingly integrate with
cloud services, offering users a unified experience across local and
cloud-based resources, enhancing scalability and flexibility.
2. Edge Computing:
o Real-Time Processing: With the growth of IoT devices, operating
systems will need to support edge computing, enabling real-time
data processing closer to the source of data generation, reducing
latency.
3. AI and Machine Learning:
o Intelligent Resource Management: Operating systems will
incorporate AI and machine learning algorithms to optimize
resource allocation, automate system management, and improve
performance based on user behavior patterns.
4. Enhanced Security:
o Robust Security Features: As cyber threats evolve, future OS will
focus on implementing advanced security measures, including AI-
driven threat detection, secure boot processes, and improved user
authentication methods.
5. Virtualization and Containerization:
o Efficient Resource Utilization: The adoption of virtualization and
containerization technologies will continue to grow, allowing for
more efficient resource usage and better isolation of applications,
enhancing portability and scalability.
6. User-Centric Design:
o Personalized Experiences: Future operating systems will prioritize
user experience, utilizing personalization features that adapt to
individual user preferences and needs, enhancing usability.
30
7. Quantum Computing Support:
o New Paradigms: As quantum computing develops, operating
systems will need to accommodate new architectures and
programming models, enabling users to leverage quantum
capabilities alongside classical computing.
8. Real-Time Processing Capabilities:
o Increased Demand for Real-Time Applications: With the rise of
applications requiring real-time processing (e.g., autonomous
vehicles, industrial automation), future OS will need to enhance real-
time scheduling and resource management.
9. Interoperability and Cross-Platform Support:
o Unified Experiences Across Devices: Future OS will focus on
interoperability, allowing seamless communication and
collaboration between different devices and platforms, enhancing
the user experience across ecosystems.
10.Energy Efficiency:
o Sustainable Computing: Operating systems will need to address
energy consumption more effectively, optimizing resource usage to
minimize the environmental impact, particularly in mobile and
embedded systems.

31
CONCLUSION
In conclusion, operating systems (OS) are fundamental components of modern
computing, serving as the backbone for hardware management and providing
essential services for applications. This report has explored various types of
operating systems—each designed to address specific requirements and use
cases.
1. Batch Operating Systems optimize processing by executing jobs in
groups, reducing idle time and improving efficiency.
2. Multiprogramming Operating Systems enhance CPU utilization by
allowing multiple processes to share resources concurrently.
3. Multitasking Operating Systems provide an interactive user experience by
enabling users to run multiple applications simultaneously, ensuring
responsiveness.
4. Real-Time Operating Systems are critical for applications requiring
deterministic responses, ensuring that tasks are completed within strict
timing constraints.
5. Distributed Operating Systems manage clusters of interconnected
computers, facilitating resource sharing and improving fault tolerance.
6. Clustered Operating Systems leverage multiple machines to enhance
performance and availability, allowing seamless operation even in the
event of node failures.
7. Time-Sharing Operating Systems allow multiple users to access system
resources simultaneously, ensuring equitable access and efficient task
management.
Each type of operating system incorporates unique features tailored to its
specific environment and user needs, from enhanced security measures and
resource management to support for real-time processing and user-friendly
interfaces.As technology continues to evolve, so too will operating systems,
adapting to meet the demands of emerging applications and new computing
paradigms. Understanding the characteristics and functionalities of different OS
types is crucial for selecting the appropriate system for various applications,
ensuring optimal performance and user satisfaction in an increasingly complex
digital landscape.

32
REFERENCE

● www.google.com
● www.studoc.com
● www.greeksforgreeks.com
● www.scrib.com
● www.wordpress.com

33

You might also like