fff

Combien de stagiaires suivront cette formation ?


Valider Annuler

Partager
Accueil    Formations    Informatique    Systèmes    Linux    Raspberry PI - Développement d'applications embarquées

Partager cette formation Télécharger au format pdf Ajouter à mes favoris

Public concerné

Développeurs.

Prérequis

Connaître le langage C ou C++ ainsi que les commandes Linux.

Objectifs de formation

A l'issue de cette formation, vous serez capable de :

  • Installer une distribution taillée sur mesure pour un équipement RaspBerryPI au moyen de Buildroot.

Programme de votre formation

  1. #

    M2I START AVANT VOTRE FORMATION

    Contextualisation du projet de formation et prise en compte des besoins de chacun

    • Positionnement initial de l’apprenant par rapport aux objectifs
    • Définition des priorités et des objectifs personnels de l’apprenant
    • Vidéos de mise en situation
    • Accès au Chat interactif myM2i pour interagir avec les membres de son groupe
    m2i_start_logo
  2. #

    M2I LIVE VOTRE FORMATION ANIMÉE PAR NOTRE EXPERT ¹

    Programme

    Jour 1

    Présentation

    Architecture

    • Architecture Linux
    • Les différents éléments d'un système Linux
    • Le BIOS et le boot
    • Le boot
    • Introduction au noyau
    • La librairie LibC

    Init et démons

    • Inittab et init
    • Niveau d'exécution
    • Exemple fichier /etc/inittab
    • Les différents types de démons

    Init et Shell

    • Les commandes de base et programme
    • Le Shell
    • Les gestionnaires de fenêtre
    • Qt

    Licences

    Les distributions

    • Les outils de mise à jour
    • Organisation du disque
    • Organisation multi disques
    • Hiérarchie sur le disque
    • Répertoire /usr et /var/etc/fstab

    Les licences

    • Objectif
    • Free vs Open Source
    • Avertissement
    • L'objectif
    • Les formes de licence
    • Caractéristiques des licences libres
    • Différences Open Source Licences libres
    • Les principales licences de logiciels libres

    Différences entre les licences

    • GPL
    • LGPL
    • Apache
    • X11
    • Eclipse
    • BSD
    • Licences sur les contenus

    Compilation

    Compilation des sources

    • Vérification d'intégrité
    • Décompression des sources
    • Git SVN CVS
    • Commandes de base CVS/SVN/git
    • Morphologies des programmes
    • Rappel mécanisme de compilation
    • Les Makefiles
    • Configure
    • Problèmes de compilation
    • Les étapes de compilation
    • Exemples

    Les librairies

    • Le principe des librairies
    • Librairies statiques vs dynamiques
    • Librairies dynamiques
    • Edition de lien
    • Utilisation des librairies
    • Installation d'une librairie sous Debian

    La librairie LibC

    • Glibc
    • Uclibc
    • Eglibc
    • Dietlibc
    • Newlib

    Jour 2

    Le noyau

    Présentation

    • Versions
    • Les sources
    • Configuration du noyau
    • Module / Kernel / None
    • Avantages / désavantages des modules
    • Commandes sur les modules

    Configuration

    • Make xconfig
    • Make gconfig
    • Make menuconfig
    • Make nconfig
    • Autres possibilités
    • Les options de compilation du noyau
    • Options de compilation (fin)
    • Dépendances des options
    • Select
    • Les patches
    • Niveaux de patch

    Options de compilation

    • La compilation
    • Exercice : compiler un noyau
    • Installation du noyau
    • Installation des modules
    • Disque minimal en RAM
    • Fichier config

    Busybox

    Busybox

    • Busybox : présentation
    • Busybox : configuration
    • Les commandes Busybox
    • Ajouter des commandes à Busybox
    • Finalisation d'ajout d'une commande

    Raspberry

    Architecture ARM

    • Les processeurs ARM
    • Quelques termes à connaître
    • Les familles de processeurs ARM
    • Les processeurs ARM9 et ARM10
    • Les Cortex

    Présentation de la carte

    • Les cartes Raspberry
    • Carte Raspberry PI 2
    • Légendes
    • OS disponibles

    Installation de base

    • Principe d'installation
    • Copie de Raspbian sur la carte

    Compilation croisée

    Présentation

    • Compilation croisée
    • Machine hôte
    • Les compilateurs C et C++
    • Contenu d'une chaîne croisée
    • Les binutils
    • Les librairies de traitement mathématique
    • Les entêtes du noyau

    Compilation du compilateur

    • Chaîne de compilation croisée
    • Alternatives à la compilation croisée
    • Les chaînes précompilées
    • Les chaînes de fabrication de cross compilateurs
    • Les composants de la chaîne
    • Processus de fabrication de la chaîne soi-même

    Jour 3

    Buildroot

    Présentation

    • Utilisation de Buildroot
    • Schéma de principe
    • Aide
    • Buildroot : principe
    • Paquetages nécessaires à Buildroot
    • Compilation de Buildroot
    • Les paramètres qu'on peut ajouter

    Utilisation

    • Exécution
    • Les fichiers générés
    • Les fichiers .config
    • Utiliser la Toolchain générée
    • Utiliser une chaîne de compilation externe

    Installation de la distribution

    • Préparation de la carte Micro SD
    • Agrandir la partition à toute la mémoire SD
    • Divers problèmes classiques
    • Le fichier de configuration du lanceur de la Raspberry

    Jour 4

    Customisation

    Services supplémentaires

    • Connexion sécurisée avec SSH et transferts de fichiers par SCP
    • Serveur httpd de Busybox
    • Ajout d'utilisateurs
    • Ajout de programmes spécifiques
    • Exécution de commandes ShellScript avant la génération de l'image
    • Sed : édition d'un fichier

    Paramètres spécifiques

    • Clavier français
    • Configuration de l'ordonnanceur
    • Exemples lignes cron
    • Fichier dtb - uboot - qemu
    • qemu
    • Compiler Buildroot pour qemu

    Le kit Raspberry dans QtCreator

    • Ajout de la chaîne de compilation dans QtCreator
    • Ajout du device Raspberry
    • Debug croisé avec la Raspberry
    • Connaître la plateforme destination dans le fichier pro
    • CMake avec Buildroot

    Les fonctions de GDB

    Techniques de débugage

    • Présentation de gdb
    • Savoir si un exécutable est compilé en mode débug
    • Principe gdb
    • Les commandes pas à pas

    Affichage des variables

    • Modification du contexte
    • Print variable
    • Autres affichages

    Les points d'arrêt

    • GDB : point d'arrêt
    • Breakpoint - watchpoints - catchpoints
    • Watchpoint
    • Gestion des points d'arrêt
    • Break avec liste de commandes
    • Printf dynamique
    • La pile d'appel

    Débugage à distance

    • Débugage du core via Eclipse
    • Débug croisé
    • Installation sur l'équipement distant
    • Mise en route sur l'équipement host
    • Remarques sur le débug croisé
    • Mise en oeuvre sur Eclipse

    Exemples de travaux pratiques (à titre indicatif)

    • Récupérer les sources du jeu Extrême Tux Racer Pro et le compiler
    • Construction de la librairie glibc
    • Compiler le noyau Linux
    • Compiler Busybox
    • Installation d'une image Raspberry PI prête à l'emploi
    • Fabrication d'une Image avec compilation automatique des programmes
    • Fabrication d'une Imageqemu avec compilation automatique des programmes

    Le contenu de ce programme peut faire l'objet d'adaptation selon les niveaux, prérequis et besoins des apprenants.

    m2i_live_logo
  3. #

    M2I BOOST APRÈS VOTRE FORMATION

    Réactivation et consolidation des acquis en situation de travail

    • 30 jours d’accompagnement personnalisé sur myM2i inclus ²
    • Ressources Boosters (Abonnement au M2i’Mag Soft Skills, formations offertes, invitations aux conférences d’actualité…)
    m2i_boost_logo
  1. ¹ Les actions et les outils présentés dans ce programme le sont à titre indicatif et peuvent faire l’objet d'adaptation selon les niveaux, prérequis et besoins des apprenants. Les compétences clés de ce programme sont traitées à raison d'une compétence par demi-journée de formation.
  2. ² Sur myM2i, pendant 30 jours post-fin de formation, les apprenants disposent d’une messagerie sécurisée pour échanger, dans la limite de 4 sollicitations, avec leur formateur.

