Lepton/Tauon : un système d'exploitation temps réel "POSIX compliant" pour cibles embarquées

Posté par . Édité par Nÿco, Lucas Bonnet, baud123, NeoX et B16F4RV4RD1N. Modéré par baud123. Licence CC by-sa
59
14
fév.
2012
Noyau

L'augmentation continue de la puissance de calcul, des fonctionnalités présentes et des empreintes mémoires (RAM, FLASH, ROM...) des processeurs 32 bits tend à créer une classe de processeurs hybrides :

  • ils sont suffisamment puissants pour exécuter des tâches complexes (réseau, affichage...) ;
  • ils sont trop petits pour faire fonctionner de façon raisonnable les systèmes d'exploitation Open Source classiques (GNU/Linux, Android, *BSD...).

Les architectures Cortex-M3 et Cortex-M4 d'ARM rentrent clairement dans cette catégorie.

Même si il existe un portage de uClinux sur STM32 (ici et ), il est indispensable de posséder une mémoire externe de plusieurs dizaines de mégaoctets (mémoire interne de l'ordre de centaines de Kio).

Dans cette optique nous avons décidé de publier le code source de Lepton/Tauon sous licence MPL/EPL (au moment de cette rédaction il s'agit de la MPL 1.1).

Lepton/Tauon est un système d'exploitation temps réel (RTOS, pour Real Time Operating System) qui tente de respecter au maximum le standard POSIXPOSIX compliant ») tout en gardant à l'esprit les contraintes :

  • d'empreinte mémoire ;
  • de fiabilité ;
  • de simplicité ;
  • de portabilité.

Le micrologiciel (firmware) généré se présente sous la forme d'un ELF contenant :

  • le noyau ;
  • les pilotes de périphériques ;
  • les bibliothèques ;
  • les pseudo-binaires systèmes et utilisateurs.