In 60’s John McCarthy predicted Cloud computing claiming that „Computation may someday be organized as a public utility”.
He assumed that computation could be treated as other services consumed by the public: electricity, natural gas, water, sewage. Right now we have for example: Internet.
Similar predictions were given by Douglas Parhill’s in book: The Challenge of the Computer Utility in 1966.
In 70’s IBM has shown idea of Virtual Machines. They defined Virtual machine us: “multiple virtual systems, or "Virtual Machines" (VMs) on a single physical node = multiple distinct compute environments in one physical environment”
What is virtualization?
Virtualization is a logical representation of resources not constrained by physical limitations.
One way of looking at virtualization is to visualize taking something large, carving it up and making it look like many small things. Think of that as partitioning an Intel server using technologies like the VMware.
Another way of looking at it is making many small things work in concert as one large thing. A good example of that is storage virtualization, where we can have multiple storage arrays from different vendors, work in concert as if they were one large single storage pool.
And, finally, it’s being able to dynamically change and adjust these resources across the infrastructure. Think of that as being able to do what we could do in the mainframe for years, being able to extend that capability across a heterogeneous distributed enterprise.
Most of the basic functions of any virtualization software that you see nowadays can be tracked back to this early VM OS.