[FE training-materials-updates] Move French sysdev agenda to LaTeX

Michael Opdenacker michael.opdenacker at free-electrons.com
Tue Jun 16 09:04:02 CEST 2015


Repository : git://git.free-electrons.com/training-materials.git

On branch  : master
Link       : http://git.free-electrons.com/training-materials/commit/?id=ea5fc88cd39bdd10e592624490350a4c6e723feb

>---------------------------------------------------------------

commit ea5fc88cd39bdd10e592624490350a4c6e723feb
Author: Michael Opdenacker <michael.opdenacker at free-electrons.com>
Date:   Tue Jun 16 09:03:36 2015 +0200

    Move French sysdev agenda to LaTeX
    
    Signed-off-by: Michael Opdenacker <michael.opdenacker at free-electrons.com>


>---------------------------------------------------------------

ea5fc88cd39bdd10e592624490350a4c6e723feb
 agenda/sysdev-agenda.tex    |   5 +-
 agenda/sysdev-fr-agenda.tex | 495 ++++++++++++++++++++++++++++++++++++++++++++
 odf/agenda-sysdev-fr.odt    | Bin 728624 -> 0 bytes
 3 files changed, 498 insertions(+), 2 deletions(-)

diff --git a/agenda/sysdev-agenda.tex b/agenda/sysdev-agenda.tex
index 0899157..1c26065 100644
--- a/agenda/sysdev-agenda.tex
+++ b/agenda/sysdev-agenda.tex
@@ -322,8 +322,9 @@ Embedded Linux system development training\\
   {\em Using the Xplained ARM board}
   \begin{itemize}
   \item Creating partitions on your block storage
-  \item Booting a system with a mix of filesystems: SquashFS for applications, ext3 for
-  \item configuration and user data, and tmpfs for temporary system files.
+  \item Booting a system with a mix of filesystems: SquashFS for
+	applications, ext3 for configuration and user data, and
+	tmpfs for temporary system files.
   \end{itemize}
 }
 
