- systemd est un ensemble intégré d’applications liées à l’administration du système, qui remplace le processus
init traditionnel et inclut diverses fonctions comme la gestion des sessions utilisateur, la gestion des périphériques, la journalisation, la planification temporelle, etc.
- La plupart des utilisateurs de Linux ne s’intéressent pas aux avantages et inconvénients de systemd, mais certains y sont fortement opposés ou, au contraire, le soutiennent activement.
- Les distributions Linux grand public ont adopté systemd, principalement en raison de ses avantages dans les environnements de bureau classiques.
Problèmes dans Linux embarqué
- Dans les systèmes embarqués, les avantages de systemd peuvent au contraire devenir des inconvénients.
- Si l’on prend comme exemple l’utilisation mémoire sur un Raspberry Pi 3B, systemd consomme plus de ressources que SystemV init.
- Les démons de journalisation de systemd, comme
systemd-journald, consomment eux aussi beaucoup de ressources.
- Dans les environnements embarqués, des alternatives plus légères sont nécessaires, et systemd n’est pas optimisé pour ce type de contexte.
Complexité de systemd et temps de démarrage
- systemd peut réduire le temps de démarrage, mais dans les systèmes embarqués, il peut au contraire l’augmenter.
- La complexité et les fonctionnalités de systemd sont utiles dans des environnements généraux, mais elles sont souvent inutiles dans l’embarqué.
Absence d’alternatives
- Pour beaucoup de services remplacés par systemd, il existe dans l’embarqué des alternatives plus petites et plus rapides, mais pour certains, il n’existe désormais plus d’alternative.
- Par exemple, le démon
udev a été intégré au projet systemd, et il n’existe presque plus d’alternatives indépendantes.
Diffusion de systemd et recul des alternatives
- systemd inclut de nombreuses fonctions, ce qui est pratique pour les mainteneurs de distributions.
- À mesure que systemd absorbe de plus en plus de fonctions, la motivation pour maintenir des alternatives diminue.
- Cela peut poser problème lorsque systemd n’est pas adapté à un environnement embarqué.
Conclusion
- systemd peut être moins efficace dans l’embarqué que les alternatives traditionnelles.
- Il devient de plus en plus difficile de trouver des distributions Linux grand public qui n’utilisent pas systemd.
- Avec la diffusion de systemd, Linux se dirige vers un avenir où il sera difficile de l’imaginer sans systemd.
- Il faut être prêt à développer ou maintenir des alternatives, et continuer à soutenir les distributions qui n’utilisent pas systemd.
4 commentaires
Est-ce vraiment seulement systemd…
L’
initde busybox est un excellent substitut à systemd pour les appareils embarqués.Et sur un système contraint comme un appareil embarqué, il n’est pas nécessaire d’utiliser
udev: il suffit d’inclure des nœuds de périphérique fixes dans le système de fichiers racine.Dans mon cas, c’est vraiment une exception parmi les exceptions, mais comme j’installe Ubuntu sur une Galaxy Tab et que j’y utilise VS Code, il m’arrive assez souvent d’avoir envie de pleurer à cause de systemd...
Commentaires sur Hacker News
systemdrésout de nombreux problèmes, et la communauté est très réactive et serviableZephyrouFreeRTOSOpenEmbedded/Yocto,DevuanetGentooproposent plusieurs systèmes d’initRustysdest un gestionnaire de services qui reproduit en partie le fonctionnement desystemdsystemdsur diverses plateformesLes personnes qui préfèrent
systemdsont principalement des responsables de distributionsystemdfournit divers utilitaires système dans un seul gros buildLa philosophie Unix consiste à résoudre les problèmes avec de petits outils
systemdétait petit au départ, mais aujourd’hui il permet même la visioconférence via le webrunitest excellent pour superviser les applications et les servicesBusyBoxet très légerIl est possible d’exécuter un système embarqué sans
udevLe
RPitransforme le format d’une carte de contrôle industrielle en desktopChimera Linuxexplore une direction intéressante pour la gestion des services ainsi que la gestion des connexions et des siègessystemddes extensionsgnulibcetgccpose problèmeLa taille d’installation de
systemdest le plus gros problème sur Linux embarquésystemdde 5 Mo est inefficacesystemdpose problème sur Linux embarqué en utilisant 250 Mo de RAMSysVInitdépend d’utilitaires externes pour démarrer et arrêter les processus