0% found this document useful (0 votes)
195 views37 pages

UNIT 1 Operating System Concept

An operating system acts as an interface between computer hardware and users, managing processes and resources to provide an efficient environment for users to run programs. It performs basic tasks like managing memory, files, devices and coordinating software. Common operating systems include Linux, Windows, MacOS, and embedded systems are used in devices like phones, cars and IoT.

Uploaded by

Devang Gondaliya
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
Download as pdf or txt
0% found this document useful (0 votes)
195 views37 pages

UNIT 1 Operating System Concept

An operating system acts as an interface between computer hardware and users, managing processes and resources to provide an efficient environment for users to run programs. It performs basic tasks like managing memory, files, devices and coordinating software. Common operating systems include Linux, Windows, MacOS, and embedded systems are used in devices like phones, cars and IoT.

Uploaded by

Devang Gondaliya
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
Download as pdf or txt
Download as pdf or txt
You are on page 1/ 37

OPERATING SYSTEM CONCEPT

UNIT 1 Operating System Concept


1.1 Evolution Of Operating System & History
1.2 Need Of an Operating System
1.3 Single User & Multi User Operating System
1.4 Elements Of an Operating System
1.5 Operating System as a Resource Manager

Operating System can be defined as an interface between user and the


hardware. It provides an environment to the user so that, the user can perform
its task in convenient and efficient way.

The Operating System Tutorial is divided into various parts based on its
functions such as Process Management, Process Synchronization, Deadlocks
and File Management.

An Operating System (OS) is an interface between a computer user and


computer hardware. An operating system is a software which performs all the
basic tasks like file management, memory management, process
management, handling input and output, and controlling peripheral devices
such as disk drives and printers.

An operating system is software that enables applications to interact with a


computer's hardware. The software that contains the core components of the
operating system is called the kernel.

The primary purposes of an Operating System are to enable applications


(software’s) to interact with a computer's hardware and to manage a system's
hardware and software resources.

Some popular Operating Systems include Linux Operating System, Windows


Operating System, VMS, OS/400, AIX, z/OS, etc. Today, Operating systems
is found almost in every device like mobile phones, personal computers,
mainframe computers, automobiles, TV, Toys etc.

Definitions

We can have a number of definitions of an Operating System. Let's go through


few of them:
An Operating System is the low-level software that supports a computer's basic
functions, such as scheduling tasks and controlling peripherals.
We can refine this definition as follows:

1
OPERATING SYSTEM CONCEPT
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.
Following is another definition taken from Wikipedia:
An operating system (OS) is system software that manages computer hardware,
software resources, and provides common services for computer programs.

Operating System Definition and Function

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.

An Operating System can be defined as an interface between user and hardware.


It is responsible for the execution of all the processes, Resource
Allocation, CPU management, File Management and many other tasks.
The purpose of an operating system is to provide an environment in which a user
can execute programs in convenient and efficient manner.

Architecture

We can draw a generic architecture diagram of an Operating System which is as


follows:

2
OPERATING SYSTEM CONCEPT

Structure of a Computer System

A Computer System consists of:

o Users (people who are using the computer)


o Application Programs (Compilers, Databases, Games, Video player,
Browsers, etc.)
o System Programs (Shells, Editors, Compilers, etc.)
o Operating System (A special program which acts as an interface between
user and hardware)
o Hardware (CPU, Disks, Memory, etc)

3
OPERATING SYSTEM CONCEPT

1.1 Evolution Of Operating System & History


History of the Operating System
Operating System

The operating system is a system program that serves as an interface between the
computing system and the end-user. Operating systems create an environment
where the user can run any programs or communicate with software or
applications in a comfortable and well-organized way.

Furthermore, an operating is a software program that manages and controls the


execution of application programs, software resources and computer hardware. It
also helps manage the software/hardware resource, such as file management,
memory management, input/ output and many peripheral devices like a disk
drive, printers, etc. These are the popular operating system: Linux OS, Windows
OS, Mac OS, VMS, OS/400 etc.

4
OPERATING SYSTEM CONCEPT

Functions of Operating System


o Processor management
o Act as a Resource Manager
o Memory Management
o File Management
o Security
o Device Management
o Input devices / Output devices
o Deadlock Prevention
o Time Management
o Coordinate with system software or hardware

