In English
[ED3L - Logo] [ED3L - Etude et développement - Linux et Logiciels Libres]

 

Cette page regroupe l'ensemble des formations disponibles, ainsi que le plan de cours indicatif.

La durée de ces formations est modulable selon vos connaissances et votre maîtrise des prérequis, et le contenu peut être adapté à vos besoins spécifiques notamment en fonction de vos projets et des applications qui vous intéressent.

Les conditions et les tarifs varient selon les conditions (nombre de stagiaires, matériel disponible/fourni, ...), les demandes de personnalisation du contenu, et la localisation (frais de déplacement). Le tarif "de base" est autour de 750€ / jour pour une formation "intra-entreprise" pour 2 à 4 stagiaires, hors frais de déplacement et d'hébergement éventuels.

 
Systèmes GNU/Linux - Les bases
Durée : 1 jour
Prérequis : Aucun

Cette formation est un pré-requis aux formations suivantes :
  • Systèmes GNU/Linux : le Shell
  • Administration des systèmes GNU/Linux
  • Programmation C - Systèmes GNU/Linux
  • Programmation C - Drivers et Noyau Linux
  • Systèmes GNU/Linux en embarqué
Les travaux pratiques seront effectués sur un système Devuan GNU/Linux.

Plan :
  • Introduction
    • Historique des systèmes UNIX
  • Généralités
    • GNU
    • Linux
    • POSIX Compliant
    • Distributions GNU/Linux
    • Les licences
  • Architectures des systèmes GNU/Linux
    • Le noyau Linux au coeur du système
    • Syscalls et LibC
    • Modularité extrème
  • Fichiers
    • Tout est fichier
    • Fichiers spéciaux
    • Systèmes de fichiers
  • Démarrage du système
    • Étapes du démarrage
    • Systèmes d'init
    • Shell ou coquille vide ?
 
Systèmes GNU/Linux - Le Shell
Durée : 3 jours
Prérequis : Systèmes GNU/Linux - Les bases

