Formation Linux/Unix, développement système

 

La formation Linux/Unix développement système garantit au participant une maîtrise de toutes les facettes de la programmation applicative de la gestion des processus et threads, à la gestion du système de fichiers, en passant par la mémoire.

Les objectifs de cette formation sont pour le participant de pouvoir maîtriser la communication inter processus, et gérer les signaux et la communication réseau.

Formation Linux/Unix, développement système

À l’issue de la formation, le participant sera en mesure de :

  • Savoir gérer les processus et les threads
  • Maîtriser la communication inter processus
  • Gérer la mémoire
  • Maîtiser les signaux et la communication réseau
  • Maîtriser les entrées sorties

Evaluation de la formation et de votre progression vers vos objectifs

Avant le début de la formation, un questionnaire vous permettra d’exprimer vos objectifs personnels et d’évaluer votre degré de maîtrise des principales thématiques abordées dans la formation.

Pendant la formation, le formateur observera vos pratiques afin de pouvoir vous donner des conseils personnalisés quant aux points forts sur lesquels vous pourrez vous appuyer et aux points de vigilance sur lesquels il doit axer ses efforts.

À la fin de la formation, vous aurez à remplir un questionnaire (QCM et/ou des ateliers et des exercices pratiques) pour évaluer vos nouvelles compétences et votre progression vers vos objectifs. Un questionnaire supplémentaire vous permettra d'indiquer votre niveau de satisfaction à l'égard de la formation.

Un questionnaire d’auto-évaluation à froid vous sera proposé 6 à 9 mois après la fin de formation. Celui-ci vous permettra de prendre du recul sur 

les bénéfices acquis, les efforts restant à déployer et votre degré de satisfaction vis à vis de la formation. 

Cette formation s'adresse aux développeurs Linux/Unix.

4 JOURS

Outils et méthodes de développement

  • Environnement Linux : influences, logiciels libres, licence GPL, distributions.
  • Outils de développement : éditeurs et environnements intégrés, compilateurs et constructeurs, profileurs et débogueurs.


Travaux pratiques

Prise en main des outils de développement (gcc, make...).

Les processus

  • Concept de processus, identifications.
  • Création, terminaison d'un processus et exécution.
  • Problèmes de sécurité.


Les threads Posix

  • Principe des threads Posix.1c.
  • Exécution et terminaison des threads.
  • Synchronisation des threads : utilisation des mutex et des variables conditions.


Communications entre processus

  • Files de messages : principe. Files de message System V et Posix.
  • Mémoire partagée : principe. Segments de mémoire System V et Posix.
  • Synchronisation des accès : sémaphores Posix et nommés.
  • Tubes de communication : création d'un tube, redirection des entrées-sorties, tubes nommés.


Gestion de la mémoire

  • Principes de la mémoire virtuelle : espace d'adressage et mémoire physique. Segmentation et pagination. Fautes de page.
  • Allocation de la mémoire : fonctions classiques, exploration de l'espace d'adressage, réussite et échec d'allocation.
  • Utilisation de la mémoire : projection, configuration, détection des fuites et débordements mémoire.


Signaux

  • Gestion des signaux : émission et réception de signaux, blocages et attentes.
  • Signaux temps réel : principes. Emission et réception.


Communiquer sur le réseau

  • Appels système fondamentaux : résolution de noms, de services, création de sockets.
  • Communication TCP/IP et UDP/IP : serveurs multiprocessus et multithreads, clients TCP.
  • Transmission unicast, multicast et broadcast.


Entrées-sorties classiques et avancées

  • Descripteurs et flux : concepts, utilisation, paramétrage.
  • Entrées-sorties avancées : entrées-sorties non bloquantes et multiplexées, asynchronisme.

 

Méthodes et moyens

Cette formation repose sur une combinaison de constructions participatives, de mises en perspectives par des apports théoriques et méthodologiques, et de mises en situation (simulation et jeux de rôle) permettant de mettre en évidence les difficultés et de découvrir progressivement les méthodes et techniques appropriées. 

Bonne connaissance d'un système Linux/ Unix et de la programmation en C.

  • Rugosité
  • Consciencieux
REF:
NUM_DEV_12
Durée:
4 jours
Modalité Pédagogique:
Nombre de participants:
Prix:
2 500,00 €
Prochaine date de formation : Le délai moyen de mise en œuvre est de 3 semaines à la suite de votre demande.
Modifié le 19-10-2023
REF:
NUM_DEV_12
Durée:
4 jours
Modalité Pédagogique:
Nombre de participants:
Prix:
2 500,00 €
Prochaine date de formation : Le délai moyen de mise en œuvre est de 3 semaines à la suite de votre demande.
Modifié le 19-10-2023