Vers une plateforme Linux standardisé ?
Besoins existants
Au niveau des distributions Linux, il existe certains standards, mais
souvent certaines distributions préfèrent utiliser leurs propres
solutions qu'ils considèrent comme plus performantes.
Par exemple,
au niveau des paquets, on peut compter au minimum 2 grands types de
paquets: .deb sous Debian et les rpm de chez Red Hat.
Le même
exemple peut s'appliquer à l'organisation des dossiers sur le disque
dur. Certaines distributions respectent les standards existant (FHS) et
d'autres non.
Il est donc nécessaire de penser sérieusement à de
nouveaux standards et à étendre ceux existant pour pouvoir permettre à
toutes ces nouvelles distributions et technologies de communiquer entre
elles, conserver une bonne interopérabilité et éviter que chaque
distribution suive sa propre voix sans penser aux autres distributions.
A
l'heure actuelle, les différentes distributions partagent un noyau
commun (bien que patché maintes fois par les éditeurs) mais ne partagent
pas leurs technologies pour les couches supérieures du système
d'exploitation.
De plus, si Linux souhaite s'imposer dans un
milieu plus professionnel, il doit mettre en avant les valeurs
plébiscités par les entreprises comme l'échange des données,
l'interopérabilité et penser à la mutualisation. De plus, le switch
vers Linux doit être une solution parfaite, planifiée et qui se passera
sans problème car les entreprises préfèrent utiliser les technologies
qu'elles connaissent ou dont elles sont sûres du fonctionnement plutôt
que de switcher vers une plate-forme Linux où les standards existant ne
sont pas toujours respectés, ce qui pourrait empêcher certains
utilisateurs de communiquer entre eux.
Un autre problème dans le
milieu professionnel reste celui de la formation. En effet, à cause de
trop grandes différences entre toutes les distributions, pendant une
migration vers Linux, les futurs utilisateurs seront formés pour une
distribution Linux bien précise ce qui empêchera de changer de
distribution à moins de refaire une formation.
Sinon, un autre
problème qui pourrait être résolu avec l'utilisation de standards est
celui de la maintenance. En effet, il arrive souvent que ce soit une
seule équipe ou personne qui maintienne un projet, mais lorsque cette
personne quitte le projet, la maintenance peut vite devenir
problématique si on n'a pas utilisé de standards.
Ce même exemple
s'applique aussi dans le temps, car si on n'utilise pas de standard, il
est fort probable qu'une application ne fonctionne pas entre
différentes versions d'un OS hormis les différences inhérentes à l'OS.
L'utilisation d'un standard permet à coup sûr à une application d'être
pérenne dans le temps.
Si on regarde du côté de l'utilisateur
final, le plus important, l'utilisation de standards ne peuvent être
que bénéfique. L'objectif d'un utilisateur est de pouvoir lancer une
application sans avoir à penser technique. Mais souvent, dès
l'installation, des problèmes se posent : des librairies qui ne sont pas
au bon endroit, un type de paquet non supporté par le système. Si un
développeur pouvait coder une application sans se soucier des problèmes
de compatibilité face aux différents systèmes, cela permettrait déjà de
réduire la charge de travail de ce dernier, simplifierait le code, et
cela se reflèterait sur l'utilisateur final. Aujourd'hui, il est
difficile voir même impossible pour un développeur de construire une
application qui sera compatible pour toutes les distributions Linux. On
voit aujourd'hui beaucoup plus d'applications certifiée Debian ou Red
Hat que d'applications certifiées Linux. La solution à cela, c'est
l'utilisation de standards ouverts dans les applications mais surtout
au sein des différentes distributions Linux.
De plus, des standards
permettraient fortement de faciliter, voir même d'inciter, la migration de
certains utilisateurs étant sûr de pouvoir retrouver leurs marques,
leurs applications, et de pouvoir rapidement redevenir productif.
Les
objectifs des standards qui existent actuellement est d'éviter la
fragmentation de Linux avec trop de déclinaisons qui forcément créent
des incompatibilités, afin d'éviter que les dérives qui se sont produites
par le passé où chaque distribution était incompatibles avec les
autres, de faciliter le travail des développeurs en leur fournissant un
bagage de départ pour maximiser la compatibilité de leur applications,
mais cela permet aussi de faciliter énormément le portage
d'applications entre différents Linux, voir même entre différents OS.
Les
développeurs pourrait développer des applications en ne s'attardant pas
sur des fonctions de base qui pourraient déjà être définies par des
standards et se concentrer sur les fonctionnalités avancés.
Il y
aussi un élément important à ne pas négliger, c'est que l'utilisation
des standards permet de réduire énormément les coûts de production.