Formations au coeur des technologies

Essayer, tester, échanger les bonnes pratiques, partager les retours d'expériences, ...
toutes nos formations sont disponibles à distance (classes virtuelles) et en centre de formation (présentiel), au choix.
Vous pouvez même changer de modalité en cours de formation, si vous avez des contraintes : par exemple, commencer en présentiel et continuer les jours suivants à distance.
Les outils pédagogiques et l'infrastructure de travaux pratiques mis à disposition sont accessibles depuis nos locaux, ou depuis votre entreprise ou votre lieu de télétravail, à volonté
N'hésitez pas à tester nos formations et nos serious games !

Programmation système en langage C

DATES:
DATES:
CODE:LC010

Public


Toute personne amenée à programmer, à superviser ou à modifier des logiciels écrits en langage C et liés au système d'exploitation.

Objectifs


Compléter des connaissances en langage C par une formation approfondie sur les mécanismes d'accès au système d'exploitation. L'accent sera particulièrement sur les fichiers, pointeurs, allocations de mémoire, communications et les librairies systèmes.

Préalables


Il est demandé aux participants de bien connaître les structures et fonctions de base du langage C.

Programme


Rappels


Architecture d'un programme écrit en C; fonctions de base. Variables.
Phases de compilation.
Rappels sur les systèmes d'exploitation des ordinateurs.

Variables


Structures, unions, tableaux. Pointeurs.

Fonctions


Rappels sur les pointeurs de fonctions.
Applications à la structure des fichiers.

Mémoire


Les fonctions d'allocation et les appels systèmes: sbrk, malloc, realloc. Ecriture d'un allocateur de mémoire.

Communications


Signaux et interruptions. Sémaphores et appels concurrents. Segments de mémoires partagées.
Mécanismes de communications
IPC
shm/sem/msg
BSD socket

Parallélisation


Création de processus
fork(),clone(),setsid().
Threads. NPTL. Création, destruction. Synchronisation entre threads, détachement. Attributs. Gestion de la pile.
Mutex. Conditions variables. Signaux, interruptions.
Ordonnancement.

Systèmes


Organisation. Gestion de processus.
Pilotes de périphériques.
Application au système Unix


Pythagore-F.D.

01 55 33 52 10
pfd@pythagore-fd.fr
Calendrier
Code cours : LC010

Contenu de la formation
Programmation système en langage C:

Accès à la liste des cours



Vous pouvez bien entendu composer votre programme personnel à partir de nos descriptifs de cours


Version du document : R006
Date de mise à jour du document : 2024/01/06