PCI passthrough sous FreeBSD avec bhyve

Magazine
Marque
GNU/Linux Magazine
Numéro
274
Mois de parution
mars 2025
Spécialité(s)


Résumé

Dans un précédent article [1] nous avons exploré la possibilité, sous GNU/Linux, de créer des machines virtuelles capables d'accéder à du matériel PCI/PCIe dans le but, entre autres, de faciliter le développement de pilotes de périphériques OpenBSD. Ce type de fonctionnalités n'est pas spécifique à QEMU/KVM et il est temps de voir comment cela se passe de l'autre côté de l'univers Unix open source, avec FreeBSD.


Bhyve, prononcé « bi-aïe-ve » (ou « beehive » en anglais, pour « ruche »), est l'hyperviseur de type 2 de FreeBSD. Contrairement aux solutions qu'on a l'habitude de trouver sous GNU/Linux, bhyve est une partie intégrante du système, qu'il s'agisse du support noyau ou des outils de contrôle en espace utilisateur. Si vous installez un FreeBSD, vous avez bhyve clé en main, sans rien avoir à installer de plus. Il est capable de gérer un grand nombre d'OS guests (invités, fonctionnant dans la VM) tels qu’OpenBSD, NetBSD, FreeBSD, Windows ou encore Illumos (ex-OpenSolaris). Développé depuis plus de 10 ans (FreeBSD 10.0), bhyve est un projet mature et stable, et étonnamment simple d'utilisation. Notez que cet hyperviseur avait fait l'objet d'un article de Benjamin Villain, il y a bien longtemps, dans le hors-série 74 [2] et que la plupart des explications données sont toujours parfaitement valides. C'est beau la constance...

Comme pour…

La suite est réservée aux abonnés. Il vous reste 96% à découvrir.
  • Accédez à tous les contenus de Connect en illimité
  • Découvrez des listes de lecture et des contenus Premium
  • Consultez les nouveaux articles en avant-première
Envie de lire la suite ? Rejoignez Connect
Je m'abonne maintenant


Article rédigé par

Par le(s) même(s) auteur(s)

Créons un périphérique « maison » pour notre SoC LiteX

Magazine
Marque
Hackable
Numéro
64
Mois de parution
janvier 2026
Spécialité(s)
Résumé

J'ai, à de nombreuses reprises, détaillé en quoi implémenter un SoC sur mesure sur un FPGA présentait de nombreux avantages. En particulier lorsque cela est aussi facile qu'avec le framework LiteX où, avec un minimum de code Python, cela se transforme en un simple jeu de construction. Mais utiliser les périphériques déjà disponibles, même s'ils sont nombreux et variés, ne représente qu'une petite partie des bénéfices de l'exercice. Là où cela devient réellement magique, c'est lorsqu'il s'agit de créer ses propres périphériques, et c'est précisément ce que nous allons voir ici.

Colorlight 5A-75B : développement FPGA avec LiteX et petits hacks

Magazine
Marque
Hackable
Numéro
64
Mois de parution
janvier 2026
Spécialité(s)
Résumé

Dans le petit monde des cartes et des équipements initialement destinés à une tout autre utilisation, mais pouvant faire office de très sympathiques plateformes de développement FPGA, la famille « Colorlight » est presque un classique. Ce matériel, initialement prévu pour être une carte de pilotage de panneaux à LED interfacée en Ethernet, a déjà été évoqué dans les pages de ce magazine, dans un excellent article de Fabien Marteau il y a quelques années [1]. Nous revenons ici sur le sujet, avec une approche différente et, surtout, une modification matérielle permettant d'en tirer vraiment le maximum...

Carte PCIe CH368 et pilotage depuis l'espace utilisateur : récit d'un échec

Magazine
Marque
GNU/Linux Magazine
Numéro
279
Mois de parution
janvier 2026
Spécialité(s)
Résumé

Parfois, on se fixe des objectifs tout en sachant que ce n'est pas vraiment la bonne façon de faire, mais que l'approche visée pourrait être originale, amusante et instructive. Dans cette catégorie de fausses bonnes idées, nous avons le fait de vouloir utiliser un matériel PCIe directement depuis l'espace utilisateur, un peu comme on met en œuvre la libUSB pour un périphérique non directement pris en charge par un pilote noyau. La victime supposée de cette aventure est une carte CH368L, qui en soi est déjà relativement atypique...

Les listes de lecture

Python niveau débutant

9 article(s) - ajoutée le 01/07/2020
Vous désirez apprendre le langage Python, mais ne savez pas trop par où commencer ? Cette liste de lecture vous permettra de faire vos premiers pas en découvrant l'écosystème de Python et en écrivant de petits scripts.

Au pays des algorithmes

11 article(s) - ajoutée le 01/07/2020
La base de tout programme effectuant une tâche un tant soit peu complexe est un algorithme, une méthode permettant de manipuler des données pour obtenir un résultat attendu. Dans cette liste, vous pourrez découvrir quelques spécimens d'algorithmes.

Analyse de données en Python

10 article(s) - ajoutée le 01/07/2020
À quoi bon se targuer de posséder des pétaoctets de données si l'on est incapable d'analyser ces dernières ? Cette liste vous aidera à "faire parler" vos données.
Plus de listes de lecture