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