- Logiciels/outils/applications/services
Conception et Spécification des Systèmes Concurrents
Mis à jour le
Responsable(s) : M. Sami TAKTAK
- Cours + travaux pratiques
-
Durée : 50 heures (+/- 10%)
-
A la carte
-
6 crédits
-
Distanciel
Présentation
Public, conditions d'accès et prérequis
Prérequis
Avoir le niveau licence informatique (L3).
Public concerné : Élèves ingénieurs, étudiants en master
Objectifs
De par le développement des langages de programmation concurrente, des outils de programmation réseau et celui des processeurs multi-cœurs, le calcul concurrent est aujourd'hui omniprésent dans la construction de systèmes comme les systèmes d'exploitation, les systèmes distribués et les systèmes temps réel. Cependant, la conception de tels systèmes et la preuve de leur correction sont des tâches très difficiles.
Ce cours a pour objectif :
- d'acquérir une connaissance pratique des "bons" patrons de la programmation concurrente
- de comprendre les problèmes fondamentaux des systèmes concurrents
- et d'acquérir des notions de spécification de ces systèmes
L'avis des auditeurs
Les dernières réponses à l'enquête d'appréciation pour cet enseignement : Fiche synthétique au format PDFCompétences et débouchés
Compétences
conception, programmation et validation d'applications concurrents fiables
Informations pratiques
Contact
-
Département : EPN05 - Informatique
-
Tel : 01 58 80 87 99
-
Email : jean-mathieu.codasse@lecnam.net
-
Adresse : 2 rue Conté - 75003 Paris
Programme
Contenu
Structuration des applications concurrentes
Contrôle de concurrence dans les systèmes transactionnels, les systèmes d'information répartis, les applications temps réel.
Les paradigmes de la concurrence et les archétypes de programmation ('design patterns').
Exclusion mutuelle, élection, producteur consommateur, lecteurs rédacteurs, client-serveur, "peer to peer", problèmes liés aux pannes, diffusion atomique ordonnée, inter-blocage, famine, équité, terminaison.
Mécanismes de bases (processus, sémaphores, moniteurs, “thread”, communication synchrone et asynchrone, messages, boîtes aux lettres, invocation à distance, rendez-vous). Modularité et objets concurrents.
Spécification et vérification de propriétés de systèmes concurrents
Aperçu des méthodes de spécification :
* Expressions régulières et automates finis à états
* automates, automates synchronisés
* Preuve de programme:
* contrat de fonction, pré-post-conditions, invariants de boucles
* terminaison
* structures de Kripke, logiques temporelles
Bibliographie
- Michel Raynal . Concurrent Programming: Algorithms, Principles, and Foundations
- Peter Linz, Susan H. Rodger . An Introduction to Formal Languages and Automata
Formation mère
Conception et Spécification des Systèmes ConcurrentsCes formations pourraient vous intéresser
-
- Logiciels/outils/applications/services
Projet systèmes d'information : mise en pratique avec Java
Cours + travaux pratiques, NFA0196 crédits Hybride (présentiel et distanciel) Distanciel planifié A la carteParisVoir la formation -
- Logiciels/outils/applications/services
Master Humanités numériques parcours Mégadonnées et analyse sociale (MEDAS)
Master, MR09501A120 crédits AlternanceSaint-Denis CFAVoir la formation -
- Logiciels/outils/applications/services
Mise en oeuvre de la programmation de smart-phones et tablettes tactiles
Cours, NFA0256 crédits Distanciel A la carteGrand EstVoir la formation -
- Logiciels/outils/applications/services
Principes et programmation système et réseau pour smart-phones et tablettes tactiles
Cours, NFA0224 crédits Distanciel A la carteGrand EstVoir la formation