5
OPERATING SYSTEM CONCEPT
Types of Operating System
1. Batch Operating System
2. Time-Sharing Operating System
3. Embedded Operating System
4. Multiprogramming Operating System
5. Network Operating System
6. Distributed Operating System
7. Multiprocessing Operating System
8. Real-Time Operating System

1.Batch Operating System


In Batch Operating System, there is no direct interaction between user and
computer. Therefore, the user needs to prepare jobs and save offline mode to
punch card or paper tape or magnetic tape. After creating the jobs, hand it over to
the computer operator; then the operator sort or creates the similar types of
batches like B2, B3, and B4. Now, the computer operator submits batches into
the CPU to execute the jobs one by one. After that, CPUs start executing jobs,
and when all jobs are finished, the computer operator provides the output to the
user.
Time-Sharing Operating System
It is the type of operating system that allows us to connect many people located
at different locations to share and use a specific system at a single time. The time-
sharing operating system is the logical extension of the multiprogramming
through which users can run multiple tasks concurrently. Furthermore, it provides
each user his terminal for input or output that impacts the program or processor
currently running on the system. It represents the CPU's time is shared between
many user processes. Or, the processor's time that
is shared between multiple users simultaneously
termed as time-sharing.

6
OPERATING SYSTEM CONCEPT

Embedded Operating System


The Embedded operating system is the specific purpose operating system used in
the computer system's embedded hardware configuration. These operating
systems are designed to work on dedicated devices like automated teller machines
(ATMs), airplane systems, digital home assistants, and the internet of things (IoT)
devices.

Multiprogramming Operating System


Due to the CPU's underutilization and the waiting for I/O resource till that CPU
remains idle. It shows the improper use of system resources. Hence, the operating
system introduces a new concept that is known as multiprogramming.
A multiprogramming operating system refers to the concepts wherein two or
7
OPERATING SYSTEM CONCEPT
more processes or programs activate simultaneously to execute the processes one
after another by the same computer system. When a program is in run mode and
uses CPU, another program or file uses I/O resources at the same time or waiting
for another system resources to become available. It improves the use of system
resources, thereby increasing system throughput. Such a system is known as a
multiprogramming operating system.

Network Operating System


A network operating system is an important category of the operating system that
operates on a server using network devices like a switch, router, or firewall to
handle data, applications and other network resources. It provides connectivity
among the autonomous operating system, called as a network operating system.
The network operating system is also useful to share data, files, hardware devices
and printer resources among multiple computers to communicate with each other.

8
OPERATING SYSTEM CONCEPT

Types of network operating system


o Peer-to-peer network operating system: The type of network operating
system allows users to share files, resources between two or more computer
machines using a LAN.

Client-Server network operating system:

It is the type of network operating system that allows the users to access
resources, functions, and applications through a common server or centre hub of
the
resources.
The client
workstation
can access
all resources
that exist in
the central
hub of the

9
OPERATING SYSTEM CONCEPT
network. Multiple clients can access and share different types of the resource over
the network from different locations.

Distributed Operating system


A distributed operating system provides an environment in which multiple
independent CPU or processor communicates with each other through physically
separate computational nodes. Each node contains specific software that
communicates with the global aggregate operating system.

With the ease of a distributed system, the programmer or developer can easily
access any operating system and resource to execute the computational tasks and
achieve a common goal. It is the extension of a network operating system that
facilitates a high degree of connectivity to communicate with other users over the
network.

10
OPERATING SYSTEM CONCEPT

Multiprocessing Operating System


It is the type of operating system that refers to using two or more central
processing units (CPU) in a single computer system. However, these
multiprocessor systems or parallel operating systems are used to increase the
computer system's efficiency. With the use of a multiprocessor system, they share
computer bus, clock, memory and input or output device for concurrent execution
of process or program and resource management in the CPU.

Real-Time Operating System


A real-time operating system is an important type of operating system used to
provide services and data processing resources for applications in which the time
interval required to process & respond to input/output should be so small without
any delay real-time system. For example, real-life situations governing an
automatic car, traffic signal, nuclear reactor or an aircraft require an immediate
response to complete tasks within a specified time delay. Hence, a real-time
operating system must be fast and responsive for an embedded system, weapon
system, robots, scientific research & experiments and various real-time objects.

Types of the real-time operating system:

o Hard Real – Time System

