We have developed Vortex, a brand new operating system kernel that provides strong performance isolation properties. Key is implementation of fine-grained accounting and scheduling of system resources. Vortex is an isolation kernel designed from the ground up to provide scheduling control over resource consumption. It is designed to facilitate the implementation of fine-grained accounting and scheduling of system resources. The novel aspects of the kernel are that it defines a uniform abstraction for encapsulating resources, a system structure that allows resources to be scheduled individually or in a coordinated fashion, and a common interface to resource-usage accounting and attribution.
On top of this isolation kernel, we are currently investigating light-weight approaches to virtual machines.
An emerging trend is to consolidate applications by co-locating them on the same machine. This approach requires, however, that resources are carefully apportioned among applications. Failure to do so can prevent one application from receiving enough resources to fully utilize its guaranteed capacity. Together with UiO, we have studied performance isolation aspects with the conjecture that this can be provided at the application level. We have demonstrated through experiments that this is feasible using an approach that incurs virtually no overhead.