
Objectifs : Être capable de développer des applications grâce au langage C
Public visé : Développeur C
Durée : 5 jours (35h)
Prix : 3 000 €
Pré requis : Filière C basique
Plan de cours :
1- Les outils de développement
Compilation et édition de liens avec gcc et make
Les débogueurs
Les profileurs
Vérification et outils de mise en forme
2- Les appels systèmes classiques
Conformité de Linux à posix.1
La gestion des processus fork et exec
Gestion de l’environnement getenv, etc ...
Une bonne terminaison d’un programme
Les Inter Process Communications (IPC)
Les pipes classiques et les named pipe
3- La gestion des Threads sous Linux
Conformité de Linux à posix 1.c
Principe et implémentation
Avantages et inconvénients par rapport au fork
Création de threads
Les différents attributs
Gestion de l’exclusion mutuelle (mutex)
Gestion des données et des signaux des threads
4- Communiquer sur le réseau
Les appels systèmes fondamentaux
Les sockets DGRAM : implémentation d’un client-serveur en UDP (non connecté)
Les sockets STREAM : implémentation d’un client-serveur TCP (connecté)
Les options împortantes
Utiliser les services d’inetd
5- Gestion de la mémoire
Rappel sur les variantes de malloc
Configuration de l’algorithme de malloc
Suivi avec mtrace
Verrouillage de pages mémoire
Electricfence
Gestion des fuites mémoires et outils associés
Routines avancées de traitement des blocs mémoire
6- Gestion de bibliothèques
Création de bibliothèques statiques, partagées et dynamiques
Utilisation approfondie de make
7- Construire des applications pour Linux
Gestion des dépendances (automake, autoconf)
Construction (make)
Questions / Réponses