Programme des cours 2026-2027
BINV2181-2  
Linux : Programmation distribuée
  • Langage C : modularisation
  • Linux : appels système
Durée :
Langage C : modularisation : 24h Th
Linux : appels système : 24h Th
Nombre de crédits :
Bachelier en informatique, orientation développement d'applications5
Nom du professeur :
Langage C : modularisation : Anthony LEGRAND
Linux : appels système : Anthony LEGRAND, José VANDER MEULEN
Coordinateur(s) :
José VANDER MEULEN
Langue(s) de l'unité d'enseignement :
Langue française
Organisation et évaluation :
Enseignement au deuxième quadrimestre
Unités d'enseignement prérequises et corequises :
Les unités prérequises ou corequises sont présentées au sein de chaque programme
Contenus de l'unité d'enseignement :
Dans cette UE nous continuons notre étude du langage C. De plus, nous introduisons les appels systèmes Linux. C'est une des briques de notre cursus qui permettra in fine aux étudiants de concevoir et maintenir des solutions informatiques bas niveau, modulaires, distribuées et efficaces.
Langage C : modularisation
Le cours expose les aspects propres à la conception de modules en C:

- modularité d'un programme (fichiers source .c et headers .h)

- compilation via la commande make et un fichier makefile

- types utilisateurs (structures et énumérations)
Linux : appels système
Cette UE est une introduction aux appels système.

En informatique, un appel système désigne le moment où un programme s'interrompt pour demander au système d'exploitation d'accomplir pour lui une certaine tâche [1].
 
[1] https://fr.wikipedia.org/wiki/Appel_système, 22/08/2018
Acquis d'apprentissage (objectifs d'apprentissage) de l'unité d'enseignement :
Voir: 

  • BINV2181-A Langage C : modularisation
  • BINV2181-B Linux : appels Système
Langage C : modularisation
L'étudiant doit être capable de :

- manipuler des structures

- concevoir, compiler, tester et bébugger une application C modularisée
Linux : appels système
Au terme de cette UE, un étudiant sera capable d'expliquer les concepts sous-jacents aux notions suivantes liées au système Linux « System V » :

  • Les entrées/sorties
  • La création de processus
  • Les pipes
  • Les redirections
  • Les signaux (norme « System V » et norme « Posix »)
  • La mémoire partagée
  • Les sémaphores
  • Les sockets
De plus, il sera capable de concevoir, construire, compiler, tester, débugger et justifier des applications C, sous Linux « System V », appliquant les notions susmentionnées.
Savoirs et compétences prérequis :
/   
Langage C : modularisation
voir description de l'UE

 
 
Linux : appels système
Voir description de l'UE
Activités d'apprentissage prévues et méthodes d'enseignement :
Activités              Intitulé de l'activité                    Volume horaire 
BINV2181-A          Langage C : modularisation            24h
BINV2181-B          Linux : appels Système                   24h 

Pour plus de détails, voir: 

  • BINV2181-A Langage C : modularisation
  • BINV2181-B Linux : appels Système
Langage C : modularisation
  • Le cours est organisé en deux séance de deux heures par semaine.

  • Les présentations théoriques de nouveaux chapitres seront fournies aux étudiants avant les séances qui les aborderont ; les étudiants sont tenus de prendre connaissance de la matière théorique avant les séances de TP liées.

  • Les séances d'exercices se tiendront dans les salles machine de l'IPL ; elles permettent de mettre en oeuvre les éléments de programmation présentés (OS: Linux/Ubuntu).

  • Des petits quiz en ligne sont régulièrement réalisés en début de séance (plugin CodeRunner sur Moodle) pour mobiliser les nouveaux concepts théoriques.

  • Les corrections des exercices les plus représentatifs sont présentées en séance, permettant aux étudiants de confronter leurs propres solutions à celles des enseignants.
Linux : appels système
Dans un premier temps, les cours sont généralement décomposés en deux parties : une présentation théorique suivie d'exercices pratiques.

Dans un second temps, les étudiants réaliseront un excercice récapitulatif durant les dernières séances de cours.
Mode d'enseignement (présentiel, à distance, hybride) :
Pour plus de détails, voir: 

  • BINV2181-A Langage C : modularisation
  • BINV2181-B Linux : appels Système
Langage C : modularisation
Présentiel:

- exposés ex-cathedra pour expliquer les principes théoriques

- exercices pratiques sur machine pour mettre en oeuvre la théorie
Linux : appels système
Présentiel
Lectures recommandées ou obligatoires et notes de cours :
Pour plus de détails, voir: 

  • BINV2181-A Langage C : modularisation
  • BINV2181-B Linux : appels Système
Langage C : modularisation
Support(s):

Tous les supports seront mis en ligne sur Moodle.

  • eSyllabus, diaporamas et vidéos
  • fiches d'exercices et solutions
 

Référence(s):

 

 
Linux : appels système
Support(s):

Tous les supports seront mis en ligne sur Moodle.

  • Diaporama de théorie
  • Fiches d'exercices et solutions
Référence(s):

  • The Linux Programming Interface, Michael Kerrisk, 2010
Modalités d'évaluation et critères :
Responsable de l'évaluation: LEGRAND Anthony

L'évaluation de cette UE est intégrée. Elle se fait en session:

  • 100% en première session, examen sur machine
  • 100% en seconde session, examen sur machine
La note finale de l'UE est délibérée par les professeurs impliqués dans l'évaluation de celle-ci. En cas de lacune importante dans un ou plusieurs acquis d'apprentissage spécifiques à l'UE, le responsable de l'évaluation de l'UE attribuera une note inférieure à 10/20. Cette note sera représentative du niveau de la non acquisition des compétences requises dans l'UE. Cette décision fera l'objet d'une justification de la part des professeurs.
Langage C : modularisation
voir description de l'UE
Linux : appels système
Voir description de l'UE
Stage(s) :
Remarques organisationnelles :
Cette UE a pour corequis l'UE "BINV2011 Langage C : bases".

Lors du calcul de la moyenne arithmétique pondérée du PAE d'un étudiant, ainsi que du calcul de la moyenne arithmétique pondérée globale de son cursus, le poids associé à la note de la présente UE est son nombre d'ECTS.
Langage C : modularisation
voir description de l'UE
 
 
Linux : appels système
Voir description de l'UE
Contacts :
anthony.legrand@vinci.be
Langage C : modularisation
anthony.legrand@vinci.be
Linux : appels système
anthony.legrand@vinci.be