Definition
๐ป The ACM Computing Curricula 2005 defined "computing" as - "In a general way, we can define computing to mean any goal-oriented activity requiring, benefiting from, or creating computers." ๐ป
Thus, computing includes designing and building hardware and software systems for a wide range of purposes; processing, structuring, and managing various kinds of information; doing scientific studies using computers; making computer systems behave intelligently; creating and using communications and entertainment media; finding and gathering information relevant to any particular purpose, and so on.
Trends in Computing:
-> Distributed Computing
-> Grid Computing
-> Distributed Computing
-> Cloud Computing
-> Utility Computing
In this blog chapter, we will mainly focus on Distributed Computing in brief and study the rest topics in the upcoming chapters.
Distributed Computing:
The field of computer science that studies distributed systems. It uses distributed systems to solve computational problems.
Distributed System:
Several autonomous computational entities, each of which has its own local memory. Entities communicate with each other by message passing.
Examples: Internet, ATM machines, Intranets/Workgroups, Computing landscapes will soon consist of subiquitous network connected devices.
Computers in Distributed System
* Workstations: Computers used by end users to perform computing.
* Server Systems: Computers which provide resources and services.
* Personal Assistance: Handheld Computers connected to system via wireless communication.
Properties in Distributed System
1. Fault Tolerance
- When one or some nodes fail, the whole system can still work fine except performance.
- Need to check the status of each node.
2. Each node play partial role
- Each computer has only a limited, incomplete view of the system.
- Each computer may know only one part of the input.
3. Resource sharing
- Each user can share the computing power and storage resource with other users.
4. Load Sharing
- Dispatching several tasks to each nodes can help share loading to the whole system.
5. Easy to expand
- We expect to use few time when adding nodes. Hope to spend no time if possible.
6. Performance
- Parallel computing can be considered a subset of distributed computing.
Why Distributed System
1. Nature of application
2. Performance
- Computing intensive : The task could consume a lot of time on computing.
For ex: Computation of Pi value using Monte Carlo simulation
- Data intensive : The task that deals with a large amount or large size of files.
For ex: Facebook, LHC(Large Hadron Collider) experimental data processing.
3. Robustness
- No SPOF (Single Point Of Failure)
- Other nodes can execute the same task executed on failed node
**img source - Internet**
Very informative๐๐๐
ReplyDelete