Serveur X
Par Laurent, dimanche 14 janvier 2007 à 17:11 :: TechnoloGeek :: #98 :: rss
Non, ce post ne parle pas de sexe, mais du serveur X, qui est le logiciel qui s'occupe, principalement, de l'affichage sur certains OS. Désolé, vous pouvez passer votre chemin.
Je vous préviens tout de suite, je ne connais rien au fonctionnement de X, mais voilà comment moi, utilisateur lambda, je perçois les choses (donc ce post est potentiellement destiné à des développeurs de X (mais pas que) pour avoir un feed-back utilisateur).
Donc, de ce que j'en sais, le serveur X est la couche logicielle qui fait abstraction de la couche matérielle concernant les écrans, les cartes graphiques, les claviers, les souris, etc. Il est basé sur le protocole réseau X11. Réseau parce que l'application cliente (qui a besoin de faire afficher quelque chose) peut se trouver sur une machine autre que le serveur (qui est relié à l'écran, clavier, souris). Je dois dire ue je ne suis pas très certain que cette fonctionnalitée soit très utilisée.
Comme c'est un protocole ouvert, n'importe qui (avec le temps et les capacités nécessaires) peut faire son implémentation du protocole. Actuellement il y a deux implémentations de référence : XFree86 et X.Org (ce dernier étant un fork du premier suite à un problème de licence).
De ce que j'ai pu comprendre, ça fait des années que tout le monde se plaints de X, et que tout le monde discute et que personne ne se met d'accord sur quoi faire. Du coup il semblerait que pas mal de monde ait été surpris quand Novell a sorti XGL, une extension à X qui permet d'utiliser l'accélération 3D de la carte graphique pour faire des trucs sympa (par sympa entendre "pas forcément utile mais c'est beau", et ça a de la valeur (je préfère travailler sous windows que sous CDE, je préfère KDE à windows, et je préfère Mac OS X à KDE juste parce que c'est plus joli alors que je peux faire la même chose avec tous (bon, c'est avec kde que je peux faire le plus de choses quand même (ça vous plaît les parenthèses imbriquées ? Parce que moi oui (la question est : ai-je mis autant de parenthèses fermantes qu'ouvrantes ? (oui je me fais chier quand je tapes mes billets)))))).
En ce qui me concerne je trouve que X est quelque chose qu'il faut tuer et enterrer. Mon premier problème avec ma première installation de GNU/Linux ? Pas d'affichage à cause du serveur X. Idem pour mon premier problème avec ma seconde tentative de linux. Il n'y a que récemment où l'installation des distributions a rendu l'installation de X transparente et avec très peu de soucis.
Mais voilà, je suis un utilisateur lambda et j'ai 3 écrans branchés sur ma machine (ce qui du coup fait que je ne suis plus trop un utilisateur lamda), comment je configure ça ? Et bien sous windows ou Mac OS X, c'est super simple et direct. Sous linux, je me tape le fichier de conf à la mano parce que je n'ai pas d'interface graphique qui me gère ça bien et simplement, et je redémarre le serveur X (ce qui m'oblige en même temps à quitter ma session).
On peut se demander comment ils ont fait chez Apple, puisque OS X est un unix. Et bien ils ont fait le choix simple et rapide de dégager le serveur X et de faire autre chose à la place (tout en laissant la possibilité de faire tourner un serveur X pour les applications du monde unix qui en ont besoin, et ce de manière transparente pour l'utilisateur). Tout ceux qui ont utiliser Mac OS X savent comme c'est beau, que l'accélération matérielle n'est pas une option. On pourra dire que c'est plus facile pour Apple car ils maîtrisent le matériel, c'est vrai, mais il n'y a pas que ça. Et puis j'ai envie de dire que pour prendre de l'avance il ne faut pas attendre les retardataires. C'est comme la backward compatibility, des fois il faut arrêter les frais.
Je dois ajouter encore que pour mes 3 écrans j'ai fait attention à prendre les 3 mêmes, pour les cartes graphiques, j'ai 3 cartes avec des chipset nvidia assez récent (mais loin d'être du haut de gamme). Et bien malgré tout celà, j'ai un problème : l'accélération matérielle ne fonctionne pas, et là ce n'est pas un problème de chez X.Org mais de chez nvidia qui fait des drivers de merde (déjà qu'ils ne sont pas libres, le minimum ça aurait été qu'ils fonctionnent comme ça on aurait pas envie de changer des trucs dedans). La communauté Open Source est capable de faire de très bon produits, si j'en crois certaines statistiques, il y a 1500 développeurs actifs sur le noyau Linux. Je ne sais pas combien ils sont chez XFree86 ou X.Org (beaucoup moins j'imagine), mais je pense qu'ils peuvent faire quelque chose. Si chez Apple ils ont réussi à le faire ainsi que le portage de toutes leurs applications (bon, il est aussi possible qu'à cette époque là c'était plus de la réécriture complète que du portage vu qu'ils changeaient tout le système), je pense que ça doit être possible dans le domaine du libre.
Il semblerait qu'à une époque des gens essayaient de fournir une alternative, mais j'ai l'impression que cette alternative est morte à présent.
Tout ça pour dire que pour une partie du système omni présente, que j'ai sous les yeux en permanences, il y a encore du boulot à faire pour avoir un truc bien. Après je dois dire que X ne m'intéresse pas, donc s'il n'y a rien de bien exacte dans cet article c'est parce que je n'ai pas fait de recherches, c'était juste pour donner mon avis, et que X me fait chier.


Commentaires
Aucun commentaire pour le moment.
Ajouter un commentaire
Les commentaires pour ce billet sont fermés.