Partager cette page :
Discipline(s) : Infomatique et télécommunications

Architecture et systèmes 1 : programmation C

Semestre Semestre 1
Type Obligatoire
Nature UE

Responsables

Pré-requis

Savoir programmer, par exemple en python.

Objectifs

  • À la fin du cours, les étudiants savent comment fonctionne un ordinateur (compréhension du  modèle de programmation du langage C) et un réseau (compréhension du découpage en couche et des mécanismes des couches applicatives, transport et IP).
  • Ils peuvent écrire de petits programmes en C, y compris des programmes interagissant au moyen de sockets BSD.

Contenu

Description du cours

Ce cours vise à faire découvrir le fonctionnement de l’ordinateur (au travers du langage C), le système d’exploitation, et les réseaux informatiques.

Programme

- Semaine 1
 Cours : Principes d’architecture : dissection d’un ordinateur
 Cours : Historique C/Unix, bases du langage C
 TP : Premiers programmes C
- Semaine 2
 Cours : UNIX et les fichiers
 TP : E/S en C
- Semaine 3
 Cours : Mémoire statique
 TD : Exercices débranchés sur la mémoire
- Semaine 4
 Cours : Mémoire dynamique, structures POO
 TP : Mini-projet 7colors
- Semaine 5
 Cours : Coder proprement en C
 TD : Outils de debug
- Semaine 6
 TP : Vecteurs et Matrices
 TD : L’univers impitoyable des pointeurs
- Semaine 7
 Cours : Programmation de sockets BSD
 TD : Projet 7colors en réseau
- Semaine 8
 Cours : Introduction aux réseaux
 TD : suite du projet 7 colors en réseau
- Semaine 9
 Cours : Couche applicative
 TD : wireshark
- Semaine 10
 Cours : Couche transport
 TD : Exercices débranchés sur TCP
- Semaine 11
 Cours : Couche routage
 TD : Exercices débranchés sur IP

Site du cours

https://github.com/mquinson/C-2nd-language


Contrôles des connaissances

à titre d'exemple :
- Durant le semestre, deux projets en contrôles continus (CC)
- À la fin du semestre 5, un examen final de première session de deux heures (T1).
- En session de rattrapage, un examen final de seconde session de deux heures (T2).
Documents autorisés : une feuille A4 recto-verso manuscripte contenant des notes de cours
Note finale en session 1 : (CC + T1) / 2
Note finale en session 2 : Max(T2, (CC + T2) / 2 )
 
 

Mise à jour le 12 juillet 2017