Cette formation aborde en détail le shell bash et les commandes les plus courantes utilisées sur les systèmes GNU/Linux (et d'autres).
Les travaux pratiques seront effectués sur un système Devuan GNU/Linux.

Plan :
  • Le shell Bash
    • Shells : historique
    • Bash : introduction et astuces
    • Répertoires
    • Globing, crochets et accolades
    • Variables locales et variables d'environnement
    • Configuration du shell
  • La ligne de commande
    • Plusieurs niveaux de complexité
    • Redirections
    • Protection et substitution
    • Notion de Jobs
  • Tests, structures de contrôle et scripts
    • Principes généraux et tests
    • Les différentes structures de contrôle
    • Fonctions et Scripts
  • Commandes : partie 1
    • Opérations sur les fichiers
    • Processus et signaux
    • Affichage de fichiers
    • Transformation de fichiers
  • Introduction à la gestion de versions
    • Principes
    • Subversion
    • Git
 
Administration des systèmes GNU/Linux
Durée : 5 jours
Prérequis : Systèmes GNU/Linux - Le Shell

Plus que l'exploration détaillé d'une (ou plusieurs) solution spécifique dédiée ("clés en main") à l'administration de systèmes GNU/Linux, cette formation a pour objectif de vous faire découvrir et maîtriser les principes et les rouages internes du fonctionnement des systèmes GNU/Linux pour vous permettre de prendre en main et de comprendre n'importe quel solution ou outil d'administration.
Attention, certaines parties du plan, notées "(Hors formation)" ne sont pas détaillées pendant cette formation et seulement évoquées pour référence et approfondissement par les stagiaires après la formation.
Les travaux pratiques seront effectués sur un système Devuan GNU/Linux.

Plan :
  • Bases
    • Qu'est-ce que "Administrer un système GNU/Linux"
    • Noyau Linux
    • Informations système
    • Les utilisateurs, groupes et autres droits
    • Arborescence et Linux FHS
    • Disques et systèmes de fichiers
    • Système d'init
    • Connexion à distance
    • Gestionnaires de paquets
    • Services : bases communes
    • Gestion des processus
    • Réseau : introduction
    • Gestion du temps
  • Sécurité
    • DNS
    • SSH
    • Firewall : iptables et netfilter
    • Clés PGP, GPG, signatures et identification
    • VPN
    • SSL, certificats, HTTPS (Hors formation)
    • Détections d'intrusions (IDS/IPS) et pots de miel
    • SE-Linux et consorts (Hors formation)
  • Stockage, sauvegardes et partage de données
    • RAID et LVM
    • NFS, Samba et partage réseau
    • Synchronisation et sauvegardes
    • Solutions "Cloud"
    • FTP et TFTP
    • Git (Hors formation)
  • Services et réseaux
    • Bases
    • Apache, PHP et consorts
    • Alternatives à apache
    • Bases de données MySQL
    • Alternatives à MySQL (Hors formation)
    • Mails
  • Introduction à l'administration de parcs de machines
    • Gestion des services/parc informatiques (Hors formation)
    • Installation et duplication manuelle de systèmes
    • Supervision
    • Installation et configuration automatique (Hors formation)
    • Introduction à la virtualisation
 
Programmation C - Bases
Plan à venir.
 
Programmation C - Niveau avancé
Durée : 2 jours
Prérequis : Programmation C - Bases

Pour aller plus loin et découvrir toutes les subtilités du language C, au delà de l'écriture du code C.
Les travaux pratiques seront effectués sur un système Devuan GNU/Linux en utilisant la chaîne de compilation GNU.

Plan :
  • Rappels et plus
    • Systèmes UNIX et GNU/Linux
    • Le langage C
    • Architecture d'un programme
    • Syntaxe du C
    • Mots clés
    • Extensions GNU GCC
  • Préprocesseur et Compilation
    • Makefiles
    • Étapes de compilation et édition des liens
    • Compilation conditionnelle et Macros
    • Organisation, binaire et mémoire
  • De mémoire ...
    • Stuctures, Énumérations et Unions
    • Pointeurs et allocation dynamique
    • Fonctions
    • Chaînes de caractères
  • Voir plus loin que le programme
    • Bibliothèques
    • Debug et profiling
    • Portabilité
 
Programmation C - Systèmes GNU/Linux
Durée : 3 jours
Prérequis : Programmation C - Bases

Un programme C a très souvent besoin d'interagir avec le reste du système sur lequel il s'exécute.
La bibliothèque C donne accès aux fonctionnalité internes du noyau Linux via les appels systèmes, permettant au programme d'accéder au matériel ou d'échanger des informations avec d'autres programmes.
Les travaux pratiques seront effectués sur un système Devuan GNU/Linux en utilisant la chaîne de compilation GNU.

Plan :
  • Rappels et plus
    • Systèmes UNIX et GNU/Linux
    • Le langage C
    • Architecture d'un programme
    • Syntaxe du C
    • Mots clés
  • Gestion des fichiers
    • Généralités
    • Manipulations "simples"
    • Gestion des droits
    • Utilisation avancée
  • Interaction avec le système
    • Paramètres du programme
    • Processus et threads
    • IPC
    • Signaux
    • Réseau
  • Voir plus loin que le programme
    • Bibliothèques
    • Portabilité
 
Programmation C - Drivers et Noyau Linux
Plan à venir
 
Programmation C - Systèmes embarqués sur micro-contrôleurs
Durée : 3 à 5 jours
Prérequis : Bonne connaissance du language C

L'objectif de cette formation est de présenter l'approche inverse de l'arduino, en partant de zéro, "from scratch", pour découvrir le fonctionnement interne des micro-contrôleurs et de leurs blocs fonctionnels et comprendre les différences fondamentales entre la programmation pour un micro-contrôleur et la programmation d'applications pour un système d'exploitation.
Toujours dans la ligne "logiciels libres", cette formation s'appuie sur les outils GNU et les systèmes GNU/Linux pour le développement.
Les travaux pratiques seront effectués sur micro-contrôleurs LPC1224 (ARM Cortex-M0 de NXP).

Plan :
  • Introduction
    • Qu'est ce qu'un micro-contrôleur (µC)?
    • Cas d'utilisation
  • Spécificités de la programmation pour µC
    • Ressources limitées
    • Jeu d'instructions réduit
    • Mémoire
    • Accès aux registres
    • Interruptions
    • Principes liés aux OS/RTOS (pour µC)
  • Chaîne de compilation et génération de code
    • Principes
    • Éléments constitutifs de la chaîne de (cross-)compilation
    • Création de l'image à envoyer au micro-contrôleur
    • Autres spécificités
  • Rappels de programmation C
    • Rappels généraux
    • Le pré-processeur
    • Mots clés
    • Opérateurs
    • Types et tailles
    • Extensions GNU GCC
    • Organisation en mémoire
    • Inclusion de code assembleur
  • Lien avec le matériel
    • Architecture interne
    • Les modules
    • Les registres
    • Lien avec l'électronique
    • Lien avec le monde physique
    • L'électronique pour l'informaticien
    • Bus de communication
    • Protocoles
  • En pratique
    • Prise en main des cartes micro-contrôleur ARM
    • Micro-contrôleur ARM from scratch
    • Quelques drivers
    • Support MQTT (optionnel)
 
Systèmes GNU/Linux en embarqué
Plan à venir
 
Introduction à l'électronique libre
Plan à venir

 

Ce site n'utilise pas de cookies, désolé pour les gourmands !