Remi COLLET nous a gratifié de l'une de ces présentations comme il sait le faire: Aborder des sujets qui touchent le tréfonds des systèmes GNU/LINUX pour les rendres accéssibles aux simples utilisateurs que nous sommes.
Après une parenthèse très ludique: «Sortons tous, l'alarme incendie est déclenchée» qui nous a fait déviée sur l'arrivée du logiciel propriétaire STEAM sur nos systèmes (image de la reconnaissance de nos systèmes dans le grand monde de l'informatique grand public), les choses sérieuses ont été abordés.
De «Init» à «System D»
Il faut savoir que le système de démarrage et de gestion des démons / services (programmes d'arrière plan qui vont gérer des comportements spécifiques: Bluetooth, réseau. gestion d'alimentation…) est une version adapté et libre, d'une technologie qui date du début des années 80. Aujourd'hui, elle montre les limites de som adaptabilité aux configurations récentes.
System D vient ici pour le remplacer, avec pour objectif de simplifier le travail des administrateurs systèmes, de gérer le démarrage de modules simultanément, d'augmenter globalement la sécurité et de mieux gérer les problèmes, ou encore de prendre en charge l'écriture des journaux systèmes et d'intégrer la gestion des périphériques à chaud.
Démarrage
La où Init utilise des scripts Bash parfois assez complexe, System D va avoir un simple fichier de description contenant juste quelques informations utiles tel que : les chemins et nom des binaires, mais surtout les dépendances en services d'un service donné (exemple: le serveur web a besoin que le service réseau soit lancé).
Alors que Init se contente de lancer l'un après l'autre les différents services dans l'ordre indiqué pour l'administrateur. System D se charge lui même de définir la priorité de lancement mais, utilise la capacité des ordinateurs à faire plusieurs choses à la fois pour démarrer simultanément plusieurs services.
System D effectue un démarrage beaucoup plus rapide, mais ce n'est qu'«un effet collatéral non recherché.
Plus sécurisé
System D va isoler les différents services qu'il va lancer, évitant qu'un service devenu fou ou corrompu n'ai acces aux autres services. Cette isolation permet aussi de s'assurer que l'arrêt d'un service provoque bien l'arrêt de tout ces composants, sans laisser de résidants en mémoire.
Il est étudié d'étendre ce principe d'isolation et de restriction d'accès aux sessions graphiques, mais aussi aux applications elle même.
On peut aussi imaginer, dans l'avenir, lancer la navigation web, qui sera automatiquement isolé. Et donc, même si une faille de sécurité critique touchait la navigation, il n'aurait de toute façon accés qu'a quelques ressources limités: l'Accés réseau, la gestion de sa propre configuration, le dossier de téléchargement qui lui est dédié.
Un pas de plus dans la sécurité de nos machines.
Encore plus
Mais la course aux fonctionnalités ne s'arrête pas la.
UDEV, Le système qui permet la connexion, et surtout la reconnaissance de périphériques à chaud (ordinateur allumé), ce qui est maintenant courant avec des technologies, tel que l'USB, est maintenant fusionné avec System D.
Les journaux systèmes, actuellement gérés par un service indépendant, serait relayé à System D, qui dans son rôle de chef d'orchestre est tout indiqué pour consigner les évènements. On en profite alors pour remettre un peu d'ordre et indiquer les processus émetteurs des messages. Finalement, System D prévoit aussi de signer les LOG pour vérifier une éventuelle corruption de ceux-ci.
Il est également prévu d'intégrer un système complémentaire à CRON, qui permettrais l'éxécution d'action suivant différents événements.
Aujourd'hui ou demain
System D est l'avenir du démarrage et de la gestion de nos systèmes GNU/LINUX. Fedora y est maintenant (presque) intégralement et les autres distributions suivent. Seul Debian ne le prévois pour le moment qu'en option (System D utilise des spécificité du Noyau Linux, et la distribution debian utilise aussi d'autres noyaux tel BSD ou HURD) et Ubuntu qui n'y passe que partiellement, gardant UPSTART, leur projet maisons pour le démarrage. (Mais cela est il vraiment étonnant ?)