11
OPERATING SYSTEM CONCEPT
o These types of OS are used with those required to complete critical tasks
within the defined time limit. If the response time is high, it is not accepted
by the system or may face serious issues like a system failure. In a hard
real-time system, the secondary storage is either limited or missing, so this
system stored data in the ROM.
o Sof Real – Time System
A soft real-time system is a less restrictive system that can accept software
and hardware resources delays by the operating system. In a soft real-time
system, a critical task prioritizes less important tasks, and that priority
retains active until completion of the task. Also, a time limit is set for a
specific job, which enables short time delays for further tasks that are
acceptable. For example, computer audio or video, virtual reality,
reservation system, projects like undersea, etc.

Generations of Operating System


The First Generation (1940 to early 1950s)

When the first electronic computer was developed in 1940, it was created without
any operating system. In early times, users have full access to the computer
machine and write a program for each task in absolute machine language. The
programmer can perform and solve only simple mathematical calculations during
the computer generation, and this calculation does not require an operating
system.

The Second Generation (1955 - 1965)

The first operating system (OS) was created in the early 1950s and was known
as GMOS. General Motors has developed OS for the IBM computer. The
second-generation operating system was based on a 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. At each completion of jobs (either normally or abnormally),
control transfer to the operating system that is cleaned after completing one job
and then continues to read and initiates the next job in a punch card. After that,
new machines were called mainframes, which were very big and used by
professional operators.

12
OPERATING SYSTEM CONCEPT
The Third Generation (1965 - 1980)

During the late 1960s, operating system designers were very capable of
developing a new operating system that could simultaneously perform multiple
tasks in a single computer program called multiprogramming. The introduction
of multiprogramming plays a very important role in developing operating
systems that allow a CPU to be busy every time by performing different tasks on
a computer at the same time. During the third generation, there was a new
development of minicomputer's phenomenal growth starting in 1961 with the
DEC PDP-1. These PDP's leads to the creation of personal computers in the
fourth generation.

The Fourth Generation (1980 - Present Day)

The fourth generation of operating systems is related to the development of the


personal computer. However, the personal computer is very similar to the
minicomputers that were developed in the third generation. The cost of a personal
computer was very high at that time; there were small fractions of minicomputers
costs.

A major factor related to creating personal computers was the birth of Microsoft
and the Windows operating system. Microsoft created the first window operating
system in 1975. After introducing the Microsoft Windows OS, Bill Gates and
Paul Allen had the vision to take personal computers to the next level.

Therefore, they introduced the MS-DOS in 1981; however, it was very difficult
for the person to understand its cryptic commands. Today, Windows has become
the most popular and most commonly used operating system technology. And
then, Windows released various operating systems such as Windows 95,
Windows 98, Windows XP and the latest operating system, Windows 7.
Currently, most Windows users use the Windows 10 operating system.

Besides the Windows operating system, Apple is another popular operating


system built in the 1980s, and this operating system was developed by Steve Jobs,
a co-founder of Apple. They named the operating system Macintosh OS or Mac
OS.

Advantages of Operating System


o It is helpful to monitor and regulate resources.
o It can easily operate since it has a basic graphical user interface to
communicate with your device.

13
OPERATING SYSTEM CONCEPT
o It is used to create interaction between the users and the computer
application or hardware.
o The performance of the computer system is based on the CPU.
o The response time and throughput time of any process or program are fast.
o It can share different resources like fax, printer, etc.
o It also offers a forum for various types of applications like system and web
application.

Disadvantage of the Operating System


o It allows only a few tasks that can run at the same time.
o It any error occurred in the operating system; the stored data can be
destroyed.
o It is a very difficult task or works for the OS to provide entire security from
the viruses because any threat or virus can occur at any time in a system.
o An unknown user can easily use any system without the permission of the
original user.
o The cost of operating system costs is very high.

1.2. Need Of an Operating System


Need and Functions of Operating Systems

The goal of an Operating System:


The fundamental goal of an Operating System is to execute user programs and
to make tasks easier. Various application programs along with hardware systems
are used to perform this work. Operating System is software that manages and
controls the entire set of resources and effectively utilizes every part of a
computer.
The figure shows how OS acts as a medium between hardware units and
application programs.

14
OPERATING SYSTEM CONCEPT

Need for Operating System:

• OS as a platform for Application programs:

The operating system provides a platform, on top of which, other


programs, called application programs can run. These application
programs help the users to perform a specific task easily. It acts as
an interface between the computer and the user. It is designed in
such a manner that it operates, controls, and executes various
applications on the computer.