diff --git a/agenda/sysdev-fr-agenda.tex b/agenda/sysdev-fr-agenda.tex
new file mode 100644
index 0000000..e7c1d91
--- /dev/null
+++ b/agenda/sysdev-fr-agenda.tex
@@ -0,0 +1,495 @@
+\documentclass[a4paper,12pt,obeyspaces,spaces,hyphens]{article}
+
+\usepackage{agenda}
+\usepackage{colortbl}
+\usepackage{xcolor}
+\usepackage{palatino}
+\usepackage{calc}
+
+\hypersetup{pdftitle={Développement de systèmes Linux embarqué},
+  pdfauthor={Free Electrons}}
+
+\renewcommand{\arraystretch}{2.0}
+
+\begin{document}
+
+\thispagestyle{fancy}
+
+\setlength{\arrayrulewidth}{0.8pt}
+
+\begin{center}
+\LARGE
+Formation au développement de systèmes Linux embarqué\\
+\large
+Session de 5 jours
+\end{center}
+\vspace{1cm}
+
+\small
+\newcolumntype{g}{>{\columncolor{fedarkblue}}m{4cm}}
+\newcolumntype{h}{>{\columncolor{felightblue}}X}
+
+\arrayrulecolor{lightgray} {
+  \setlist[1]{itemsep=-5pt}
+  \begin{tabularx}{\textwidth}{|g|h|}
+    {\bf Titre} & {\bf Formation au développement de systèmes Linux embarqué} \\
+    \hline
+
+    {\bf Aperçu} &
+Chaînes de compilation croisée, bibliothèques standard C pour l'embarqué. \par
+Chargeurs de démarrage (bootloaders). \par
+Configuration et compilation du noyau Linux. \par
+Applications et bibliothèques légères pour systèmes embarqués \par
+Systèmes de fichiers traditionnels et spécialisés pour stockage flash. \par
+Outils de développement de systèmes embarqués Linux. \par
+Développement et mise au point d'applications sur le système embarqué. \par
+Contraintes temps-réel et Linux embarqué. \par
+Travaux pratiques avec une carte ARM. \\
+    \hline
+    {\bf Supports} &
+    Vérifiez que le contenu de la formation correspond à vos besoins :
+    \newline \url{http://free-electrons.com/doc/training/embedded-linux}. \\
+    \hline
+
+    {\bf Durée} & {\bf Cinq} jours - 40 h (8 h par jour)
+    \newline 50\% de présentations et 50\% de travaux pratiques. \\
+    \hline
+
+    {\bf Formateur} & Un des ingénieurs mentionnés sur :
+    \newline \url{http://free-electrons.com/training/trainers/}\\
+    \hline
+
+    {\bf Langue} & Présentations : Français
+    \newline Supports : Anglais\\
+    \hline
+
+    {\bf Public ciblé} & Ingénieurs développant des systèmes embarqués
+    reposant sur Linux et des composants open-source.\\
+    \hline
+
+    {\bf Pré-requis} &
+
+    {\bf Connaissance et pratique des commandes Unix ou
+    GNU/Linux}
+    \newline Les personnes n'ayant pas ces connaissances doivent
+    s'autoformer, par exemple en utilisant nos supports de formations
+    disponibles en ligne :
+    \newline (\url{http://free-electrons.com/docs/command-line/} \vspace{1em}
+    \\
+    \hline
+  \end{tabularx}
+
+  \begin{tabularx}{\textwidth}{|g|h|}
+    {\bf Équipement\newline nécessaire} &
+    {\bf Pour les sessions sur site uniquement}
+    \newline Le matériel est fourni par Free Electrons durant les
+    sessions inter-entreprises
+    \begin{itemize}
+    \item Projecteur vidéo
+    \item Un ordinateur sur chaque bureau (pour une ou deux personnes), avec au
+    moins 2 Go de RAM et Ubuntu Linux installé dans une {\bf partition
+    dédiée d'au moins 20 Go. L'utilisation de Linux dans une machine virtuelle
+    n'est pas supportée}, en raison de problèmes avec la connexion au matériel.
+    \item Nous avons besoin d'Ubuntu Desktop 14.04 (32 ou 64 bit, Xubuntu et
+    Kubuntu fonctionnent également). Nous ne supportons pas d'autres
+    distributions, car nous ne pouvons tester toutes les versions des
+    paquets.
+    \item {\bf Connexion à Internet} (directe ou par le proxy de l'entreprise).
+    \item {\bf Les ordinateurs contenant des données importantes doivent être
+    sauvegardés} avant d'être utilisés dans nos sessions. Certains
+    participants ont déjà commis des erreurs lors de travaux pratiques
+    avec pour conséquence des pertes de données.
+    \end{itemize} \\
+    \hline
+
+    {\bf Supports} & Versions électroniques et imprimées des
+    présentations et travaux pratiques.
+    \newline Version électronique des données pour les travaux
+    pratiques..\\
+    \hline
+
+\end{tabularx}}
+\normalsize
+
+\feagendatwocolumn
+{Matériel}
+{
+  La plateforme matérielle utilisée pendant les travaux pratiques de
+  cette formation est la carte {SAMA5D3 Xplained d'Atmel}, dont voici les
+  caractéristiques :
+
+  \begin{itemize}
+  \item Un processeur ARM Cortex A5 d'Atmel (SAMA5D36)
+  \item Alimenté par USB
+  \item 256 Mo de RAM DDR2
+  \item 256 Mo de flash NAND
+  \item 2 ports Ethernet (Gigabit + 100 Mbit)
+  \item 2 ports USB 2.0 hôte
+  \item 1 port USB device
+  \item 1 port MMC/SD
+  \item Port série 3.3 V (comme Beaglebone Black)
+  \item Connecteur compatible Arduino R3
+  \item Divers : JTAG, boutons, LEDs
+  \end{itemize}
+}
+{}
+{
+  \begin{center}
+    \includegraphics[height=5cm]{../slides/xplained-board/xplained-board.png}
+  \end{center}
+}
+
+\section{1\textsuperscript{er} jour - Matin}
+
+\feagendaonecolumn
+{Cours – Introduction à Linux embarqué}
+{
+  \begin{itemize}
+  \item Avantages de Linux par rapport aux autres OS pour l'embarqué.
+	Raisons pour choisir Linux.
+  \item Aperçu général : comprendre l'architecture d'un système Linux
+	embarqué. Aperçu des principaux éléments dans un système typique.
+  \end{itemize}
+  {\em Le reste de la formation étudie chacun de ces éléments en détail.}
+}
+\\
+\feagendatwocolumn
+{Cours - Environnement de développement}
+{
+  \begin{itemize}
+  \item Système d'exploitation et outils sur la station de travail
+	pour le développement de systèmes Linux embarqué.
+  \item Astuces pour l'utilisation de Linux sur station de travail.
+  \end{itemize}
+}
+{Cours - Chaîne de compilation croisée et bibliothèque standard C}
+{
+  \begin{itemize}
+  \item Les composants d'une chaîne de compilation croisée.
+  \item Choisir une bibliothèque standard C.
+  \item Le contenu de la bibliothèque standard C.
+  \item Les chaînes de compilation croisée prêtes à l'emploi.
+  \item La construction automatisée d'une chaîne de compilation croisée.
+  \end{itemize}
+}
+
+\section{1\textsuperscript{er} Jour - Après-midi}
+\feagendatwocolumn
+{TP – Chaîne de compilation croisée}
+{
+  \begin{itemize}
+  \item Configuration de Crosstool-NG
+  \item Exécution pour construire une chaîne de compilation croisée
+	personnalisée reposant sur la uClibc.
+  \end{itemize}
+}
+{Cours – Chargeurs de démarrage}
+{
+  {\em Utilisation de la carte SAMA5D3 Xplained d'Atmel}
+  \begin{itemize}
+  \item Chargeurs de démarrage existants
+  \item Fonctionnalités des chargeurs de démarrage
+  \item Installation d'un chargeur de démarrage
+  \item Focus sur U-Boot
+  \end{itemize}
+}
+\\
+
+\feagendatwocolumn
+{TP - U-Boot}
+{
+  \begin{itemize}
+  \item Mise en place de la communication série avec la carte.
+  \item Configuration, compilation et installation du chargeur de
+	démarrage de premier niveau et d'U-Boot sur la carte Xplained.
+  \item Familiarisation avec l'environnement et les commandes d'U-Boot.
+  \item Mise en place de la communication TFTP avec la carte.
+	Utilisation des commandes TFTP d'U-Boot.
+  \end{itemize}
+}
+{Cours – Noyau Linux}
+{
+  \begin{itemize}
+  \item Rôle et architecture générale du noyau Linux.
+  \item Fonctionnalités disponibles dans le noyau Linux, en insistant
+	sur les fonctionnalités utiles dans les systèmes embarqués.
+  \item L'interface entre le noyau et les applications.
+  \item Récupérer les sources.
+  \item Comprendre les versions du noyau.
+  \item Utilisation de la commande patch.
+  \end{itemize}
+}
+\\
+
+\section{2\textsuperscript{ème} jour - Matin}
+
+\feagendatwocolumn
+{TP - Sources du noyau}
+{
+  \begin{itemize}
+  \item Téléchargement des sources
+  \item Application de patches
+  \end{itemize}
+}
+{Cours – Configuration et compilation du noyau Linux}
+{
+  {\em Utilisation de la carte Xplained d'Atmel}
+  \begin{itemize}
+  \item Configuration du noyau.
+  \item Paramètres utiles pour les systèmes embarqués.
+  \item Compilation native.
+  \item Fichiers générés à l'issue de la compilation.
+  \item Utilisation des modules noyau.
+  \end{itemize}
+}
+
+\feagendatwocolumn
+{Cours - Compilation croisée du noyau}
+{
+  \begin{itemize}
+  \item Mise en place de la compilation croisée pour le noyau.
+  \item Utilisation de configurations prêtes à l'emploi pour des cartes embarquées.
+  \item Compilation croisée du noyau.
+  \end{itemize}
+}
+{TP - Compilation croisée du noyau et démarrage sur la carte}
+{
+  {\em Utilisation de la carte Xplained d'Atmel}
+  \begin{itemize}
+  \item Configuration du noyau Linux et compilation croisée pour la carte ARM.
+  \item Mise en place d'un serveur TFTP sur la station de développement.
+  \item Téléchargement du noyau en utilisant le client TFTP d'U-Boot.
+  \item Démarrage du noyau depuis la RAM.
+  \item Copie du noyau vers la flash et démarrage depuis la flash.
+  \item Stockage des paramètres de démarrage en flash et automatisation
+	du démarrage du noyau.
+  \end{itemize}
+}
+
+\section{2\textsuperscript{ème} jour - Après-midi}
+
+\feagendatwocolumn
+{Cours – Système de fichier racine}
+{
+  \begin{itemize}
+  \item Les systèmes de fichiers dans Linux.
+  \item Rôle et organisation du système de fichiers racine.
+  \item Localisation de ce système de fichiers: sur espace
+	de stockage, en mémoire, sur le réseau.
+  \item Les fichiers device, les systèmes de fichiers virtuels.
+  \item Contenu type d'un système de fichiers.
+  \end{itemize}
+}
+{Cours - BusyBox}
+{
+  {\em Using the Atmel Xplained board}
+  \begin{itemize}
+  \item Présentation de BusyBox. Intérêt pour les systèmes embarqués.
+  \item CConfiguration, compilation et installation.
+  \end{itemize}
+}
+
+\feagendaonecolumn
+{TP – Construction d'un minuscule système Linux embarqué avec BusyBox}
+{
+  {\em Utilisation de la carte Xplained d'Atmel}
+  \begin{itemize}
+  \item Construction à partir de zéro d'un système de fichiers racine
+	contenant un système Linux embarqué
+  \item Mise en place d'un noyau permettant de démarrer le système
+	depuis un répertoire mis à disposition par la station de
+	développement au travers de NFS.
+  \item Passage de paramètres au noyau pour le démarrage avec NFS.
+  \item Création complète du système de fichiers à partir de zéro :
+	installation de BusyBox, création des fichiers spéciaux
+	pour les périphériques.
+  \item Initialisation du système en utilisant le programme init de BusyBox.
+  \item Utilisation du serveur HTTP de BusyBox.
+  \item Contrôle de la cible à partir d'un navigateur Web sur la
+	station de développement.
+  \item Mise en place des bibliothèques partagées sur la cible et
+	développement d'une application d'exemple.
+  \end{itemize}
+}
+
+\section{3\textsuperscript{ème} jour - Matin}
+
+\feagendaonecolumn
+{TP – Construction d'un minuscule système Linux embarqué avec BusyBox}
+{
+   Suite et fin.
+}
+
+\feagendatwocolumn
+{Cours - Système de fichiers bloc}
+{
+  \begin{itemize}
+  \item Systèmes de fichiers pour périphériques bloc.
+  \item Utilité des systèmes de fichiers journalisés.
+  \item Systèmes de fichiers en lecture seule.
+  \item Systèmes de fichiers en RAM.
+  \item Création de chacun de ces systèmes de fichiers.
+  \item Suggestions pour les systèmes embarqués.
+  \end{itemize}
+}
+{TP - Système de fichiers bloc}
+{
+  {\em En utilisant la carte ARM Xplained}
+  \begin{itemize}
+  \item Créer des partitions sur le stockage bloc.
+  \item Démarrage d'un système avec un assemblage de plusieurs systèmes
+	de fichiers : SquashFS pour les applications, ext3 pour la
+ 	configuration et les données utilisateur et tmpfs pour les
+	fichiers temporaires.
+  \end{itemize}
+}
+
+\section{3\textsuperscript{ème} jour - Après-midi}
+
+\feagendatwocolumn
+{Cours - Système de fichiers pour flash}
+{
+  \begin{itemize}
+  \item Le sous-système Memory Technology Devices du noyau Linux.
+  \item Les systèmes de fichiers pour le stockage MTD : JFFS2, YAFFS2, UBIFS.
+  \item Options de configuration du noyau.
+  \item Partitions MTD.
+  \item Montage d'images de systèmes de fichiers MTD.
+  \end{itemize}
+}
+{TP – Systèmes de fichiers pour flash}
+{
+  {\em Sur la carte ARM Xplained}
+  \begin{itemize}
+  \item Création de partitions sur la mémoire flash interne.
+  \item Utilisation de JFSS2 en mode lecture seule pour les applications.
+  \item Utilisation de JFFS2 pour les données.
+  \end{itemize}
+}
+
+\feagendaonecolumn
+{Cours – Réutilisation de composants open-source existants pour le système
+embarqué}
+{
+  \begin{itemize}
+  \item Motivations pour la réutilisation de composants existants.
+  \item Trouver et choisir des composants libres et open-source existants.
+  \item Les licences de Logiciels Libres et leurs conditions.
+  \item Aperçu de composants typiquement utilisés dans les systèmes
+	Linux embarqués : bibliothèques et systèmes graphiques (framebuffer,
+	DirectFB, GTK, Qt, etc.), utilitaires système, bibliothèques et
+	utilitaires réseau, bibliothèques multimédia, etc.
+  \item Exemple d'un produit électronique grand public reposant sur de
+	nombreux composants open-source.
+  \item Construction du système et intégration des composants.
+  \end{itemize}
+}
+
+\section{4\textsuperscript{ème} jour - Matin}
+
+\feagendatwocolumn
+{Cours – Compilation croisée de bibliothèques et d'applications}
+{
+  \begin{itemize}
+  \item Configuration, compilation croisée et installation de bibliothèques
+	et d'applications pour un système embarqué
+  \item Détails sur le système de compilation utilisé dans la plupart
+	des composants open-source.
+  \item Aperçu des principaux problèmes rencontrés lors de la
+	réutilisation des composants.
+  \end{itemize}
+}
+{TP – Compilation croisée de bibliothèques et d'applications.}
+{
+  {\em Si suffisamment de temps disponible}
+  \begin{itemize}
+  \item Construction d'un système avec les bibliothèques ALSA et une
+	application de lecture audio.
+  \item Compilation et installation manuelle de plusieurs
+	composants open-source.
+  \item Apprentissage des principales techniques et des problèmes principaux.
+  \end{itemize}
+}
+
+\section{4\textsuperscript{ème} jour - Après-midi}
+
+\feagendatwocolumn
+{Cours - Outils de construction de systèmes}
+{
+  \begin{itemize}
+  \item Outils de la communauté pour la construction
+	automatisée de systèmes.
+  \item Exemple de Buildroot.
+  \end{itemize}
+}
+{TP - Construction d'un système avec Buildroot}
+{
+  {\em Utilisation de la carte Xplained d'Atmel}
+  \begin{itemize}
+  \item Utilisation de Buildroot pour construire de façon automatisée
+	un système similaire à celui du TP précédent.
+  \item Voir à quel point cela est plus simple
+  \item Optionnel: rajout d'un paquet dans Buildroot
+  \end{itemize}
+}
+
+\section{5\textsuperscript{ème} jour - Matin}
+
+\feagendaonecolumn
+{Cours - Développement et déboguage d'application}
+{
+  \begin{itemize}
+  \item Langages de programmations et bibliothèques disponibles.
+  \item Aperçu de la bibliothèque C pour le développement d'applications.
+  \item Systèmes de construction pour votre application, comment utiliser des
+	bibliothèques existantes dans votre application.
+  \item Environnements de développement intégrés (IDE) et lecteur de code source.
+  \item Débogueurs : déboguage d'applications à distance avec gdb et gdbserver, analyse
+	post-mortem d'une application.
+  \item Analyseurs de code, analyseurs mémoire, outils de profiling.
+  \item Développement depuis Windows.
+  \end{itemize}
+}
+
+\feagendaonecolumn
+{TP – Développement et déboguage d'application}
+{
+  {\em Sur la carte Xplained d'Atmel}
+  \begin{itemize}
+  \item Développement et compilation d'une application basée sur la bibliothèque
+	ncurses.
+  \item Utilisation de strace, ltrace et gdbserver pour déboguer une application de
+	mauvaise qualité sur le système embarqué
+  \item Analyse post-mortem d'une application plantée.
+  \end{itemize}
+}
+
+
+\section{5\textsuperscript{ème} jour - Après-midi}
+
+\feagendaonecolumn
+{Cours - Linux et le temps réel}
+{
+  {\em Utile pour de nombreux types de systèmes, industriels ou multimédia.}
+  \begin{itemize}
+  \item Comprendre les sources de latence dans le noyau Linux standard.
+  \item Solutions temps réel mou : améliorations du noyau 2.6.
+  \item Comprendre et utiliser les patches RT preempt pour le noyau Linux.
+  \item Déboguage temps-réel du noyau. Mesure et analyse de la latence.
+  \item Xenomai, une solution temps réel dur pour Linux : fonctionnalités, concepts,
+	implémentation et exemples.
+  \end{itemize}
+}
+
+\feagendaonecolumn
+{TP - Tests de latence Linux}
+{
+  \begin{itemize}
+  \item Tests sur la carte ARM Xplained
+  \item Mesure de latence sur Linux standard.
+  \item Mise en place de Xenomai.
+  \item Mesures de latence avec Xenomai.
+  \end{itemize}
+}
+
+\end{document}
diff --git a/odf/agenda-sysdev-fr.odt b/odf/agenda-sysdev-fr.odt
deleted file mode 100644
index a605646..0000000
Binary files a/odf/agenda-sysdev-fr.odt and /dev/null differ



More information about the training-materials-updates mailing list