Centralized computing
This is a computing paradigm by which all
computer resources are centralized in one physical system. All resources
(processors, memory, and storage) are fully shared and tightly coupled within
one integrated OS. Many data centers and supercomputers are centralized
systems, but they are used in parallel, distributed, and cloud computing
applications.
Parallel computing
In parallel computing, all processors are
either tightly coupled with centralized shared memory or loosely coupled with
distributed memory. Inter processor communication is accomplished through
shared memory or via message passing. Acomputer system capable of parallel
computing is commonly known as a parallel computer. Programs running in a
parallel computer are called parallel programs. The process of writing parallel
programs is often referred to as parallel programming.
Distributed computing
This is a field of
computer science/engineering that studies distributed systems. A distributed
system consists of multiple autonomous computers, each having its own private
memory, communicating through a computer network. Information exchange in a
distributed system is accomplished through message passing. A computer program
that runs in a distributed system is known as a distributed program. The
process of writing distributed programs is referred to as distributed programming.
Cloud computing
An Internet cloud of
resources can be either a centralized or a distributed computing system. The
cloud applies parallel or distributed computing, or both. Clouds can be built
with physical or virtualized resources over large data centers that are
centralized or distributed. Some authors consider cloud computing to be a form
of utility computing or service computing . As an alternative to the preceding
terms, some in the high-tech community prefer the term concurrent computing or
concurrent programming. These terms typically refer to the union of parallel
computing and distributing computing, although biased practitioners may
interpret them differently.
Ubiquitous computing
Ubiquitous computing refers
to computing with pervasive devices at any place and time using wired or
wireless communication. The Internet of Things (IoT) is a networked connection
of everyday objects including computers, sensors, humans, etc. The IoT is
supported by Internet clouds to achieve ubiquitous computing with any object at
any place and time. Finally, the term Internet computing is even broader and
covers all computing paradigms over the Internet. This book covers all the
aforementioned computing paradigms, placing more emphasis on distributed and
cloud computing and their working systems, including the clusters, grids, P2P,
and cloud systems.