FrançaisEnglish

Mise en place et portage d’un service d’estimation de l’autonomie d’un système embarqué sous Linux

Date: 2018-2019

Contexte du stage

L’exigence vis-à-vis de l’autonomie des systèmes embarqués est continuellement croissante. Elle est devenue au fil des années l’une des contraintes les plus importantes à prendre en compte lors de la phase de développement logiciel et matériel d’une nouvelle plateforme. Or, cette autonomie est complexe à estimer. En conséquence, sans expérience forte, les choix technologiques et logiciels sont effectués sans que leurs impacts sur l’autonomie du dispositif aient pu être évalués et maitrisés. Au regard de ce constat, il devient nécessaire de faire de nouvelles itérations dans le cycle de conception d’un système dès que les contraintes d’autonomie imposées par le cahier de charge sont non conformes aux besoins. Ces itérations ralentissent le développement du dispositif et influencent négativement son coût.

Linux est un noyau de référence pour de nombreux systèmes embarqués tels que les smartphones, les tablettes, les décodeurs et les lecteurs multimédias. Il prend en charge de nombreuses fonctionnalités de gestion de l’énergie telles que la suspension et la mise en veille prolongée du système, la gestion des états du CPU, la gestion de la fréquence, la gestion de l’alimentation au moment de l’exécution. Cependant, les développeurs doivent encore faire face à des défis. La majorité des fonctionnalités de gestion de l’énergie disponibles dans un noyau Linux aujourd’hui ont été développées de manière isolée. Même si elles fonctionnent assez bien de manière individuelle, elles ne fonctionnent peut-être pas aussi bien entre elles ; ce qui empêche de prendre les décisions optimales permettant de maximiser la durée de vie d’un système embarqué.

La mise en place d’un service adéquat est un véritable besoin. Ce service devrait permettre de : (i) analyser l’impact des choix matériel et logiciel sur l’autonomie et (ii) prendre les bonnes décisions pour prolonger la durée de vie d’un système embarqué.

Objectifs du stage

L’objectif du stage est de dreser un état de l’art des frameworks de Power management existant dans un noyau Linux et d’intégrer un nouveau service permettant d’estimer la durée de vie d’un objet connecté en fonction des choix effectués par le concepteur. Pour valider ce service, un portage d’un noyau Linux sur une carte Beagle board sera réalisé et un test expérimental sera mis en place pour tester et valider le concept proposé.

Profil souhaité

Etudiant d’école d’ingénieur ou master 2 dans le domaine de l’informatique et de l’EEA.

Encadrement LIP6

Ce stage sera financé par le Lip6 au tarif déterminé par Sorbonne Université. Le stage se déroulera dans les locaux du Lip6. Il sera encadré par :