DISTRIBUTED PROCESSING SYSTEMS
DISTRIBUTED PROCESSING SYSTEMS
Introduction Introduction
The field of distributed computing covers all aspects of computing and The field of distributed computing covers all aspects of computing and information access across multiple processing elements connected by any form of information access across multiple processing elements connected by any form of communication network, whether local or wide-area in coverage. Since the advent of communication network, whether local or wide-area in coverage. Since the advent of the Internet in 1970s, there has been a steady growth of new applications requiring the Internet in 1970s, there has been a steady growth of new applications requiring distributed processing. This has been enabled by advances in networking and distributed processing. This has been enabled by advances in networking and hardware technology, the falling cost hardware, and greater end-user
hardware technology, the falling cost hardware, and greater end-user awareness.awareness. History
History
1945-19851945-1985
Computers were large and expensiveComputers were large and expensive
No way to connect themNo way to connect them
All systems were Centralized SystemsAll systems were Centralized Systems
Mid- 1980sMid- 1980s
Powerful microprocessorsPowerful microprocessors
High Speed computer networks (LANs, WANs)High Speed computer networks (LANs, WANs)
1990s-Present1990s-Present
Came the distributed systemCame the distributed system Distributed Processing System
Distributed Processing System
A distributed processing system (distributed system)
A distributed processing system (distributed system) is a software system in which is a software system in which components located on networked computers communicate and coordinate their components located on networked computers communicate and coordinate their actions by passing messages. It is can be also characterized as collection of multiple actions by passing messages. It is can be also characterized as collection of multiple autonomous computers that communicate over a communication network. The autonomous computers that communicate over a communication network. The computers interact with each other in order to achieve a common goal.
Definition of other terms:
Distributed computing is a field of computer science that studies distributed systems. It also refers to the use of distributed systems to solve computational problems. In distributed computing, a problem is divided into many tasks each of which is solved one or more computers.
Distributed Program is a computer program that runs in a distributed system. Distributed Programming is the process of writing distributed programs.
Why do organizations choose distributed system?
Availability of powerful yet cheap microprocessors. (PC, workstations)
Continuing advances in communication technology. Goals of Distributed Systems
Connecting Resources and Users
With distributed systems, it is easier for users to access remote resources and to share resources with other users. Examples include printers, files, and web pages. 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.
Openness
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.
Transparency
It hides the fact that the processes and resources are physically distributed across multiple computers.
Scalability
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 include controlling the cost of resources or money and controlling the performance loss.
Concurrency
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.
Characteristics of Distributed Systems
Multiple autonomous components
Resources may not be accessible
Software runs in concurrent processes on different processors
Multiple points of control
Multiple points of failure Types of Distributed Systems
Distributed Computing Systems
The goal of these distributed systems is high performance computing tasks. These distributed systems include the:
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 Grid Computing Systems
Contrary to clusters, grids are usually composed of different types of computers (hardware, OS, network, security, etc.)
Resources from different organizations are brought together to allow collaboration
Examples: World Wide Web
Distributed Information Systems
Distribute information across several servers is the goal of this distributed system. Remote processes called Clients access the servers to manipulate the information. Different communication models are used. The most usual type of this distributed system is RPC (Remote Procedure Calls) and the object oriented RMI (Remote Method Invocations). It is often associated with transaction systems.
Distributed Pervasive Systems
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.). These systems are characterized by their “instability” when compared to more “traditional” distributed systems.
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
Advantages of Distributed Systems 1. 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.
2. Incremental Growth
In distributed computing the computer power can be added in small increments. This leads to modular expandability.
3. 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.
4. 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.
5. Speed
A distributed computing system can have more computing power than a mainframe. Its speed makes it different than other systems.
6. Open system
As it is open system, it can communicate with other systems at anytime. Because of an open system it has an advantage over self-contained system as well as closed system.
7. 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.
8. Economics
A collection of microprocessors offer a better price rather than having a mainframe.
9. Data Sharing
Allow many users to access to a common database.
Disadvantages of Distributed Systems 1. 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.
2. 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.
3. 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.
4. 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.