Intervenants : Frédéric BOUSSINOT (INRIA - EMP, Frederic.Boussinot@sophia.inria.fr), Manuel Serrano (INRIA, Manuel.Serrano@sophia.inria.fr)
En partant des techniques standard à base de threads (POSIX), le but du module est de décrire une nouvelle approche de programmation concurrente et parallèle développée à l'Inria : les FairThreads. Les FairThreads reposant sur un modèle coopératif s'exécutent très efficacement. Dans ce cadre, ils sont déterministes et il est possible de leur donner une sémantique formelle. On présentera l'approche réactive et les FairThreads ainsi que leurs implémentations en Java, C et Scheme. Diverses utilisations seront décrites : serveur Web, programmation par icobjs, jeux en réseau.
Le module est composé de 7 cours et de 2 séances de TD:
1) Threads POSIX et Java
2) Approche synchrone
3) Junior : API + sémantique
4) TD sur le réactif
5) FairThreads en C : API + sémantique opérationnelle
6) FairThreads en Scheme : API + sémantique dénotationnelle
7) TD sur les FairThreads
8) Distribution
9) Icobjs et jeux en réseaux.