25 septembre 2024

PREEMPT_RT : Real Time Linux fait enfin partie du noyau Linux

Realtime Linux entre officiellement dans le noyau Linux avec la version 6.12, apportant des fonctionnalités en temps réel pour les applications industrielles et embarquées critiques.

Linux en temps réel

Le paysage logiciel open source est parsemé de projets visant à améliorer et optimiser le système d'exploitation Linux dans différents domaines. L'un d'entre eux, qui a connu une longue évolution, est le projet Real Time Linux (RTL), dont l'objectif principal est de garantir la capacité du système à répondre à des événements ou à réaliser des opérations dans des intervalles de temps prédéterminés. Le patch qui rend tout cela possible s'appelle PREEMPT_RT, et la grande nouveauté de 2024 est que cela sera enfin inclus dans la ligne principale du noyau Linux à partir de la version 6.12.

Cette inclusion représente un tournant important pour le projet, non seulement pour les implications techniques, mais aussi pour le long voyage auquel il a dû faire face. Après près de 20 ans de débats, de défis techniques, de ressources limitées et de support marginal, le noyau Linux intégrera officiellement une fonctionnalité requise par des niches industrielles et de développement spécifiques. Voyons maintenant ce que signifie exactement Real Time Linux, pourquoi il a été si difficile de l'intégrer dans le noyau et quels en seront les impacts futurs.

Qu’est-ce que Linux en temps réel ?

Avant d'aborder le sujet de l'inclusion du correctif PREEMPT_RT dans le noyau Linux, il est important de comprendre ce qu'est Real Time Linux et pourquoi il est si pertinent dans certains domaines.

Un système d'exploitation en temps réel (Real-Time Operating System, ou RTOS) est un système conçu pour effectuer des tâches dans des délais spécifiques, garantissant que les opérations critiques sont effectuées de manière fiable dans des intervalles de temps précis. En d’autres termes, les systèmes temps réel sont optimisés pour répondre aux événements avec une latence extrêmement faible et prévisible.

Linux et temps réel

Linux, dans sa configuration standard, n'est pas un système d'exploitation temps réel. Bien qu'il soit idéal pour un large éventail d'applications, ses capacités à gérer des opérations critiques en temps réel sont limitées sans modifications significatives. C'est là qu'intervient le patch PREEMPT_RT.

PREEMPT_RT est une série de correctifs qui modifient le noyau pour améliorer la préemption (préemption), permettant une gestion plus précise des processus et réduisant considérablement la latence du système. La préemption, en général, est la capacité d'interrompre l'exécution d'un processus pour permettre l'exécution d'un autre processus plus prioritaire. Dans le contexte des systèmes temps réel, cette caractéristique est fondamentale : les opérations critiques doivent être réalisées sans retards inattendus.

Sans PREEMPT_RT, Linux peut gérer plusieurs tâches simultanément, mais il ne peut pas garantir qu'une tâche donnée sera terminée dans un délai défini. Avec PREEMPT_RT, cependant, vous obtenez une configuration du noyau qui garantit exactement cela, faisant de Linux une plate-forme adaptée aux applications temps réel critiques telles que :

  • Systèmes embarqués dans les automobiles.
  • Équipement médical.
  • Systèmes de contrôle industriels.
  • Applications robotiques.

Tout système dont les opérations retardées pourraient entraîner de graves conséquences, telles que des erreurs lors d'opérations chirurgicales, des dysfonctionnements dans les chaînes de production industrielle ou des problèmes de sécurité dans les véhicules autonomes, peut bénéficier d'un noyau optimisé pour le temps réel.

Le long chemin vers l’inclusion

L'un des aspects les plus intéressants de l'intégration de PREEMPT_RT dans le noyau Linux est le temps que cela a pris : près de 20 ans. Le projet Real Time Linux est né au début des années 2000, mais ce n'est qu'avec la sortie du noyau Linux 6.12 que le correctif a finalement été inclus dans la ligne principale.

Les défis techniques

Le premier défi qui a retardé l’inclusion de PREEMPT_RT était purement technique. Alors que Linux est connu pour sa modularité et sa capacité à prendre en charge les correctifs tiers, la nature du correctif PREEMPT_RT a nécessité de profonds changements dans le fonctionnement interne du noyau. Le noyau Linux est conçu pour être générique et optimisé pour un large éventail d'utilisations, des serveurs aux appareils de bureau et aux systèmes embarqués. Cette approche générique n’est cependant pas immédiatement compatible avec les besoins des systèmes temps réel, où la prévisibilité des opérations est essentielle.

L'intégration de PREEMPT_RT a nécessité un certain nombre de compromis et d'optimisations qui ont dû être soigneusement étudiés pour éviter de compromettre les performances globales du noyau. Le défi était d'intégrer le correctif au noyau sans dégrader les performances des systèmes non temps réel. Les difficultés techniques ont donc rallongé les délais de révision et de développement.

Manque d'intérêt initial

