Saturday, June 9, 2018

We were discussing file system improvements and cloud operating system.We mentioned Xen and OSv. Zen is a hypervisor technology and OSv tries to reduce the software layers for a single application on a Virtual Machine.
This means a general purpose operating system is no longer necessary. The runtime that the application requires is difficult to be ported to different hardware environment but manageable to be ported to hypervisors. This is what the cloud operating systems propose.
Why is the hypervisor technology relevant in the cloud computing business ? Public clouds offer different operating system images and container technologies  They have been continuously championing deep separation of resources for applications. Originally applications and services requiring storage and compute were monolithic and were deployed together as application server that was compute intensive and storage server that was storage intensive. Cloud introduced the notion of modular architecture and deep divisions of software on not just separate processes but also separate operating systems, containers, serverless resources and hosts such as OSv. The modules were executed on different virtual machines and those virtual machines ran on different OS images. The cloud operating systems often promoted virtualization technologies be it for compute or storage. While the users saw a shared-nothing architecture that promoted independent resources, the cloud providers virtualized and consolidated resources on platforms and software defined stacks. Such virtualization techniques focused on using existing technologies and features and provided platforms for application life cycle management to the cloud providers. There was no notion of administrators anymore as both the businesses as consumers of resources and the cloud providers as producers of resources maintained transparency and detail of the usages on pay as you go basis.In order to provide this virtualization starting from storage arrays to containers, vendors like Docker leveraged existing operating system features such as Linux containers and built their own containerization technologies. It was taken for granted that the operating system enabled virtualization over different hardware resources that the cloud providers - both public and hybrid needed. However, hypervisors provide more possibilities that the operating systems cannot provide to both the cloud providers and their clients.



#codingexercise
double GetNChooseKDP(double n, double k)
{
if (n < 0 || k < 0) return 0;
if (k == 0 || k == n)
    return 1;
return GetNChooseKDP(n-1, k-1) + GetNChooseKDP(n-1,k);
}

No comments:

Post a Comment