• Managing Input-Output unit:

Operating System also allows the computer to manage its own


resources such as memory, monitor, keyboard, printer, etc.
Management of these resources is required for effective utilization.
The operating system controls the various system input-output
resources and allocates them to the users or programs as per their
requirements.

Consistent user interface:

Operating System provides the user with an easy-to-work user interface, so the

15
OPERATING SYSTEM CONCEPT
user doesn’t have to learn a different UI every time and can focus on the content
and be productive as quickly as possible. Operating System provides templates,
and UI components to make the working of a computer, really easy for the user.

• Multitasking:
Operating System manages memory and allows multiple programs to
run in their own space and even communicate with each other through
shared memory. Multitasking gives users a good experience as they
can perform several tasks on a computer at a time.

Functions of an Operating System:


An operating system has a variety of functions to perform. Some of the
prominent functions of an operating system can be broadly outlined as:

• Processor Management:
This deals with the management of the Central Processing Unit (CPU).
The operating system takes care of the allotment of CPU time to
different processes. When a process finishes its CPU processing after
executing for the allotted time period, this is called scheduling.
There is various type of scheduling techniques that are used by the
operating systems:

1. Shortest Job First (SJF):


The process which needs the shortest CPU time is
scheduled first.
2. Round Robin Scheduling:
Each process is assigned a fixed CPU execution time in a
cyclic way.
3. Priority Based Scheduling (Non-Pre-emptive):
In this scheduling, processes are scheduled according to their
priorities, i.e., the highest priority process is scheduled first.
If the priorities of the two processes match, then schedule
according to arrival time.

• Context Switching:
• In most multitasking OSs, multiple running processes on the system
may need a change of state in execution. Even if there are multiple
processes being executed at any one point in time, only one task is
executed in the foreground, while the others are put in the background.
• So, the process that is in the foreground is determined by the priority-
based scheduling, and the OS saves the execution state of the previous
process before switching to the current one. This is known as context

16
OPERATING SYSTEM CONCEPT
switching.

• Device Management:

The Operating System communicates with the hardware and the


attached devices and maintains a balance between them and the CPU.
This is all the more important because the CPU processing speed is
much higher than that of I/O devices. In order to optimize the CPU
time, the operating system employs two techniques – Buffering and
Spooling.

Buffering:

In this technique, input and output data are temporarily stored in Input
Buffer and Output Buffer. Once the signal for input or output is sent
to or from the CPU respectively, the operating system through the
device controller moves the data from the input device to the input
buffer and from the output buffer to the output device. In the case of
input, if the buffer is full, the operating system sends a signal to the
program which processes the data stored in the buffer. When the buffer
becomes empty, the program informs the operating system which
reloads the buffer and the input operation continues.

Spooling (Simultaneous Peripheral Operation On Line):

This is a device management technique used for processing different tasks on


the same input/output device. When there are various users on a network sharing
the same resource then it can be a possibility that more than one user might give
it a command at the same point in time. So, the operating system temporarily
stores the data of every user on the hard disk of the computer to which the
resource is attached. The individual user need not wait for the execution process
to be completed. Instead, the operating system sends the data from the hard disk
to the resource one by one.

Example: printer

Memory management:

17
OPERATING SYSTEM CONCEPT

In a computer, both the CPU and the I/O devices interact with the memory.
When a program needs to be executed it is loaded onto the main memory till the
execution is completed. Thereafter that memory space is freed and is available
for other programs. The common memory management techniques used by the
operating system are Partitioning and Virtual Memory.
• Partitioning:

The total memory is divided into various partitions of the same size or
different sizes. This helps to accommodate a number of programs in
the memory. The partition can be fixed i.e., remains the same for all
the programs in the memory or variable i.e., memory is allocated when
a program is loaded onto the memory. The latter approach causes less
wastage of memory but in due course of time, it may become
fragmented.

• Virtual Memory:

This is a technique used by the operating systems which allows the


user can load programs that are larger than the main memory of the
computer. In this technique, the program is executed even if the
complete program cannot be loaded inside the main memory leading
to efficient memory utilization.

• File Management:

The operating system manages the files, folders, and directory systems
on a computer. Any data on a computer is stored in the form of files
and the operating system keeps the information about all of them using
the File Allocation Table (FAT), or a data structure called an anode in
Linux.