Une autre raison pour laquelle l'inclusion a pris autant de temps est liée à la politique et aux priorités de la communauté Linux. Bien que le correctif PREEMPT_RT ait présenté des avantages évidents pour certaines applications industrielles et scientifiques, celles-ci ne représentaient qu'un faible pourcentage de la base d'utilisateurs Linux. La plupart des utilisateurs de Linux utilisent le système pour des serveurs, des ordinateurs de bureau et des appareils mobiles, pour lesquels les exigences en temps réel ne sont pas critiques.

Depuis de nombreuses années, la communauté de développement du noyau a donc concentré ses ressources et son attention sur d'autres domaines, tels que l'évolutivité des centres de données, l'amélioration des performances globales et le support matériel. Les demandes en temps réel n'étaient pas considérées comme une priorité pour la plupart des développeurs, ce qui ralentissait encore davantage la progression de PREEMPT_RT.

Ressources limitées et facteur économique

Un autre obstacle était représenté par les ressources économiques et humaines disponibles pour le projet. Construire un correctif de cette ampleur et le maintenir à jour au fil du temps nécessite des ressources importantes, à la fois en termes de temps et d'argent. À long terme, le projet Real Time Linux a souffert d'un manque de financement adéquat pour soutenir une équipe de développement stable et suffisante pour surmonter tous les défis techniques. Cependant, grâce au soutien d'entreprises comme Intel, Red Hat, Google et d'autres qui ont reconnu la valeur de Linux dans les applications en temps réel, le projet a pu avancer.

La révolution avec le noyau Linux 6.12

La version 6.12 du noyau Linux représente enfin un tournant. Après des années de discussions, de correctifs et de tests, le correctif PREEMPT_RT sera intégré à la ligne principale, ce qui signifie qu'il fera officiellement partie du noyau et ne nécessitera plus de correctifs externes pour être utilisé.

Il s'agit d'une étape importante non seulement pour le projet Real Time Linux, mais aussi pour l'ensemble de l'écosystème Linux. La présence de fonctionnalités temps réel directement dans le noyau principal ouvre de nouvelles possibilités pour le développement d'applications critiques, notamment dans les secteurs où Linux n'est pas encore largement adopté.

Impacts et implications

L'inclusion de PREEMPT_RT dans le noyau a plusieurs implications :

  1. Un meilleur accompagnement à long terme: Avec le patch intégré au noyau principal, il sera plus facile de le maintenir à jour et compatible avec les nouvelles versions du noyau. Les développeurs n'ont plus à se soucier de l'application et de la gestion de correctifs distincts pour obtenir des fonctionnalités en temps réel.
  2. Adoption plus large: Les entreprises et les développeurs qui ont besoin de fonctionnalités en temps réel seront plus enclins à choisir Linux comme système d'exploitation pour leurs projets, sachant que le support est intégré et officiel.
  3. Bénéfices pour le monde embarqué et industriel: Des secteurs tels que l'automatisation industrielle, l'automobile et la robotique bénéficieront d'un noyau Linux avec support en temps réel, améliorant la fiabilité et les performances de leurs applications critiques.
  4. Effets secondaires potentiels pour les ordinateurs de bureau: Bien que PREEMPT_RT soit principalement destiné aux systèmes embarqués et aux applications spécialisées, son inclusion dans le noyau principal pourrait également avoir des implications pour les utilisateurs de bureau. Cependant, son activation sur des appareils de bureau ou portables n'est pas recommandée, car elle pourrait entraîner des inefficacités ou des problèmes de gestion des ressources, comme le soulignent plusieurs analyses.

Temps réel précédent comme QNX

Avant l'inclusion de PREEMPT_RT dans le noyau Linux, les systèmes d'exploitation temps réel tels que QNX ils dominaient des secteurs critiques tels que l’automobile, la robotique et l’automatisation industrielle. QNX, développé depuis les années 80, est réputé pour sa fiabilité et sa capacité à gérer des opérations en temps réel avec précision et une faible latence. Cependant, avec l'intégration de Linux Real-Time dans le noyau principal, nous pourrions assister à une remise en question progressive de la domination de QNX dans les années à venir. Linux, grâce à sa nature open source et à son vaste écosystème de développement, pourrait offrir une alternative plus flexible et personnalisable. Même si QNX reste bien implanté, Linux, avec le soutien d'une communauté de développement large et dynamique, pourrait gagner du terrain et, d'ici quelques années, devenir une solution privilégiée pour de nombreuses entreprises, grâce à des coûts inférieurs et à de plus grandes possibilités d'innovation par rapport aux systèmes propriétaires. des solutions comme QNX.

Conclusions

L'intégration de PREEMPT_RT dans le noyau Linux 6.12 marque la fin d'une longue bataille commencée au début des années 2000. Ce développement représente non seulement une victoire pour le projet Real Time Linux, mais ouvre également de nouvelles possibilités d'adoption de Linux dans des industries critiques. nécessitent des temps de réponse garantis et des latences très faibles.