Modalités, méthodes et moyens pédagogiques

Formation délivrée en présentiel ou distanciel* (blended-learning, e-learning, classe virtuelle, présentiel à distance).

Le formateur alterne entre méthode** démonstrative, interrogative et active (via des travaux pratiques et/ou des mises en situation).

Variables suivant les formations, les moyens pédagogiques mis en oeuvre sont :

  • Ordinateurs Mac ou PC (sauf pour certains cours de l'offre Management), connexion internet fibre, tableau blanc ou paperboard, vidéoprojecteur ou écran tactile interactif (pour le distanciel)
  • Environnements de formation installés sur les postes de travail ou en ligne
  • Supports de cours et exercices

En cas de formation intra sur site externe à M2I, le client s'assure et s'engage également à avoir toutes les ressources matérielles pédagogiques nécessaires (équipements informatiques...) au bon déroulement de l'action de formation visée conformément aux prérequis indiqués dans le programme de formation communiqué.

* nous consulter pour la faisabilité en distanciel

** ratio variable selon le cours suivi

Modalités d’évaluation des acquis

  • En cours de formation, par des études de cas ou des travaux pratiques
  • Et, en fin de formation, par un questionnaire d'auto-évaluation

Accessibilité de la formation

Le groupe M2I s'engage pour faciliter l'accessibilité de ses formations. Toutes nos formations sont accessibles aux personnes en situation de handicap : les détails de l'accueil des personnes sont consultables sur la page Politique Handicap.

Modalités et délais d’accès à la formation

Les formations M2I sont disponibles selon les modalités proposées sur la page programme. Les inscriptions sont possibles jusqu'à 48 heures ouvrées avant le début de la formation. Dans le cas d'une formation financée par le CPF, ce délai est porté à 11 jours ouvrés.

Partager cette formation Télécharger au format pdf Ajouter à mes favoris

Vous souhaitez suivre cette formation ?

En INTRA-ENTREPRISE

Contactez-nous
string(21) ""
string(21) ""
string(21) ""
string(21) ""

Découvrez les autres formations susceptibles de vous intéresser :

Faites-nous part de votre projet de formation, nous sommes là pour vous guider.