Je suis Charlie

Autres trucs

Accueil

Seulement les RFC

Seulement les fiches de lecture

Ève

État actuel du Linux Driver Project

Première rédaction de cet article le 26 avril 2008


Un rapport de Greg Kroah-Hartman publié sur lwn.net le 7 avril fait le point sur l'état du Linux Driver Project (LDP), un projet qui vise à augmenter le nombre de pilotes de périphériques pour le noyau Linux. Ce rapport est très optimiste, est-ce justifié ?

Greg Kroah-Hartman résume la situation ainsi :

  • Linux a déjà plus de pilotes que n'importe quel autre noyau dans l'histoire.
  • Il n'y a pratiquement plus de matériel non géré par Linux.
  • Le LDP a peu de travail car presque tout se fait tout seul sans lui.

Tout le monde partage t-il cette vision optimiste ? Non, comme le montre, par exemple, la discussion qui a suivi sur le site. Les remarques critiques les plus fréquentes concernent les performances et l'étendue des fonctions gérées. Par exemple, dans certains cas, le pilote Linux ne fait que du polling et délivre donc des performances inférieures au pilote Windows qui accepte les interruptions. Ou bien le pilote Linux ne gère pas telle ou telle fonction comme la 3D pour une carte graphique. Dans les deux cas, un Linuxien zélé peut dire « Ce matériel fonctionne sous Linux » alors qu'il marche moins bien que sous Windows.

Mais Greg Kroah-Hartman oublie également d'autres problèmes fréquents :

  • Le pilote est parfois moins fiable que sous Windows (le serveur X sur ma machine de bureau gèle de temps en temps complètement, avec le pilote libre de la carte nVidia NV18 GeForce4 AGP, ce qui ne semble pas arriver avec le pilote non-libre).
  • Le pilote est bien disponible dans le noyau Linux, par exemple il a été accepté dans le dépôt git d'Andrew Morton mais il n'a pas encore atteint les utilisateurs ordinaires, qui ne compilent pas eux-même leur noyau à partir d'un dépôt git, mais dépendent d'un système d'exploitation stable, pas toujours ultra-récent. Dans le monde des PC, où les changements sont très rapides, ce problème est un des plus fréquents. Sur le dernier PC que j'ai acheté neuf chez Darty, ni la carte Ethernet gigabit Realtek RTL8111/8168B PCI, ni la carte graphique Intel Q33/Q35/G33 n'étaient reconnues par une Debian stable, alors qu'un noyau Linux récent installé à la main les accepte. Mais beaucoup d'utilisateurs n'ont pas envie de faire une telle manipulation.
  • Enfin, certains pilotes sont non libres et le matériel ne fonctionne que si l'utilisateur accepte de se retrouver, comme sur Windows et sur MacOS, avec un logiciel privateur. Parfois, le logiciel se prétend libre mais charge du code non libre présent sous forme d'un gros fichier binaire.

Greg Kroah-Hartman, pour mieux appuyer sa démonstration, ne parle que du noyau proprement dit et « élimine » les cartes graphiques, une source fréquente de problèmes, car leurs pilotes sont en général dans X.Org, pas dans le noyau, et les scanneurs et imprimantes, pour la même raison.

Donc, on ne peut certainement pas dire que la situation des pilotes de périphérique avec Linux soit aussi rose que la peint cet article. Mais la faute à qui s'il y a tant de problèmes ? Il faut se rappeler que l'origine du mal n'est pas à chercher du côté des développeurs Linux comme Greg Kroah-Hartman, mais plutôt du côté des entreprises qui ne produisent pas de documentations pour leurs matériels, ou bien exigent la signature de NDA pour y avoir accès, quant elles ne refusent pas purement et simplement tout pilote libre, de peur que la lecture du source ne révèle comment fonctionne leur matériel.

Version PDF de cette page (mais vous pouvez aussi imprimer depuis votre navigateur, il y a une feuille de style prévue pour cela)

Source XML de cette page (cette page est distribuée sous les termes de la licence GFDL)