Sais-tu que pendant que tu as ouvert ton navigateur pour lire ceci… ton ordinateur a décidé de donner la priorité à ce processus en laissant beaucoup d’autres derrière lui ? Veux-tu savoir comment il fait ? Qu’est-ce que cela signifie lorsque Linux devient un RTOS ? Eh bien, lis la suite et je vais te montrer. Et attention, car si tu t’intéresses au monde de l’OS des pingouins, nous allons te raconter plus d’un fait que tu ne connais peut-être pas...💥.
Le planificateur Linux fonctionne comme dans l’exemple ci-dessus : en gros, il décide dans quel état mettre les processus (en cours d’exécution, interruptible, non interruptible, zombie ou arrêté) et leur ordre d’exécution pour améliorer ton expérience. Pour leur ordre d’exécution, chaque processus a un niveau de priorité. Imaginons qu’un processus d’arrière-plan s’exécute et que tu ouvres le navigateur. Le planificateur interrompra ce processus d’arrière-plan et concentrera les ressources sur l’ouverture du navigateur, en veillant à ce qu’il s’exécute rapidement et efficacement.
Expropriation sur Linux🐧 ? Ce n’est pas ce à quoi tu penses… L’expropriation est une fonctionnalité fondamentale, car elle permet d ‘interrompre les processus si un processus plus prioritaire fait irruption. Dans la version 2.6 de Linux, la possibilité d’exproprier les processusa été ajoutée au noyau, c’est-à-dire que le noyau peut interrompre les processus. Les systèmes qui ne sont pas préemptibles doivent mettre fin à la tâche en cours pour passer à la suivante.
Dans le cas de Linux, depuis la version 2.6.24, c’est le Completely Fair Scheduler (CFS) qui est utilisé comme ordonnanceur. Ce planificateur est régi par la garantie d’un accès “équitable” au processeur.
Il existe deux types de priorités : statiques et dynamiques.
Le système d’exploitation tient à jour deux listes de programmes :
Lorsqu’un programme utilise son temps, le système calcule le temps dont il devrait disposer la prochaine fois et le déplace dans la deuxième liste. Lorsque la première liste devient vide, les deux listes sont échangées. Cela permet au système de fonctionner efficacement. Linux 2.6, avec le noyau entièrement préemptible, a considérablement amélioré la réactivité du système. Désormais, le noyau peut être interrompu sur des tâches de faible priorité pour répondre à des événements prioritaires.
PREEMPT_RT dans le noyau Linux
Grâce à une nouvelle mise à jour du noyau, Linux peut être contrôlé avec une précision millimétrique. Un RTOS signifie que le système sera précis pour les tâches critiques, comme dans les centres médicaux. Cependant, Linux n’étant pas prévu pour cela, le fait qu’il fasse désormais partie du noyau apporte certaines fonctionnalités, même si elles n’en font pas un RTOS.
Fonctionnalité | Amélioration |
---|---|
Une intégration simple et une maintenance simplifiée |
|
Stabilité et performances améliorées |
|
Accessibilité pour les développeurs |
|
Concurrence avec les systèmes dédiés |
|
Cas d’utilisation étendus |
|
Outre les problèmes financiers et le manque d’intérêt de la communauté pour une approche en temps réel de Linux, un problème technique s’est posé: le printk
. Printk es una función que imprime mensajes en el búfer de registro del kernel. El problema con esta función es que producía retrasos cada vez que se llamaba. Este retraso interrumpía el flujo normal del sistema, y alejado este problema, PREEMPT_RT se pudo incorporar al kernel.
Pour l’utilisateur moyen: rien. Cependant, si tu es un développeur, cette innovation dans le noyau de Linux sera une avancée avec laquelle il faudra compter. Jusqu’à présent, les développeurs qui ont besoin d’une précision en temps réel optaient pour d’autres systèmes d’exploitation conçus pour cela. Avec la nouvelle fonction PREEMPT_RT intégrée au noyau Linux, cela ne sera plus nécessaire. Cette fonction permet à Linux d’arrêter n’importe quelle tâche pour donner la priorité à une demande en temps réel, ce qui est essentiel pour les applications qui exigent une faible latence.
Imaginons que tu utilises chez toi un assistant vocal qui contrôle à la fois l’éclairage et le système de sécurité. S’il détecte une intrusion alors que tu es chez toi, il devrait activer en priorité les alarmes et te prévenir immédiatement. Dans ce cas, les lumières ou la musique peuvent attendre ; ce qui compte vraiment, c’est ta sécurité. Cette capacité à réagir immédiatement dans les situations critiques peut faire toute la différence.
Comme nous l’avons vu dans le cas d’utilisation, les RTOS peuvent accomplir des tâches imprévues, et également les accomplir dans des délais spécifiques et prévisibles. Dans les charges de travail qui nécessitent de la précision, les RTOS jouent un rôle essentiel. En l’occurrence, on voit souvent des RTOS dans les applications IoT:
L’IA et l’apprentissage automatique jouent également un rôle clé dans les RTOS et l’IoT. Ils pourraient prédire des événements et favoriser une prise de décision rapide et efficace.
En bref, Linux Real Time va enfin devenir une réalité. L’intégration de Linux en tant que système d’exploitation en temps réel marque un tournant et ouvre de nouvelles perspectives pour les tâches critiques dans des secteurs tels que la santé, la robotique et l’IoT. Grâce à la fonction PREEMPT_RT intégrée au noyau, Ubuntu Linux garantit une plus grande précision. Cependant, il ne faut pas oublier que le système d’exploitation Penguin🐧 n’est pas 100 % RTOS, il n’a pas été conçu pour cela. Nous verrons donc si les entreprises adapteront la solution de Canonical à leurs besoins en temps réel, ou si elles continueront à opter pour d’autres solutions telles que FreeRTOS ou Zephyr. Tu veux continuer à te former sur Linux ? Nous te proposons des certifications officielles. Et si tu n’en as pas assez… nous nous adaptons à toi avec des formations personnalisées 👇.
Formation intensive sur les systèmes Linux
Linux est à l’ordre du jour… si tu ne veux pas rester à l’écart des dernières exigences technologiques, nous te recommandons nos cours Canonical Ubuntu 👇.
Peux-tu imaginer trouver des solutions à tes problèmes Linux, AIX, IBM i, etc... tout en…
📌 Tu t'intéresses à l'automatisation, à l'IA, etc. Tu es au bon endroit. Chez SIXE,…
Poste constamment mis à jour (basé exclusivement sur les opinions et les attentes de SIXE).…
Mon Power9 est-il obsolète, devons-nous passer à Power10 ou Power11 ? Arrête-toi un instant, ne…
Sais-tu que de nombreux systèmes AIX fonctionnent bien jusqu'à ce qu'ils cessent soudainement de fonctionner…
L'évolution de l'architecture Power d'IBM a fait l'objet d'un débat intense dans la communauté technologique.…