Towards a more reliable and robust Cloud Meta-Operating System based on heterogeneous kernels
Ramzi Debab, Walid-Khaled Hidouci · 2016
The Operating Systems (OS) provide services to applications via APIs that encapsulate the system calls interface. In the context of critical applications, the SLA is closely dependent on the underlying OS. This SLA is a big challenge for the most Cloud providers as they have to ensure the sustainability of their customers' workloads. The kernel, which is the core of the OS, knew different approaches for its development. However, monolithic kernels are still the most performant despite of their fragility and unreliability. Today, we know a variety of heterogeneous OS developed by different communities. "Two heads are better than one", applying this principle allows an OS with its benefits to cover the shortcomings of others in a given case. All the known general purpose OS are vulnerable. So, we suppose that the superposition of the OS in such way that a healthy kernel replaces the vulnerable services of another kernel is a good track to operate. This replacement is accomplished via the transfer of system calls from the vulnerable kernel to a more reliable and efficient remote discovered kernel. We propose the architecture of a Meta-OS based on heterogeneous monolithic kernels in order to ensure reliability and performance. The features of this Meta-OS are encapsulated in microservices running inside containers. Two contemporary technologies are used to implement our solution: Virtualization (hardware and OS based) and Web Services.