Virtualized Recomposition: Cloudy or Clear? Workshop on Software Engineering Challenges in Cloud Computing @ ICSE 2009
Virtualization provides a coarse-grained isolation mechanism that results in large systems, with full operating systems and a complete software stack as their foundation. Though much of this foundation is not strictly necessary, the programmatic burden of building systems at a finer-granularity, on a smaller foundation, has previously been shown to be prohibitive. The aim of this work is to revisit this tension, and present an alternative, lightweight and composable approach to virtualization that we call MacroComponents—software components that run in isolation from the rest of the system, but without the full foundations of their more traditionally virtualized counterparts. We argue that this approach will provide a more scalable and sustainable approach for composing robust services in cloud environments, both in terms of dynamic system properties and software engineering qualities.