2. A distributed system is a piece of software that
ensures that:
• a collection of independent computers appears
to its users as a single coherent system.
Two aspects:
(1) independent computers and (2) single system
=> middleware: middleware is software that acts as a bridge
between an operating system or database and applications, especially on a
network.
3. World Wide Web (WWW) is the biggest
example of distributed system.
Others are
• The internet
• An intranet which is a portion of the internet managed
by an organization
4. Economics:
A collection of microprocessors offer a better
price/performance than mainframes.
Low price/performance ratio: cost effective way
to increase computing power.
Reliability: If one machine crashes, the system
as a whole can still survive. Higher availability
and improved reliability.
5. Speed: a distributed system may have more
total computing power than a mainframe.
Ex.: 10,000 CPU chips, each running at 50
MIPS. Not possible to build 500,000 MIPS
single processor (MIPS- Microprocessor without
Interlocked Pipeline Stages).
Enhanced performance through load
distributing.
6. Incremental growth: Computing power can
be added in small increments. This leads to
Modular expandability .
7. Data sharing: allow many users to access to a
common data base.
Resource Sharing: expensive peripherals like
color printers.
8. Communication: enhance human-to-human
communication. E.g.: email, chat.
Flexibility: spread the workload over the
available machines
9. Disadvantages:
Multiple Points of Failures: the failure of one or
more participating computers, or one or more
network links, can generate trouble.
Security Concerns: In a distributed system, there are
more opportunities for unauthorized attack.
Software: Distributed software is harder to develop
than conventional software; hence, it is more
expensive.
10. A distributed system organized as middleware.
− The middleware layer extends over multiple machines, and offers
each application the same interface.
12. With Distributed Systems, it is easier for users to
access remote resources and to share resources with
other users.
Examples: printers, files, Web pages, etc.
A distributed system should also make it easier for
users to exchange information.
Easier resource and data exchange could cause
security problems – a distributed system should deal
with this problem.
13. The openness of DS is determined primarily by
the degree to which new resource-sharing
services can be added and be made available
for use by a variety of client programs.
14. It hides the fact that the processes and
resources are physically distributed across
multiple computers.
Transparency is of various forms as follows:
15.
16. A system is described as scalable if it remains
effective when there is a significant increase in
the number of resources and the number of
users.
Challenges:
• Controlling the cost of resources or money.
• Controlling the performance loss.
17. There is a possibility that several clients will
attempt to access a shared resource at the same
time.
Any object that represents a shared resource in
a distributed system must be responsible for
ensuring that operates correctly in a concurrent
environment.
19. Goal: High performance computing tasks.
Cluster Computing Systems:
− A “supercomputer” built from “off the shelf”
computer in a high-speed network (usually a
LAN)
− Most common use: a single program is run in
parallel on multiple machines
20. Grid Computing Systems:
− Grids are usually composed of different types
of computers (hardware, OS, network, security,
etc.)
− Examples: SETI@home, WWW…
21. Goal: Distribute information across several
Servers.
− Remote processes called Clients access the
servers to manipulate the information
− Different communication models are used. The
most usual are RPC (Remote Procedure Calls)
and the object oriented RMI (Remote Method
Invocations)
22. − Often associated with Transaction systems
− Examples:
Banks;
Travel agencies;
Rent-a-Cars’;
Etc…
23. − These are the distributed systems involving mobile
and embedded computer devices like Small, wireless,
battery-powered devices (PDA’s, smart phones,
sensors, wireless surveillance cams, portable ECG
monitors, etc.)
24. − Pervasive Systems are all around us, and ideally
should be able to adapt to the lack of human
administrative control:
Automatically connect to a different network;
Discover services and react accordingly;
Automatic self configuration (E.g.: UPnP –
Universal Plug and Play)…
− Examples: Home Systems, Electronic Health Care
Systems, Sensor Networks, etc.
27. Communication
network
Mini computer
used as file
server
Mini computer
used as database
server
Mini computer
used as print
server
WorkstationWorkstation
Workstation Workstation
Workstation
29. Centralized vs. Distributed Computing
m a in f r a m e c o m p u te r
w o r k s ta tio n
n e tw o r k h o s t
n e tw o r k lin k
te r m in a l
c e n t r a liz e d c o m p u t in g
d is t r ib u t e d c o m p u t in g
30. Centralized vs. Distributed Computing
Early computing was
performed on a
single processor.
Uni processor
computing can be
called Centralized
computing.
A Distributed system
is a collection of
independent
computers,
interconnected via a
network, capable of
collaborating on a
task.
Centralized
computing
Distributed
computing
Notas del editor
Middleware is responsible for hiding the underlying details of each computer while providing a unified view of services to the user. .distributed system is organized as middleware to hide the heterogeneity….