Pour ceux qui utilisent Linux dans des contextes généraux de bureau ou de serveur, ce changement n'aura pas d'impact direct. Cependant, pour les secteurs qui dépendent d'applications en temps réel, comme l'automobile, l'automatisation industrielle, la robotique et les dispositifs médicaux, cette inclusion représente une étape importante, positionnant Linux comme une plate-forme plus robuste et plus compétitive dans ces secteurs également.

L'inclusion du support en temps réel dans le noyau Linux principal restera probablement dans les mémoires comme l'un des développements les plus significatifs dans l'évolution de Linux, un système d'exploitation qui continue de se montrer polyvalent et capable de s'adapter aux besoins les plus disparates, depuis l'utilisation quotidienne. à des applications plus critiques et avancées.

Vous avez des doutes ? Vous ne savez pas par où commencer ? Contactez-nous !

Nous avons toutes les réponses à vos questions pour vous aider à faire le bon choix.

Discute avec nous

Discutez directement avec notre support avant-vente.

0256569681

Contactez-nous par téléphone pendant les heures de bureau 9h30 - 19h30

Contactez-nous en ligne

Ouvrez une demande directement dans l'espace contact.

INFORMATIONS

Managed Server Srl est un acteur italien leader dans la fourniture de solutions système GNU/Linux avancées orientées vers la haute performance. Avec un modèle d'abonnement peu coûteux et prévisible, nous garantissons que nos clients ont accès à des technologies avancées en matière d'hébergement, de serveurs dédiés et de services cloud. En plus de cela, nous proposons des conseils système sur les systèmes Linux et une maintenance spécialisée en SGBD, sécurité informatique, Cloud et bien plus encore. Nous nous distinguons par notre expertise dans l'hébergement de CMS Open Source de premier plan tels que WordPress, WooCommerce, Drupal, Prestashop, Joomla, OpenCart et Magento, soutenus par un service d'assistance et de conseil de haut niveau adapté aux administrations publiques, aux PME et à toutes tailles.

Red Hat, Inc. détient les droits de Red Hat®, RHEL®, RedHat Linux® et CentOS® ; AlmaLinux™ est une marque commerciale d'AlmaLinux OS Foundation ; Rocky Linux® est une marque déposée de la Rocky Linux Foundation ; SUSE® est une marque déposée de SUSE LLC ; Canonical Ltd. détient les droits sur Ubuntu® ; Software in the Public Interest, Inc. détient les droits sur Debian® ; Linus Torvalds détient les droits sur Linux® ; FreeBSD® est une marque déposée de The FreeBSD Foundation ; NetBSD® est une marque déposée de la Fondation NetBSD ; OpenBSD® est une marque déposée de Theo de Raadt. Oracle Corporation détient les droits sur Oracle®, MySQL® et MyRocks® ; Percona® est une marque déposée de Percona LLC ; MariaDB® est une marque déposée de MariaDB Corporation Ab ; REDIS® est une marque déposée de Redis Labs Ltd. F5 Networks, Inc. détient les droits sur NGINX® et NGINX Plus® ; Varnish® est une marque déposée de Varnish Software AB. Adobe Inc. détient les droits sur Magento® ; PrestaShop® est une marque déposée de PrestaShop SA ; OpenCart® est une marque déposée d'OpenCart Limited. Automattic Inc. détient les droits sur WordPress®, WooCommerce® et JetPack® ; Open Source Matters, Inc. détient les droits sur Joomla® ; Dries Buytaert détient les droits sur Drupal®. Amazon Web Services, Inc. détient les droits sur AWS® ; Google LLC détient les droits sur Google Cloud™ et Chrome™ ; Microsoft Corporation détient les droits sur Microsoft®, Azure® et Internet Explorer® ; La Fondation Mozilla détient les droits sur Firefox®. Apache® est une marque déposée de The Apache Software Foundation ; PHP® est une marque déposée du groupe PHP. CloudFlare® est une marque déposée de Cloudflare, Inc. ; NETSCOUT® est une marque déposée de NETSCOUT Systems Inc. ; ElasticSearch®, LogStash® et Kibana® sont des marques déposées d'Elastic NV. Hetzner Online GmbH détient les droits sur Hetzner® ; OVHcloud est une marque déposée d'OVH Groupe SAS ; cPanel®, LLC détient les droits sur cPanel® ; Plesk® est une marque déposée de Plesk International GmbH ; Facebook, Inc. détient les droits sur Facebook®. Ce site n'est affilié, sponsorisé ou autrement associé à aucune des entités mentionnées ci-dessus et ne représente en aucune manière aucune de ces entités. Tous les droits sur les marques et noms de produits mentionnés sont la propriété de leurs titulaires respectifs des droits d'auteur. Toutes les autres marques mentionnées appartiennent à leurs titulaires. MANAGED SERVER® est une marque déposée au niveau européen par MANAGED SERVER SRL, Via Enzo Ferrari, 9, 62012 Civitanova Marche (MC), Italie.

Retour en haut de page