Stage : Implémentation du support SVM pour l'IOMMU AMD virtuelle de QEMU R&D (H/F)
Échirolles, FR
Eviden, qui fait partie du groupe Atos, avec un chiffre d'affaires annuel d'environ 5 milliards d'euros, est un leader mondial de la transformation numérique axée sur les données, fiable et durable. En tant qu'entreprise numérique de nouvelle génération, avec des positions de leader mondial dans les domaines du numérique, du cloud, des données, de l'informatique avancée et de la sécurité, elle apporte une expertise approfondie à tous les secteurs d'activité dans plus de 47 pays. En réunissant des technologies haut de gamme uniques sur l'ensemble du continuum numérique et 47 000 talents de classe mondiale, Eviden élargit les possibilités des données et de la technologie, aujourd'hui et pour les générations à venir.
Stage : Implémentation du support SVM pour l'IOMMU AMD virtuelle de QEMU
Profil : ingénieur développement logiciel système réseau
Equipe : BXI LL - Echirolles > Émulateur BXI sous Qemu
Le logiciel libre Qemu permet d’exécuter un ou plusieurs systèmes d’exploitation (et leurs applications) isolés dans des machines virtuelles sur une même machine physique. Il embarque des versions émulées de la plupart des périphériques PCI courants : son, USB et réseau. Les systèmes d’exploitation invités partagent ainsi les ressources de la machine physique de façon relativement invisible. Qemu peut également être utilisé pour des besoins de recherche et développement sur des composants matériel. L’équipe BXI Low Level, qui s’occupe du pilote Linux pour le projet BXI, a utilisé cette technologie pour développer un émulateur de la carte réseau. Cet émulateur permet de travailler sur les couches logicielles (driver, bibliothèques exposées aux utilisateurs) sans attendre la disponibilité du matériel et donc de prototyper rapidement de nouvelles idées. Qemu est également capable d’émuler des IOMMU de différents fabricants (Intel, AMD, ARM et bientôt RISC-V) et ainsi permet à l'équipe de travailler facilement avec cette technologie dans les machines virtuelles de développement BXI. Cependant en l'état actuel des choses, seule l'IOMMU virtuelle d'Intel implémente la technologie SVM indispensable à la solution BXI. La carte BXI devant être compatible avec plusieurs plateformes (aarch64, x86) et plusieurs fabricants d'IOMMU, la situation à ce jour ne permet qu'une mise en place partielle des fonctionnalités voulues.
Objectif du stage: Le futur stagiaire se verra proposer la réalisation d’un prototype d’implémentation de la technologie SVM dans l’IOMMU virtuelle AMD de Qemu. La méthode de travail sera basée sur des cycles itératif constitués d’étapes de design, de développement et de test. Le prototype sera finalement mis en application sur un cas d’usage réel qui fonctionne d’ores et déjà dans l'émulateur BXI. Si le prototype est concluant, le stagiaire pourra proposer son implémentation sous forme de patchs à la communauté de Qemu. Pour arriver à l'objectif proposé, le stagiaire devra étudier la spécification PCIe Gen 5 ainsi que celle de l'IOMMU AMD.
Profil recherché Le profil idéal doit avoir de bonnes connaissances sur les points suivants : • Architecture des ordinateurs • Langage C • Fonctionnement de la mémoire virtuelle • Gestion de versions de code (Git) • Debug (gdb) Des connaissances sur les points suivants sont appréciées : • Noyau Linux • Virtualisation
Let’s grow together.