IST Syllabus L3 Programme Majeure M6a Informatique
Partager cette page
Semestre 6
97,5 heures
UE Systèmes d’exploitation 21h de CM & 25h de TD
UE Introduction au microcontrôleur 21h de CM & 25h de TD
*************************************************
UE Systèmes d’exploitation
Prérequis Programmation système (L2)
Compétences visées
Disciplinaires :
synchroniser des processus collaboratifs
détecter des deadlocks dans des applications
gérer les entrées-sorties et les fichiers / répertoires d’un système depuis un programme
optimiser un code au niveau de l’occupation mémoire
Aptitudes Transversales (« Soft-skills »)
parfaire le travail de groupe (projet de 2 ou 3 étudiants)
Contenu du cours
Les rôles du système d’exploitation
Gestion du multi-tâches : algorithmes d’ordonnancement des processus
Communication inter-processus
par échange de signaux
par tubes et tubes nommés
par mémoire partagée
par files de messages
Gestion des entrées-sorties
système de fichiers, répertoires, types de fichiers, propriétés
primitives sur les fichiers
parcours de système de fichiers
le cas des disques magnétiques : algorithmes de gestion des têtes
Gestion de la mémoire
notion de segments, pagination
paginations simple et multiple
pagination à la demande, défauts de page, algorithmes de remplacement de pages
mémoire virtuelle et cache
*************************************************
UE Introduction au microcontrôleur
Prérequis
Disciplinaires
-Architecture des ordinateurs – Mineure M4-I
-Bases de la programmation en langage C
Transversaux
Capacité à travailler en autonomie et en petit groupe
Compétences visées Compétence générique L3 : Savoir et comprendre l’architecture d’un microcontrôleur, son organisation autour du processeur ainsi que ses différents périphériques, la représentation de l’information au sein d’une machine de calcul, la représentation d’un programme à travers le langage machine et d’assemblage, la gestion des E/S, le mécanisme essentiel d’interruption.
Disciplinaires : Comprendre l’architecture interne d’un microcontrôleur STM32, son organisation autour du microprocesseur ARM, l’organisation mémoire
Savoir définir et mettre en œuvre des périphériques de base d’un microcontrôleur (liaison série UART, timers)
Savoir définir et mettre en œuvre le mécanisme essentiel d’interruption
Comprendre la représentation d’un programme informatique, d’un langage haut-niveau à sa représentation machine ou en langage d’assemblage Savoir développer un programme informatique pour un système embarqué basé sur microcontrôleur, le programmer et le tester, savoir utiliser un debugger
Aptitudes Transversales (« Soft-skills ») Analyser et synthétiser des informations
Être capable d’échanger avec des pairs sur les notes et exercices de cours
Rédiger des rapports en français
Contenu du cours Rappels de L2 : Représentation de l’information et d’un programme informatique, cycle d’exécution machine, architecture interne d’un microprocesseur, RISC/CISC
Les systèmes embarqués : définition et principales caractéristiques, fonctionnalités et intérêts, taxonomie, les microcontrôleurs STM32 basé sur le processeur ARM, l’environnement de développement STM32Cube IDE
Architecture interne d’un microcontrôleur : Processeur ARM RISC - Organisation mémoire ; Jeu d’instruction du Cortex-M4 – Langage d’assemblage – Eléments de compilation
Architecture du STM32 et bus système, arbre d’horloge – Principaux périphériques systèmes et d’E/S – GPIO, Timer, Bus de communication
Mécanisme d’interruption : définition, Exceptions et Interruptions, rôle du contrôleur d’interruption, NVIC, hiérarchisation et priorité, table des vecteurs d’interruption, mise en œuvre dans l’environnement STM32CubeIDE
Toutes ces notions seront mises en œuvre lors de séances de travaux pratiques sur cibles réelles. Mini-projet consistant à implémenter une solution de stéganographie sur microcontrôleur sera réalisé, permettant de mettre en œuvre l’intégralité des notions vues en cours.