Première sortie de mklinux pour l'exécution simultanée de plusieurs instances du noyau Linux

La première version publique du projet Multikernel Linux (mklinux-v7.0-mk2) a été présentée, développant une variante du noyau Linux, complétée par la possibilité d'exécuter plusieurs instances indépendantes du noyau sur un seul ordinateur physique sans utiliser d'hyperviseur ni de virtualisation. Chaque instance du noyau a un accès direct aux ressources matérielles et peut être utilisée pour exécuter des environnements système isolés distincts. La première version est basée sur le noyau Linux 7.0 et contient une configuration de compilation « CONFIG_MULTIKERNEL », dont la désactivation rend le noyau totalement identique à celui du noyau standard 7.0. Pour l'architecture CPU, seul x86_64 est actuellement pris en charge.

Multikernel se présente comme un nouveau mécanisme d'isolation, occupant un créneau entre la virtualisation par hyperviseur et l'isolation de conteneurs basés sur un noyau commun. Contrairement à la virtualisation, Multikernel ne nécessite pas d'hyperviseur, simplifie la création d'environnements pour l'exécution isolée d'applications individuelles et permet d'atteindre de hautes performances sans les surcoûts liés à la virtualisation. Contrairement aux conteneurs, Multikernel offre un niveau d'isolation élevé et permet d'utiliser un noyau distinct dans chaque environnement isolé, une interruption ou l'exploitation d'une vulnérabilité dans celui-ci n'affectant pas les autres environnements.

Le noyau hôte assure la répartition des CPU, de la mémoire et des périphériques PCI disponibles entre les instances supplémentaires du noyau qui fonctionnent en parallèle. Chaque instance s'exécute sur un cœur de CPU dédié, travaille avec les périphériques qui lui sont attribués et a accès à une zone dédiée de la mémoire physique. L'exécution simultanée de plusieurs noyaux s'effectue sans virtualisation, à l'aide d'un gestionnaire SMP répartissant les CPU disponibles. L'allocation dynamique des ressources pour les environnements en cours d'exécution et la garantie d'une performance prévisible sont prises en charge.

Grâce à l'élimination des frais généraux liés à la virtualisation, les performances avec Multikernel sont jugées proches de celles d'une exécution sur du matériel dédié. Avec Multikernel, il n'y a pas d'étape de transmission de contrôle entre les machines virtuelles (VM exit), pas de pages mémoire de second niveau, un modèle d'appareil distinct et une traduction IOMMU. En comparaison avec un hyperviseur, KVM l'utilisation de Multikernel montre une augmentation des performances de divers appels système et fonctions, allant de 1,07 à 2,5 fois (fork + exit — 1,07x, write() — 1,39x, AF_UNIX — 1,55x, Pipe — 2,18x, commutation de contexte — 2,50x), la bande passante et la latence lors de l'accès à la mémoire restant au même niveau.



Source : opennet.ru
Acheter un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS 🔥 Acheter un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS | ProHoster