3EAH5 | Linux Embarqué | Electronique et Physique appliquée | S9 | ||||||
---|---|---|---|---|---|---|---|---|---|
Cours : 15 h | TD : 0 h | TP : 33 h | Projet : 0 h | Total : 48 h | |||||
Responsable : Hugo Descoubes |
Pré-requis | |
---|---|
- Fortes bases en langages procéduraux, langages compilés et langage C - Fortes bases en outils de développement logiciel (environnement de programmation, shell UNIX, makefile, chaîne de compilation, scripts bash) - Fortes bases en développement sur processeur numérique à architecture CPU (Central Processing unit). MCU's, DSP's, SoC's ... - Fortes bases sur systèmes d'exploitation temps réel (RTOS) |
|
Objectifs de l'enseignement | |
Découvrir les notions de développement bas niveau (drivers, génération de distribution custom ...) sur système d'exploitation évolué dans le domaine des systèmes embarqués. Nous nous intéresserons particulièrement aux systèmes GNU/Linux. | |
Programme détaillé | |
*** Développement Linux en espace user (Philippe Lefebvre, ENSICAEN) : - Système GNU/Linux - Shell UNIX et script bash - Développement système et programmation concurrente (API POSIX, Processus, Thread et IPC). *** Génération de Board Support Package Linux custom (Hugo Descoubes, ENSICAEN) : - Historique des systèmes UNIX et distro GNU/Linux - Développement sur BeagleBone Black (SoC AM3350) - Architecture d'un Système Linux - ABI Linux pour l'embarqué - Bootloader (uboot, tftp and mmc boot) - Customisation du kernel pour une application CAN (services monolithiques et modulaires) - Customisation du Device tree (support d'interfaces CAN) - Développement de patch kernel - Génération d'un rootfs custom (Buildroot, Yocto) - Linux Temps Réel (PREEMPT_RT, Xenomai) - Sensibilisation au fast boot sous Linux *** Développement de drivers Linux (André lépine, ingénieur NXP) : - Espace Kernel (bibliothèques et services kernel) - Développement de drivers Linux - Drivers Réseaux |
|
Applications (TD ou TP) | |
Les différents développements seront réalisés sur plateforme BeagleBone black embarquant un processeur application AM355x proposé par Texas Instruments : - Développement multi-tâches en espace user sous environnement PC - Installation des outils - Cross compilation et ABI pour système GNU/Linux - Customisation du kernel et du device tree - Génération de root file system (buildroot, Yocto) - Intégration de modules - Développement système - Développement de drivers CAN - Développement de drivers réseaux |
|
Compétences acquises | |
- Développement sous systèmes GNU/Linux - cross compilation linux - génération et customisation de distribution linux custom - Développement en espace Kernel - Développement de drivers Linux |
|
Bibliographie | |
- Free Electrons, société française de développement, services et formation autour de Linux embarqué : http://free-electrons.com/ - Archives du kernel Linux : https://www.kernel.org/ - Livre Linux Embarqué de Pierre Ficheux et édité par eyrolles : http://www.eyrolles.com/Informatique/Livre/linux-embarque-9782212134827 - Cours en ligne proposé par l’ENST Bretagne de Jean-Marie Gilliot : http://public.enst-bretagne.fr/~jgilliot/linux/LinuxEmbarque.html - Cours en ligne proposé par l’ENSEIRB-MATMECA de Patrice Kadionik : http://kadionik.vvv.enseirb-matmeca.fr/ |
© 2024 - ENSICAEN ( Mentions Légales - Crédits )