With the development of critical Internet technologies, the vision
of computing as a utility took shape in the mid 1990s [19].
These early efforts on Grid computing [35] typically viewed hardware
as the primary resource. Grid computing technologies focused
on sharing, selection, and aggregation of a wide variety of
geographically distributed resources. These resources included supercomputers,
storage, and other devices for solving large-scale
compute-intensive problems in science, engineering, and commerce.
A key feature of these frameworks was their support for