The FAT stores general information about files like filename, type
(text or binary), size, starting address, and access mode
(sequential/indexed sequential/direct/relative). The file manager of the
operating system helps to create, edit, copy, allocate memory to the
files and also updates the FAT. The operating system also takes care
that files are opened with proper access rights to read or edit them.

18
OPERATING SYSTEM CONCEPT
1.3. Single User & Multi User Operating System
Single User Operating System

A single-user operating system is a type of operating system developed and


intended for use on a computer or similar machine that will only have a single
user at any given time. This type of OS is typically used on devices like wireless
phones and two-way messaging devices.

The operating system is responsible for handling many different tasks and is
typically one of the most important programs used on a computer. It manages
memory usage and other resources, hardware connectivity and the proper
execution of other applications. A single task operating system can only run one
program or application at a time. So, it is not as useful for a computer or other
device intended to run multiple programs at once.

This is where a multitasking single-user operating system is used instead. A


multitasking OS can run multiple applications and programs at once. This is often
used on computers where someone may want to navigate the internet, run a
graphics editing program, play music through a media playing program, and type
in notes in a simple word processing program all at the same time. A single task
OS could not do this, but the multitasking systems can handle all these processes.

Even though this type of operating system can connect to other computers
through a network, it is still only being used by a single user. As long as the

19
OPERATING SYSTEM CONCEPT
computer only has one monitor, keyboard and other input devices, then it is a
single-user system.

Types of Single-User Operating System

Single user operating system can be classified into two parts, such as:

1. Single-User Single-Tasking operating system

In the Single-User Single-Tasking operating system, only one user is permitted


for performing a single task at a time. Some functions such as printing a document
and downloading images and videos are performed in one given frame. This
operating system is designed especially for wireless phones as well as two-way
messaging devices. For example, MS-DOS, Palm OS, etc. It has the following
advantages:

o This operating system occupies less space in memory.


o It is cost-effective.

2. Single-User Multi-Tasking operating system

Single-User Multi-Tasking operating system is developed especially for one user,


but this single user can perform multiple tasks simultaneously. For example, you
can write any text while surfing the internet, downloading images, watching
movies, etc., on Windows, Linux, Mac O/S. It has the following advantages:

20
OPERATING SYSTEM CONCEPT
o Time-saving.
o High productivity in less time frame.
o Less memory is used for performing multiple tasks.

Features of Single User Operating System

Single user operating system provides the following features to the user, such as:

o It does not use the scheduling process for I/O.


o It uses less scheduling for the users.
o It is only dedicated to single-use.
o It is not intended for several tasks at the same given time.
o It does not use MMU.

Multi-User Operating System

What is Multi-User Operating System?

A multi-user operating system is an operating system that permits several users


to access a single system running to a single operating system. These systems are
frequently quite complex, and they must manage the tasks that the various users
connected to them require. Users will usually sit at terminals or computers
connected to the system via a network and other system machines like printers.
A multi-user operating system varies from a connected single-user operating
system in that each user accesses the same operating system from different
machines.

21
OPERATING SYSTEM CONCEPT
The main goal of developing a multi-user operating system is to use it for time-
sharing and batch processing on mainframe systems. This multi-user operating
system is now often used in large organizations, the government sector,
educational institutions like large universities, and on servers' side such as Ubuntu
Server or Windows Server. These servers allow several users to access the
operating system, kernel, and hardware at the same time.

It is usually responsible for handling memory and processing for other running
programs, identifying and using system hardware, and efficiently handling user
interaction and data requests. It's especially important for an operating system, a
multi-user operating system because several users rely on the system to function
properly at the same time.

Components of Multi-User Operating System

There are various components of a multi-user operating system. Some of them


are as follows:

Memory

The physical memory present inside the system is where storage occurs. It is also
known as Random Access Memory (RAM). The system may rectify the data
that is present in the main memory. So, every executed program should be copied
from physical storage like a hard disk. Main memory is determined as an
important part of OS because it specifies how many programs may be executed
simultaneously.

Kernel

A multi-user operating system makes use of the Kernel component, which is built
in a low-level language. This component is embedded in the computer system's
main memory and may interact directly with the system's H/W.

Processor

The CPU (Central Processing Unit) of the computer is sometimes known as the
computer's brain. In large machines, the CPU would necessitate more ICS. On
smaller computers, the CPU is mapped in a single chip known as a
microprocessor.

