Pour gérer vos consentements :
Categories: LogicielsOpen Source

Linutronix : une acquisition couleur RTOS pour Intel

Bonne fortune pour PREEMPT-RT ? Linutronix, l’entreprise allemande qui porte le projet, est passée dans le giron d’Intel. Le groupe américain a discrètement annoncé l’acquisition, sur l’un de ses blogs communautaires.

PREEMPT-RT – pour « real-time preemption » – est un patch qui confère au noyau Linux des fonctionnalités temps réel. Comme son nom l’indique, il minimise la quantité de code non préemptible au sein du noyau Linux. Le rendant ainsi plus déterministe… et dont plus adapté aux exigences des applications temps réel.

Les initiatives dans ce sens avaient véritablement démarré en 2003. Avec le noyau 2.6.0 étaient apparu un réglage de préemption à trois niveaux, sélectionnables au moment de la compilation : aucune, volontaire (création de points explicites à des endroits stratégiques) et totale (sauf spinlocks et zones critiques). Une alternative à une approche plus ancienne consistant à intercaler, entre le hardware et le noyau Linux, un piconoyau « spécial temps réel » gérant la distribution et la planification des interruptions. Parmi ces piconoyaux, RTAI, Xenomai et RTLinux, dont les architectures respectives sont illustrées ci-dessous en (a), (b) et (c).

Par rapport à ces piconoyaux, PREEMPT-RT n’exploite pas d’appels systèmes spécialisés (il utilise l’API POSIX). Et ne requiert donc pas de modifier substantiellement les applications qu’il exécutera.

Red Hat et IBM… au début

PREEMPT-RT avait émergé en 2005, sur la base du noyau Linux 2.6.11… et sur un existant composé de multiples patchs spécifiques (les initiatives pour rendre le kernel préemptible avait véritablement démarré en 2003). Les premiers travaux furent essentiellement l’œuvre de personnels de Red Hat et d’IBM. En toile de fond, un contrat Raytheon/US Navy fondé sur l’exploitation de Linux pour du temps réel. Ils permirent d’ajouter deux niveaux de préemption. En jouant, par exemple, sur :

– L’instanciation d’horloges plus précises (à la nanoseconde)
– L’exécution des gestionnaires d’interruptions dans le contexte de tâches
– La suppression de la plupart des spinlocks non préemptibles
– Adoption de mutex respectant la priorité héritée (pour éviter le phénomène dit d’inversion, où une tâche à basse priorité peut en préempter une à plus haute priorité)

Dix ans plus tard, le projet trouvait une ombrelle en l’objet de l’initiative Linux RT, lancée par la Fondation Linux. Nombre de ses fonctionnalités avaient alors été directement intégrées au kernel. Entretemps, ses principaux architectes – en particulier Thomas Gleixner, cofondateur de Linutronix – avaient régulièrement tiré la sonnette d’alarme : faute de ressources adéquates, PREEMPT-RT était, sinon menacé, tout du moins handicapé dans son développement.

Les cas d’usage, pourtant, ne manquaient pas. Avec, entre autres, IBM Research sur une VM Java dont la latence du ramasse-miettes était plafonnée pour permettre la bonne exécution d’un synthétiseur. Mais aussi l’usage de PREEMPT-RT avec le protocole EtherCAT pour implémenter un récepteur GNSS fondé sur un FPGA PCIe. Ou encore un robot humanoïde, des systèmes d’aide à la conduite, de la simulation avionique, etc.

Sous l’égide de la Fondation Linux, Linutronix eut davantage de marge de manœuvre. Notamment pour réarchitecturer les horloges haute résolution ou refondre la gestion du hotplug CPU. Intel assure que l’entreprise restera indépendante, bien qu’intégrée dans sa division software.

Photo d’illustration © BeeBright – Shutterstock

Recent Posts

Jean-Noël Barrot, nouveau ministre délégué chargé du numérique

Jean-Noël Barrot est nommé ministre délégué chargé de la Transition numérique et des Télécommunications du…

5 heures ago

Microsoft peine à convertir à sa « nouvelle expérience commerciale »

Microsoft concède de nouveaux reports dans la mise en place de la « nouvelle expérience…

6 heures ago

PC, tablettes et smartphones : la dégringolade qui s’annonce

Tensions géopolitiques, inflation et difficultés d'approvisionnement impactent à la baisse le marché des terminaux. En…

7 heures ago

Le W3C dit non à Google et Mozilla sur l’identité décentralisée

La spécification DID (Decentralized Identifiers) passera au stade de recommandation W3C début août, en dépit…

8 heures ago

Silicon Data Awards 2022 – A vos candidatures !

La 1ère édition des Silicon Data Awards est lancée ! Rejoignez le concours avant le…

8 heures ago

Open Source : entre la SFC et GitHub, le torchon brûle

L'entrée en phase commerciale de Copilot ne passe pas. La Software Freedom Conservancy (SFC) a…

11 heures ago