DEFREN

Login et recherche



Sponsors /ch/open

Kernel-based Virtual Machine (KVM)

Infrastructure / Virtualisation

KVM (Kernel-based Virtual Machine) est un hyperviseur libre de type I pour Linux. KVM est intégré dans le noyau Linux depuis la version 2.6.20.

Il fonctionne originellement sur les processeurs à architectures x86 disposants des instructions de Virtualisation Intel VT ou AMD-V. Depuis, KVM a été porté pour les architectures Power PC, IA-64 ainsi que ARM depuis le noyau Linux 3.9.

KVM est une instance de QEMU. Les développeurs des deux projets essayent de ne pas trop diverger et le code source des deux projets est fréquemment resynchronisé. La principale modification apportée est la prise en charge du module kvm. Lorsqu'on parle de KVM, on parle généralement de l'ensemble : la version modifiée de QEMU et le module kvm.

 

QEMU est capable, grâce à son module KQEMU (K pour Kernel, « noyau » en anglais), d'exécuter du code machine directement sur le processeur hôte afin d'accélérer l'émulation. Mais cette technologie, bien qu'apportant un gain de performance important, n'est pas parfaite, car des mécanismes de protection pour intercepter et émuler les évènements privilégiés doivent être mis en place ; or le code noyau du système invité, fonctionnant normalement entièrement en mode privilégié et étant émulé de manière classique, est donc fortement pénalisé alors qu'il s'agit de l'élément crucial du système.

 

Les processeurs de la famille x86 disposent de 4 niveaux de privilège d'exécution, appelés anneaux de protection. En plus de ces anneaux, les processeurs récents intègrent un nouveau mécanisme d'isolation qui permet à un système invité d'être exécuté directement sur le processeur quels que soient les anneaux de protection qu'il requiert pour fonctionner, tout en assurant la protection contre la lecture et l'écriture dans la mémoire n'appartenant pas à la machine virtuelle. Cela est principalement possible grâce à une MMU dédiée à chaque machine virtuelle sur le processeur et à une redirection des interruptions matérielles vers l'hyperviseur de machines virtuelles (KVM en l'occurrence) afin d'émuler le matériel dont a besoin le système invité.

 

Les technologies mises en place par les deux principaux fondeurs que sont AMD et Intel étant différentes, le module kvm se décline en deux sous-modules : kvm-intel et kvm-amd ; le module kvm n'étant là en fait que pour fournir à l'émulateur une abstraction supplémentaire.

 

Dans les versions récentes de kvm (au minimum la version 60) il est possible d'utiliser un mécanisme similaire à la paravirtualisation en utilisant virtio. Les pilotes virtio sont inclus dans le noyau Linux de version 2.6.25 au minimum. Il existe aussi des pilotes virtio pour Windows. Ce mécanisme permet une vitesse d'exécution accrue car il n'est plus nécessaire d'émuler des périphériques matériels. Cependant, ce système sort du cadre de la virtualisation au sens strict car il faut que les pilotes soient informés qu'ils sont exécutés dans un environnement virtualisé.

 

Type : Hyperviseur

Site web : Linux KVM

 


Dernière actualisation: 13.04.2020  -  Nombre de vues depuis le 01. avril 2013: 485
Erstellt: 14.01.2014

Entreprises offrant des prestations pour Kernel-based Virtual Machine (KVM):

stepping stone AG
5 Références
Adfinis SyGroup AG

Références de Kernel-based Virtual Machine (KVM):

Debian und stoney cloud für Pfadicorps Patria Bern
Anonymous Git mirror für die KDE Community
MediaWiki für Literapedia Bern
SugarCRM für die Gewerkschaft Unia
Alfresco für die couniq consulting GmbH
Docker bei der snowflake Ops



A propos des produits OSS

Les produits OSS sont des logiciels et des plates-formes distribuées sous une licence open source reconnue par l'Open Source Initiative (OSI). Les entreprises OSS peuvent fournir des services tels que du conseil, de l'intégration, des extensions, de la maintenance, ainsi que l'exploitation de certains produits OSS. Les entrées respectives comprennent une brève description des produits OSS. Pour plus de détails, on se référera aux nombreux sites web correspondants. Certaines de ces pages figurent ci-dessous dans la rubrique "Liens".

 

Enregistrer un nouveau produit OSS

Il est possible d'enregistrer un nouveau produit OSS sur la page "Enregistrer une nouvelles solution OSS". Un utilisateur enregistré et connecté a la possibilité de modifier en tout temps la description du produit. Si l'utilisateur n'est pas inscrit, il devra fournir un nom et une adresse e-mail pour pouvoir modifier par la suite cet enregistrement.

On ne peut enregistrer en tant que produits OSS que des systèmes software dont le code source est sous une licence open source approuvée par l’Open Source Initiative (OSI) et est accessible au public. Des services tels que le conseil, l'exploitation, etc. ne sont pas considérés comme des produits OSS mais sont proposés par des entreprises OSS et doivent donc être mentionnés dans les profils entreprises. Une nouvelle société OSS peut être inscrite sous Inscription en tant que société OSS.

 

Modifier un produit OSS existant

Si l'enregistrement du produit OSS a été créé par l'utilisateur ou l'entreprise OSS, il lui sera possible de le modifier grâce à l'option "Modifier l'enregistrement".

 

Pourquoi parler de produits plutôt que de projets OSS?

Dans le langage courant, on parle généralement de logiciels OSS pour désigner les "projets open source". Sur www.opensource.ch, on fait cependant une distinction importante entre projet OSS et enregistrement de l'implémentation d'un logiciel ou d'une plate-forme OSS. Les références OSS décrivent concrètement comment un logiciel OSS a été intégré dans un projet particulier. C'est pourquoi, pour éviter la confusion, nous évitons d'utiliser le terme de "projet" pour présenter des références sur www.opensource.ch.

 

Autres questions ou suggestions

Si vous avez d'autres questions ou suggestions, n'hésitez pas à contacter la rédaction de www.opensource.ch par courriel à l'adresse info(at)opensource.ch.

Twitter Feed







Liens

Über unsNewsletterContactConditions d'utilisationCH Open Initiativen