22
OPERATING SYSTEM CONCEPT
User Interface

The user interface is the way of interaction between users and all software and
hardware processes. It enables the users to interact with the computer system in
a simple manner.

Device Handler

Each input and output device needs its device handler. The device handler's
primary goal is to provide all requests from the whole device request queue pool.
The device handler operates in continuous cycle mode, first discarding the I/O
request block from the queue side.

Spooler

Spooler stands for 'Simultaneous Peripheral Output on Line'. The Spooler


runs all computer processes and outputs the results at the same time. Spooling is
used by a variety of output devices, including printers.

Types of Multi-User Operating System

There are various types of multi-user operating systems. Some of them are as
follows:

Distributed System

A distributed system is also known as distributed computing. It is a collection of


multiple components distributed over multiple computers that interact,
coordinate, and seem like a single coherent system to the end-user. With the aid
of the network, the end-user would be able to interact with or operate them.

Time-Sliced Systems

It's a system in which each user's job gets a specific amount of CPU time. In other
words, each work is assigned to a specific time period. These time slices look too
small to the user's eyes. An internal component known as the 'Scheduler' decides
to run the next job. This scheduler determines and executes the job that must
perform based on the priority cycle.

Multiprocessor System

Multiple processors are used in this system, which helps to improve overall
performance. If one of the processors in this system fails, the other processor is
responsible for completing its assigned task.

23
OPERATING SYSTEM CONCEPT

How to work the Multi-User operating system?

The single master system is contained within the multi-user system. All network
users can access the master system anytime and from any place and open their
local version of the system. The local version is also known as a 'working model'.
All users can update, delete, and create new files on their local working model,
but this model will not be available to other users until it is saved to the master
system.

Characteristics of Multi-User Operating System

There are various characteristics of a multi-user operating system. Some of them


are as follows:

Resource Sharing

Several devices, like printers, fax machines, plotters, and hard drives, can be
shared in a multi-user operating system. Users can share their own documents
using this functionality. All users are given a small slice of CPU time under this
system.

Multi-Tasking

Multi-user operating systems may execute several tasks simultaneously, and


several programs may also execute at the same time.

Background Processing

Background processing is a term that refers to when commands are not processed
but rather executed "in the background". Usually, other programs interact with
the system in real-time.

Time-Sharing

A strategy used by multi-user operating systems to operate on several user


requests at the same time by switching between jobs at very short periods of time.

System

The operating system must handle a computer's combination of hardware and


software resources.

24
OPERATING SYSTEM CONCEPT
Invisibility

Various functions of the multi-user operating system are hidden from users. It is
due to factors such as the OS being instinctive or happening at the lower end,
such as disk formatting, etc.

Examples of Multi-User Operating System

There are various examples of multi-user operating systems. Some of them are as
follows:

Unix

A highly dependable open system architecture for small and medium-scale


business computing systems. Because it is based on Open System Architecture,
tech giants including AIX, Solaris, and even Mac OS have their own version of
Unix. For example, the Hospitality industry, Healthcare, etc.

Multiple Virtual Storage

IBM develops an operating system for use on mainframe systems. It's commonly
utilized in enterprise computing, where high-intensity I/O is required. For
example, Banking, Insurance, Aviation business, etc.

Shared Computing

A multi-user OS is a software that operates the servers that support most webmail
apps. A typical webmail application may require the utilization of hundreds of
computers. Each one runs a multi-user operating system capable of supporting
various users at the same time. Because these systems have millions, if not
billions, of users who constantly log on to check their messages, they require
operating systems that can handle a high number of users at once.

Advantages and Disadvantages of Multi-User Operating System

There are various advantages and disadvantages of a multi-user operating system.


These are as follows:

Advantages

There are various advantages of a multi-user operating system. Some of the


advantages are as follows:

25
OPERATING SYSTEM CONCEPT
1. A multi-user operating system can be used in the printing process to allow
multiple users to access the same printer, which a normal operating system
may not do.
2. On a single computer system, several users can access the same copy of a
document. For instance, if a PPT file is kept on one computer, other users
can see it on other systems.
3. Multi-user operating systems are very useful in offices and libraries
because they can efficiently handle printing jobs.
4. If one computer fails in its own network system, the entire system does not
come to a halt.
5. Airlines use multi-user operating systems for some of their functions.
6. The ticket reservation system uses a multi-user operating system.
7. Each user can access the same document on their own computer.

