VAROUMAS Steven
Direction de recherche : Tristan CROLARD
Co-encadrement : TREBUCHET Philippe , CHAILLOUX Emmanuel
Modèles de programmation de haut niveau pour microcontrôleurs à faibles ressources
Les microcontrôleurs sont des circuits imprimés programmables nichés dans de nombreux objets de notre quotidien. En raison de leurs ressources limitées, ils sont souvent programmés dans des langages de bas niveau comme le C, ou en langage assembleur. Ces derniers n'offrent pas les mêmes abstractions et les mêmes garanties que des langages de haut niveau, comme OCaml. Cette thèse propose alors un ensemble de solutions destinées à enrichir la programmation de microcontrôleurs avec des paradigmes de programmation de plus haut niveau. Ces solutions apportent une montée en abstraction progressive, permettant notamment de réaliser des programmes indépendants du matériel utilisé. Nous présentons ainsi une première abstraction du matériel prenant la forme d’une machine virtuelle OCaml, qui permet de profiter des nombreux avantages du langage tout conservant une faible empreinte mémoire. Nous étendons par la suite OCaml avec un modèle de programmation synchrone inspiré du langage Lustre et permettant d'abstraire les aspects concurrents d’un programme. Une spécification formelle du langage est donnée, et plusieurs propriétés de typage sont par la suite vérifiées. Les abstractions offertes par nos travaux induisent par ailleurs la portabilité de certaines analyses statiques pouvant être réalisées sur le bytecode des programmes. Une telle analyse, servant à estimer le temps d’exécution pire-cas d’un programme synchrone, est alors proposée. L'ensemble des propositions de cette thèse constitue une chaîne complète de développement, et plusieurs exemples d’applications concrètes illustrant la complétude des solutions offertes sont alors présentées.
Soutenance : 05/11/2019
Membres du jury :
PAGETTI Claire, ONERA [rapporteur]
SCHMITT Alan, INRIA Rennes [rapporteur]
SIGHIREANU Mihaela, Université Paris Diderot
BOURKE Timothy, INRIA Paris
AGON Carlos, Sorbonne Université
CROLARD Tristan, CNAM
CHAILLOUX Emmanuel, Sorbonne Université
TRÉBUCHET Philippe, Sorbonne Université
Publications 2016-2023
-
2023
- S. Varoumas, B. Pesin, B. Vaugon, E. Chailloux : “Programming microcontrollers through high-level abstractions: The OMicroB project”, Journal of Computer Languages, vol. 77, pp. 101228, (Elsevier) (2023)
-
2020
- S. Varoumas, B. Pesin, B. Vaugon, E. Chailloux : “Programming microcontrollers through high-level abstractions”, VMIL 2020: Proceedings of the 12th ACM SIGPLAN International Workshop on Virtual Machines and Intermediate Languages, Chicago / Virtual, United States, pp. 5-14, (Association for Computing Machinery) (2020)
- Th. Lecomte, D. Déharbe, D. Sabatier, E. Prun, P. Péronne, E. Chailloux, S. Varoumas, A. Susungi, S. Conchon : “Low Cost High Integrity Platform: regular paper”, ERTS 2020 - 10th European Congress on Embedded Real Time Systems, Toulouse, France (2020)
-
2019
- S. Varoumas : “Modèles de programmation de haut niveau pour microcontrôleurs à faibles ressources”, soutenance de thèse, soutenance 05/11/2019, direction de recherche Crolard, Tristan, co-encadrement : Trebuchet, Philippe, Chailloux, Emmanuel (2019)
- S. Varoumas, T. Crolard : “WCET of OCaml Bytecode on Microcontrollers: An Automated Method and Its Formalisation”, 19th International Workshop on Worst-Case Execution Time Analysis (WCET 2019), vol. 72, OpenAccess Series in Informatics (OASIcs), Stuttgart, Germany, pp. 5:1-5:12, (Schloss Dagstuhl--Leibniz-Zentrum fuer Informatik) (2019)
-
2018
- S. Varoumas, B. Vaugon, E. Chailloux : “A Generic Virtual Machine Approach for Programming Microcontrollers: the OMicroB Project”, Proceedings of the 9th European Congress on Embedded Real Time Software and Systems (ERTS 2018), Toulouse, France (2018)
- S. Varoumas, B. Vaugon, E. Chailloux : “La programmation de microcontrôleurs dans des langages de haut niveau - Cours invité: Tutorial”, JFLA 2018 - Journées Francophones des Langages Applicatifs, Vingt-neuvièmes Journées Francophones des Langages Applicatifs (JFLA 2018), BANYULS, France (2018)
-
2017
- S. Varoumas, B. Vaugon, E. Chailloux : “OCaLustre : une extension synchrone d’OCaml pour la programmation de microcontrôleurs”, JFLA 2017 - Vingt-huitièmes Journées Francophones des Langages Applicatifs, Gourette, France (2017)
-
2016
- S. Varoumas, B. Vaugon, E. Chailloux : “Concurrent Programming of Microcontrollers, a Virtual Machine Approach”, Proceedings of the 8th European Congress on Embedded Real Time Software and Systems (ERTS 2016), TOULOUSE, France, pp. 711-720 (2016)