Par Mvondo Djob Barbe Thystere, Doctorant, Université Grenoble Alpes
Tout est dans le titre :).
Contexte
Le service de Cloud Computing, IaaS, permet à des clients de louer des ressources virtuelles (processeurs et mémoires) et y installer les systèmes d'exploitation de leur choix puis faire joujou avec comme bon leur semble. À partir des systèmes d'exploitation les plus sollicités par leurs clients, les fournisseurs de Cloud proposent des systèmes d'exploitation pré-configurés à démarrer à la volée. Cela permet de gagner en temps et fidéliser les clients.
Problématique
Malgré des besoins en terme de système d'exploitation commun pour des groupes de client, démarrer une machine virtuelle avec un système d'exploitation prend toujours le même temps. Je pense qu'il y a moyen de réduire le temps de démarrage des systèmes d'exploitation s'exécutant dans une machine virtuelle. Concrètement, peut-on exploiter les phases réalisées lors du démarrage d'une machine virtuelle pour un système d'exploitation particulier pour accélérer le prochain/futur démarrage d'une machine virtuelle similaire (en termes de machines virtuelles).
TAF
Modéliser de façon algébrique ce problème (intersection, ensemble, fonction, etc.)
Détailler les phases du démarrage d'un système d'exploitation de votre choix et faire ressortir les phases qu'on pourrait facilement réutiliser ou non ? Pour chaque phase, dire pourquoi ce serait facile ou pas.
BONUS : Faire une démo d'un prototype où vous arrivez à exploiter les phases de démarrage d'une machine virtuelle pour accélérer le prochain démarrage. (Astuce : Partir d'un OS minimal tel que BusyBox, TinyOS, ou encore OSV).