Disadvantages of Multi-User Operating System

There are various disadvantages of a multi-user operating system. Some of the


disadvantages are as follows:

1. Virus attacks occur simultaneously on all of them as the computers are


shared. As a result, if one machine is affected, the others will be as well.
2. If a virus hits one computer, it spreads to the entire network system
simultaneously, and finally, all computer systems fail.
3. All computer information is shared publicly, and your personal information
is accessible to everyone on the network.
4. Multiple accounts on a single computer may not be suitable for all users.
Thus, it is better to have multiple PCs for each user.

26
OPERATING SYSTEM CONCEPT
1.4. Elements Of an Operating System

Components of Operating System

An operating system is a large and complex system that can only be created by
partitioning into small parts. These pieces should be a well-defined part of the
system, carefully defining inputs, outputs, and functions.

Although Windows, Mac, UNIX, Linux, and other OS do not have the same
structure, most operating systems share similar OS system components, such as
file, memory, process, I/O device management.

The components of an operating system play a key role to make a variety of


computer system parts work together. There are the following components of an
operating system, such as:

1. Process Management
2. File Management
3. Network Management
4. Main Memory Management
5. Secondary Storage Management
6. I/O Device Management
7. Security Management
8. Command Interpreter System

Operating system components help you get the correct computing by detecting
CPU and memory hardware errors.

27
OPERATING SYSTEM CONCEPT
Process Management

The process management component is a procedure for managing many


processes running simultaneously on the operating system. Every running
software application program has one or more processes associated with them.

For example, when you use a search engine like Chrome, there is a process
running for that browser program.

Process management keeps processes running efficiently. It also uses memory


allocated to them and shutting them down when needed.

The execution of a process must be sequential so, at least one instruction should
be executed on behalf of the process.

Functions of process management

Here are the following functions of process management in the operating system,
such as:

o Process creation and deletion.


o Suspension and resumption.
o Synchronization process
o Communication process

28
OPERATING SYSTEM CONCEPT
File Management

A file is a set of related information defined by its creator. It commonly represents


programs (both source and object forms) and data. Data files can be alphabetic,
numeric, or alphanumeric.

Function of file management

The operating system has the following important activities in connection with
file management:

o File and directory creation and deletion.


o For manipulating files and directories.
o Mapping files onto secondary storage.
o Backup files on stable storage media.

Network Management

Network management is the process of administering and managing computer


networks. It includes performance management, provisioning of networks, fault
analysis, and maintaining the quality of service.

29
OPERATING SYSTEM CONCEPT

A distributed system is a collection of computers or processors that never share


their memory and clock. In this type of system, all the processors have their local
memory, and the processors communicate with each other using different
communication cables, such as fibre optics or telephone lines.

The computers in the network are connected through a communication network,


which can configure in many different ways. The network can fully or partially
connect in network management, which helps users design routing and
connection strategies that overcome connection and security issues.

Functions of Network management

Network management provides the following functions, such as:

o Distributed systems help you to various computing resources in size and


function. They may involve minicomputers, microprocessors, and many
general-purpose computer systems.
o A distributed system also offers the user access to the various resources the
network shares.
o It helps to access shared resources that help computation to speed up or
offers data availability and reliability.

Main Memory management

Main memory is a large array of storage or bytes, which has an address. The
memory management process is conducted by using a sequence of reads or writes
of specific memory addresses.

30
OPERATING SYSTEM CONCEPT
It should be mapped to absolute addresses and loaded inside the memory to
execute a program. The selection of a memory management method depends on
several factors.

However, it is mainly based on the hardware design of the system. Each algorithm
requires corresponding hardware support. Main memory offers fast storage that
can be accessed directly by the CPU. It is costly and hence has a lower storage
capacity. However, for a program to be executed, it must be in the main memory.

Functions of Memory management

An Operating System performs the following functions for Memory Management


in the operating system:

o It helps you to keep track of primary memory.


o Determine what part of it are in use by whom, what part is not in use.
o In a multiprogramming system, the OS decides which process will get
memory and how much.
o Allocates the memory when a process requests.
o It also de-allocates the memory when a process no longer requires or has
been terminated.

Secondary-Storage Management

The most important task of a computer system is to execute programs. These


programs help you to access the data from the main memory during execution.
This memory of the computer is very small to store all data and programs
31
OPERATING SYSTEM CONCEPT
permanently. The computer system offers secondary storage to back up the main
memory.

