Accueil🇫🇷Chercher

Devicetree

Devicetree ou parfois device tree (terme anglais signifiant arborescence des périphériques), est une structure de donnée, décrivant les composants matériels d'un système informatique. Cela permet au système d'amorçage et au noyau de connaître la façon de communiquer et d'exploiter ces composants. Il s'agît en général notamment de la gestion de l'alimentation, du processeur, de la mémoire, des différents bus et périphériques.

Devicetree
Caractéristiques
Site web

Un des avantages d'avoir les définitions de communications avec les composants matériels disponibles dans les logiciels libres, est la possibilité de les réutiliser dans différents composants logiciels, tels que des noyaux, des pilotes ou des systèmes d'amorçage, d'architecture matérielle ou logicielle différentes.

Ce système est le principal utilisé sur les architectures de processeur ARM, RISC-V et d'autres. Il était autrefois également utilisé sur PowerPC[1].

Une couche d'abstraction matérielle, permet aux application d'accéder à ces périphériques sans ce soucier de ces informations.

Devicetree est notamment utilisé par le noyau Linux[2] et différents autres noyaux systèmes, ainsi que les systèmes d'amorçage U-Boot[1], Coreboot ou Libreboot.

Le BIOS utilisé sur les compatibles IBM PC et leurs dérivés, est par contre à source fermé et utilise des pilotes propriétaires, dont les spécifications ne sont pas publiées pour son amorçage. UEFI est une façon pour les constructeurs de proposer une interface au système sans avoir à ouvrir les spécifications de communication de leur matériel. Les projets comme LibreBoot propose de remplacer le BIOS de certaines carte mères et d'utiliser devicetree et de pilotes libres à la place, lorsque possible.

Les fichiers de Devicetree sont disponible sous diffĂ©rent formats[3] :

  • DTS, anglais : Device Tree Syntax, les sources lisibles par les humains des dĂ©finitions du devicetree, ce format est communĂ©ment appelĂ©, anglais : Flattened Device Tree (FDT, arborescence des pĂ©riphĂ©riques aplatie), une fois ouvert par le noyau, qui va le dĂ©ployer au sein de sa mĂ©moire interne, il devient l'anglais : Expanded Device Tree (EDT, arborescence des pĂ©riphĂ©riques Ă©tendue) ;
  • DTB, anglais : Device Tree Blob, forme compacte binaire utilisĂ©e, ce format est communĂ©ment appelĂ©.

La commande dtc permet de compiler le format DTS vers le format DTB et réciproquement de décompiler les fichiers DTB en fichier DTS.

Annexes

Notes et références

  1. (en) « Devicetree Control in U-Boot », sur U-Boot
  2. Grant Likely, « Linux and the Devicetree », sur Kernel.org
  3. (en) « Device Tree What It Is », sur elinux.org

liens externes

Cet article est issu de wikipedia. Text licence: CC BY-SA 4.0, Des conditions supplémentaires peuvent s’appliquer aux fichiers multimédias.