Grid computing is a computer network in which each computer's resources are shared with every other computer in the system. Processing power, memory and data storage are all community resources that authorized users can tap into and leverage for specific tasks. A grid computing system can be as simple as a collection of similar computers running on the same operating system or as complex as inter-networked systems comprised of every computer platform you can think of. A grid computer is connected through a super-fast network and share the devices like disk drives, mass storage, printers and RAM.
In general, a grid computing system requires:
At least one computer, usually a server, which handles all the administrative duties for the system: This type of computer are sometimes referred as a control node. All the administrative tasks required for computing are handled by this control node. The control node must prioritize and schedule tasks across the network. It's the control node's job to determine what resources each task will be able to access. The control node must also monitor the system to make sure that it doesn't become overloaded.
A network of computers running special grid computing network software: These computers act both as a point of interface for the user and as the resources the system will look into for different applications.
A collection of computer software called middleware: The purpose of middleware is to allow different computers to run a process or application across the entire network of machines. Middleware is the workhorse of the grid computing system. Without it, communication across the system would be impossible.