Translation(s) : English - Français - Italiano


Présentation de la gestion de périphériques

Cette page vise à vous donner une présentation générale des différents sous-systèmes utilisés dans Linux pour gérer les périphériques. Avec un peu de chance, elle vous donnera une vue d'ensemble suffisante pour mieux comprendre les pages du manuel et la documentation des sous-systèmes particuliers. Elle ne vous dira pas comment créer des périphériques ou faire exécuter des scripts quand un nouveau périphérique est ajouté.

Il y a une hiérarchie de plusieurs systèmes. Cela ressemble à ça :

Le Noyau (Kernel)

Le noyau et les modules du noyau pilotent les périphériques.

-sysfs

Sysfs est un système de fichier virtuel fourni par le noyau Linux 2.6. Sysfs exporte, depuis le modèle de périphérique du noyau, des informations sur les périphériques et leurs pilotes vers l'espace utilisateur ; il est aussi utilisé pour la configuration.
Voir http://fr.wikipedia.org/wiki/Sysfs

Udev et hal utilisent sysfs dans leur fonctionnement.

--hotplug

Le noyau, quand il voit un nouveau matériel, appelle le script /sbin/hotplug en lui passant divers arguments. Les scripts chargent les modules du noyau ainsi que les scripts des utilisateurs quand un nouveau matériel est détecté.

---udev

Nouveauté du noyau 2.6, udev automatise la création et le retrait des périphériques dans /dev. udev remplace devfs utilisé dans le noyau 2.4.

Tiré de la page du manuel consacrée à udev : "Faisant partie du sous-système hotplug, udev est exécuté si un périphérique du noyau est ajouté ou retiré du système. A la création d'un périphérique, udev lit le répertoire sysfs de ce périphérique pour recueillir ses attributs. Ces attributs peuvent être utilisés comme clé pour attribuer un nom unique à ce périphérique".

---hal

Extrait du fichier /usr/share/doc/hal/NEWS.gz.

HAL signifie niveau d'abstraction du matériel ; il a pour vocation de fournir à tout moment une liste à jour des périphériques rattachés au système. HAL cherche à comprendre à la fois les périphériques physiques (comme un périphérique PCI ou USB) et les classes des périphériques physiques (tel que input, réseau et bloc) ; il permet de fusionner les informations des périphériques dans des fichiers spécifiques à chaque périphérique.

HAL fournit une interface de programmation (API) de réseau à travers D-BUS pour interroger les périphériques et notifier les changements. Finalement, HAL fournit une sorte de surveillance des périphériques (dans un mode non-intrusif) ; actuellement la détection des connexions ethernet et le montage des volumes sont contrôlés.

Tout cela est décrit dans les spécifications de HAL.

-/dev

L'inscription dans /dev donne aux pilotes du noyau l'accès aux périphériques. Ces inscriptions peuvent être réalisées manuellement en utilisant des utilitaires en ligne de commande ou par un utilitaire automatisé comme DevFS ou udev.


CategoryHardware