Today modern computers use hard drives/SSD as the primary storage of both
programs and data. However, the secondary storage management also works with
storage devices, such as USB flash drives and CD/DVD drives. Programs like
assemblers and compilers are stored on the disk until it is loaded into memory,
and then use the disk is used as a source and destination for processing.

Functions of Secondary storage management

Here are some major functions of secondary storage management in the operating
system:

o Storage allocation
o Free space management
o Disk scheduling

I/O Device Management

One of the important uses of an operating system that helps to hide the variations
of specific hardware devices from the user.

32
OPERATING SYSTEM CONCEPT
Functions of I/O management

The I/O management system offers the following functions, such as:

o It offers a buffer caching system


o It provides general device driver code
o It provides drivers for particular hardware devices.
o I/O helps you to know the individualities of a specific device.

Security Management

The various processes in an operating system need to be secured from other


activities. Therefore, various mechanisms can ensure those processes that want to
operate files, memory CPU, and other hardware resources should have proper
authorization from the operating system.

Security refers to a mechanism for controlling the access of programs, processes,


or users to the resources defined by computer controls to be imposed, together
with some means of enforcement.

33
OPERATING SYSTEM CONCEPT
For example, memory addressing hardware helps to confirm that a process can
be executed within its own address space. The time ensures that no process has
control of the CPU without renouncing it. Lastly, no process is allowed to do its
own I/O to protect, which helps you to keep the integrity of the various peripheral
devices.

Security can improve reliability by detecting latent errors at the interfaces


between component subsystems. Early detection of interface errors can prevent
the foulness of a healthy subsystem by a malfunctioning subsystem. An
unprotected resource cannot misuse by an unauthorized or incompetent user.

Command Interpreter System

One of the most important components of an operating system is its command


interpreter. The command interpreter is the primary interface between the user
and the rest of the system.

Many commands are given to the operating system by control statements. A


program that reads and interprets control statements is automatically executed
when a new job is started in a batch system or a user logs in to a time-shared
system. This program is variously called.

o The control card interpreter,


o The command-line interpreter,
o The shell (in UNIX), and so on.

34
OPERATING SYSTEM CONCEPT
Its function is quite simple, get the next command statement, and execute it. The
command statements deal with process management, I/O handling, secondary
storage management, main memory management, file system access, protection,
and networking.

1.5. Operating System as a Resource Manager


An operating system is the interface between the user and the machine which
controls and coordinates the use of the hardware among the various application
programs for the various users.

Operating System as Extended Machine

Let us understand how the operating system works as an Extended Machine.


• At the Machine level the structure of a computer’s system is
complicated to program, mainly for input or output. Programmers do
not deal with hardware. They will always mainly focus on
implementing software. Therefore, a level of abstraction is supposed
to be maintained.
• Operating systems provide a layer of abstraction for using disk such
as files.
• This level of abstraction allows a program to create, write, and read
files, without dealing with the details of how the hardware actually
works.
• The level of abstraction is the key to managing the complexity.
• Good abstractions turn an impossible task into two manageable
tasks.
• The first is to define and implement the abstractions.
• The second is to solve the problem at hand.
• Operating system provides abstractions to application programs in a
top-down view.

35
OPERATING SYSTEM CONCEPT
• For example − It is easier to deal with photos, emails, songs, and Web
pages than with the details of these files on disks.
• The diagram given below shows the functioning of OS as an extended
machine –

Operating System as Resource Manager

Let us understand how the operating system works as a Resource Manager.


• Now-a-days all modern computers consist of processors, memories,
timers, network interfaces, printers, and so many other devices.
• The operating system provides for an orderly and controlled
allocation of the processors, memories, and I/O devices among the
various programs in the bottom-up view.
• Operating system allows multiple programs to be in memory and run
at the same time.
• Resource management includes multiplexing or sharing resources in
two different ways: in time and in space.
• In time multiplexed, different programs take a chance of using CPU.
First one tries to use the resource, then the next one that is ready in
the queue and so on. For example: Sharing the printer one after
another.
• In space multiplexing, instead of the customers taking a chance, each
one gets part of the resource. For example − Main memory is divided
into several running programs, so each one can be resident at the
same time.
• The diagram given below shows the functioning of OS as a resource manager

36
OPERATING SYSTEM CONCEPT

37

You might also like