Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Distributed computing
1. Distributed computing
1
Salunke Rohit R
S.R.E.S. College of Engineering Kopargaon-423 603
rohit.salunke3@gmail.com
Abstract
Over the past two decades, advancements in
microelectronic technology have resulted in the
availability of fast, inexpensive processors, and
advancements in communication technology have
resulted in the availability of cost effective and
highly efficient computer networks. The net result of
the advancements in these two technologies is that
the price performance ratio has now changed to favor
the use of interconnected multiple processors in place
of a single, high-speed processor that is Distributed
Systems.
Computer architectures consisting of
interconnected, multiple processors are basically of
two types:Tightly coupled systems and Loosely
coupled systems. Tightly coupled systems are
referred to as parallel processing systems, and loosely
coupled systems are referred to as distributed
computing systems, or simply distributed systems.
In short, a distributed computing system is basically a
collection of processors interconnected by a
communication network in which each processor has
its own local memory and other peripherals, and the
communication between any two processors of the
system takes place by message passing over the
communication network. For a particular processor,
its own resources are local, whereas for other
processors these resources are remote.Together, a
processor and its resources are usually referred to as a
node or site or machine of the distributed computing
system.
Introduction
The word distributed in terms such as "distributed
system", "distributed programming", and
"distributedalgorithm" originally referred to computer
networks where individual computers were
physically distributed within some geographical area.
The terms are nowadays used in a much wider sense,
even referring to autonomous processes that run on
the same physical computer and interact with each
other by message passing. While there is no single
definition of a distributed system, the following
defining properties are commonly used:
There are several autonomous computational entities,
each of which has its own local memory.
The entities communicate with each other by
message passing. In this article, the computational
entities are called computers or nodes.A distributed
system may have a common goal, such as solving a
large computational problem. Alternatively, each
computer may have its own user with individual
needs, and the purpose of the distributed system is to
coordinate the use of shared resources or provide
communication services to the users. Other typical
properties of distributed systems include the
following:The system has to tolerate failures in
individual computers.The structure of the system
(network topology, network latency, number of
computers) is not known in advance, the system may
consist of different kinds of computers and network
links, and the system may change during the
execution of a distributed program. Each computer
has only a limited, incomplete view of the system.
Each computer may know only one part of the input.
EVOLUTION OF DISTRIBUTED COMPUTING
SYSTEM
The use of concurrent processes that
communicate by message-passing has its roots in
operating system architectures studied in the 1960s.
The first widespread distributed systems were local-
area networks such as Ethernet that was invented in
the 1970s.
Computer systems are undergoing a revolution. From
1945, when the modem Computer era began, until
about 1985, computers were large and expensive.
Even minicomputerscost at least tens of thousands of
dollars each. As a result, most organizations had only
a handful of computers, and for lack of a way to
connect them, these operated independentlyfrom one
2. another. Starting around the mid-198 0s, however,
two advances in technology began to change that
situation. The first was the development of powerful
microprocessors.Initially, these were 8-bit machines,
but soon 16-, 32-, and 64-bit CPUs became common.
Many of these had the computing power of a
mainframe (i.e., large) computer, but for a fraction of
the price. The amount of improvement that has
occurred in computer technology in the past half
century is truly staggering and totally unprecedented
in other industries. From a machine that cost 10
million dollars and executed 1 instruction per second.
We have come to machines that cost 1000 dollars and
are able to execute 1 billion instructions per second; a
price/performance gain of 1013.The second
development was the invention of high-speed
computer networks. Local-area networks or LANs
allow hundreds of machines within a building to be
connected in such a way that small amounts of
information can betransferred between machines in a
few microseconds or so. Larger amounts of data can
be Distributed Computing become popular with the
difficulties of centralized processingin mainframe
use. With mainframe software architectures all
components arewithin a central host computer. Users
interact with the host through a terminal that captures
keystrokes and sends that information to the host. In
the last decade however,mainframes have found a
new use as a server in distributed client/server
architectures (Edelstein 1994). The original PC
networks (which have largely superseded
mainframes) were based on file sharing architectures,
where the server transfers files from a shared location
to a desktop environment. The requested user job is
then run (including logic and data) in the desktop
environment. File sharing architectures work well if
shared usage is low, update contention is low, and the
volume of data to be transferred is low. In the 1990s,
PC LAN (local area network) computing changed
because the capacity of the file sharing was strained
as the number of online users grew and graphical user
interfaces (GUIs)became popular (making mainframe
and terminal displays appear out of date). The next
major step in distributed computing came with
separation of software architecture into 2 or 3 tiers.
With two tier client-server architectures, the GUI is
usually located in the user's desktop environment and
the database management services are usually in a
server that is a more powerful machine that services
many clients. Processingmanagement is split between
the user system interface environment and the
database management server environment. The two
tier client/server architecture is a goodsolution for
locally distributed computing when work groups are
defined as a dozen to 100 people interacting on a
LAN simultaneously. However, when the number of
usersexceeds 100, performance begins to deteriorate
and the architecture is also difficult to scale.
Why Distributed Computing?
A distributed computer system consists of multiple
software components that are on multiple computers,
but run as a single system. The computers that are in
a distributed system can be physically close together
and connected by a local network, or they can be
geographically distant and connected by a wide area
network. A distributed system can consist of any
number of possible configurations, such as
mainframes, personal computers, workstations,
minicomputers, and so on. The goal of distributed
computing is to make such a network work as a
single computer. Distributed systems offer many
benefits over centralized systems, including the
following:
Scalability
The system can easily be expanded by adding more
machines as needed.
Redundancy
Several machines can provide the same services, so if
one is unavailable, work does not stop. Additionally,
because many smaller machines can be used, this
redundancy does not need to be prohibitively
expensive.
Distributed computing systems can run on hardware
that is provided by many vendors, and can use a
variety of standards-based software components.
Such systems are independent of the underlying
software. They can run on various operating systems,
and can use various communications protocols. Some
hardware might use UNIX(R)
as the operating system,
while other hardware might use Windows operating
systems. For intermachine communications, this
hardware can use SNA or TCP/IP on Ethernet or
Token Ring.
Types of Distributed Computing:
Tightly coupled systems:
In these systems, there is a single system wide
primary memory (address space) that is shared by all
the processors [Fig. 1.1(a)]. If any processor writes,
for example, the value 100 to the memory location x,
any other processor subsequently reading from
location x will get the value 100. Therefore, in these
systems, any communication between the processors
usually takes place through the sharedmemory.
3. Fig: 1.1. (a)
Loosely coupled systems:
In these systems, the processors do not share
memory, and each processor has its own local
memory [Fig. 1.1(b)]. If a processor writes the value
100 to the memory location x, this write operation
will only change the contents of its local memory and
will not affect the contents of the memory. In these
systems, all physical communication between the
processors is done by passing messages across
the network that interconnects the processors.
Fig: 1.1. (b)
Distributed computing applications:-
Telecommunication networks:
- Phone networks and cellular networks.
- PC networks like the web.
- Wireless sensor networks.
- Routing algorithms.
Network applications:
- Web and p-2-p networks.
- Stupendously multi player web-based games and
virtual communities.
- Distributed database management systems and
distributed databases.
- Network file systems.
- Distributed info processing systems like banking
systems and airline reservation systems.
Realtime process control :
- Aircraft control systems.
- Business control systems.
Parallel computation:
- Systematic computing, including cluster computing
and grid computing and varied volunteer computing
projects; see the list of distributed computing
projects.
- Distributed rendering in PC graphics.
Advantages of Distributed Computing
Reliability
The important advantage of distributed computing
system is reliability. It is more reliable than a single
system. If one machine from system crashes, the rest
of the computers remain unaffected and the system
can survive as a whole.
Incremental Growth
In distributed computing the computer power can be
added in small increments i.e. new machines can be
added incrementally as per requirements on
processing power grow.
Sharing of Resources
Shared data is required to many applications such as
banking, reservation system and computer-supported
cooperative work. As data or resources are shared in
distributed system, it is essential for various
applications.
Flexibility
As the system is very flexible, it is very easy to
install, implement and debug new services. Each
service is equally accessible to every client remote or
local.
Speed
A distributed computing system can have more
computing power than a mainframe. Its speed makes
it different than other systems.
Open system
As it is open system, it can communicate with other
systems at anytime. Because of an open system it has
4. an advantage over self-contained system as well as
closed system.
Performance
It is yet another advantage of distributed computing
system. The collection of processors in the system
can provide higher performance than a centralized
computer.
Disadvantages of Distributed Computing:-
Troubleshooting
Troubleshooting and diagnosing problems are the
most important disadvantages of distributed
computing system. The analysis may require
connecting to remote nodes or checking
communication between nodes.
Software
Less software support is the main disadvantage of
distributed computing system. Because of more
software components that comprise a system there is
a chance of error occurring.
Networking
The underlying network in distributed computing
system can cause several problems such as
transmission problem, overloading, loss of messages.
Hence, the problems created by network
infrastructure are the disadvantages of distributed
computing.
Security
The easy distributed access in distributed computing
system which increases the risk of security. The
sharing of data creates the problem of data security.
Disadvantages of Distributed Computing:-
Troubleshooting
Troubleshooting and diagnosing problems are the
most important disadvantages of distributed
computing system. The analysis may require
connecting to remote nodes or checking
communication between nodes.
Software
Less software support is the main disadvantage of
distributed computing system. Because of more
software components that comprise a system there is
a chance of error occurring.
Networking
The underlying network in distributed computing
system can cause several problems such as
transmission problem, overloading, loss of messages.
Hence, the problems created by network
infrastructure are the disadvantages of distributed
computing.
Security
The easy distributed access in distributed computing
system which increases the risk of security. The
sharing of data creates the problem of data security.
Conclusion:
A distributed system consists of multiple computers
that communicate through a computer network. Thus
distributed computing has the chance to lead into new
age in terms of computer paradigm, resources sharing
pattern and online collaboration. Identical principles’
and guidelines should be used.
References:
Andrews, Gregory R. (2000), Foundations
of Multithreaded, Parallel, and Distributed
Programming, Addison–Wesley, ISBN 0-
201-35752-6.
Arora, Sanjeev; Barak, Boaz
(2009), Computational Complexity – A
Modern Approach, Cambridge, ISBN 978-0-
521-42426-4.
Cormen, Thomas H.; Leiserson, Charles
E.; Rivest, Ronald L. (1990), Introduction to
Algorithms (1st ed.), MIT Press, ISBN 0-
262-03141-8.
Dolev, Shlomi (2000), Self-
Stabilization, MIT Press, ISBN 0-262-
04178-2.
Elmasri, Ramez; Navathe, Shamkant
B. (2000), Fundamentals of Database
Systems (3rd ed.), Addison–
Wesley, ISBN 0-201-54263-3.
Ghosh, Sukumar (2007), Distributed
Systems – An Algorithmic Approach,
Chapman & Hall/CRC, ISBN 978-1-58488-
564-1.