The Operating System is a software layer that interfaces with the hardware or physical system to create an environment that allows a user to easily interact with the physical system. Over years, the operating system has grown in terms of complexity and grown to offer different services to support multiple hardware devices and applications.
Platform virtualization takes the abstraction created by the operating system to the next level. This abstraction creates a virtual computing platform on which a general Operating System can installed, just as it were installed on a single physical machine. There can be multiple such computing platforms that can be hosted on a single physical machine.
Platform virtualization allows easy provisioning of virtual computing platforms and also allows these platforms to be easily relocated from one physical machine to another.
Software Appliances is a pre-packaged, self contained unit of a user application and its application dependencies and aimed to dramatically simplifying software deployment. Software appliances installed on a virtual computing platform would create a virtual appliance.
JeOS is the abbreviation of Just Enough Operating system (pronounced as "juice") uses a different approach from the traditional one-size-fits-all Operating systems. It is a highly customized operating system that has been tuned to fit only a specific application. This allows the operating system to be very small and lightweight. Examples: Ubuntu Server JeOs, openSuse LimeJeOS, Oracle Enterprise Linux JeOS.
JeOS contains only the basic bits of the operating system and is not useful as a standalone package. It only creates a base for various possible software appliances while keeping the major goal of a small distribution while giving the ability to install additional software.
The combination of JeOS and software appliance for virtual environments, along with ability to easily quickly create virtual appliances, has enough potential from a cloud computing standpoint.
There seems to be benefits by deployment of such appliances in a cloud but it would be interesting to determine the performance benefits
- against appliance created with a general Operating system
- Addressing elasticity or dynamically scalability, will a JeOS based appliance reduce the amount of time needed to dynamically deploy a virtual machine.
On the flip side, the effort needed to remove or disable operating system interfaces, functions, libraries and unnecessary services while tailoring the rest to lightweight, high performance appliance requires expertise that are not easily available.