Cette page regroupe tous mes liens et documents relatifs au cours dispensés
mis en ligne.
1. Description du cours "Fondements des systèmes et applications répartis"
Ce cours s'adresse à des étudiants en maîtrise ou école d'ingénieurs. Son
orientation est très différente de celle du cours de Mastère « Systèmes répartis
ou distribués ». Nous y abordons la plupart des aspects relatifs à
l'exécution d'applications réparties. Dans ce domaine, la matière est abondante
et selon le point de vue de l'auteur, le contenu peut varier
sensiblement. Sensibiliser les étudiants aux problèmes posés lors
d’exécution ou de déploiement d’applications dans les environnements
répartis. Les étudiants sauront identifier les problèmes qui risquent de
se poser, ils pourront ainsi choisir et construire l’infrastructure système
ainsi que l’architecture nécessaire au déploiement d’applications distribuées.
Ils apprendront également à proposer des solutions alternatives simples.
Le volet du raisonnement distribué est travaillé tout au long du semestre.
En opposition au centralisé, où l’information est regroupée et partagée, et les
problèmes identifiés, le module vise à initier les étudiants à la séparation
des concepts client, serveur et données. Il est concrétisé par l’écriture
d’algorithmes distribués en séances de TD.
Plan
I.
Chapitre 1 : Introduction aux
applications réparties
I.1. Exemples,
motivations, avantages , systèmes,
I.2. Modèle
d’architecture
I.3. Problèmes posés
par la répartition
II.
Chapitre 2 : Architectures
logicielles distribuées
II.1.
Evolution des architectures logicielles
II.2.
Structure d’une application en couches
II.3.
Le modèle client/serveur
II.3.1.
Fonctionnement, conception d’une
application C/S
II.3.2.
Les niveaux du C/S : 2, 3, N
II.4.
L’appel de procédures à distance
(Remote Procedure Call)
II.4.1.
Définitions, les interfaces client
et serveur : les talons
II.4.2.
Les problèmes : envoi de paramètres,
les pannes client et serveur, la sémantique d’exécution
II.4.3.
La localisation du serveur
II.4.4.
Mise en place
II.5.
Quelques outils : SUNRPC, Java RMI
II.6.
Les composants
II.6.1.
Définitions et caractéristiques
II.6.2.
Les composants COM, DCOM et COM+
II.7.
Les services
II.7.1.
Les problèmes d’intégration et de
réutilisation
II.7.2.
Les
principes fondamentaux de SOA
II.7.3.
Les acteurs
II.7.4.
SOA et les Web services
II.7.5.
Les services web
II.8.
Les architectures logicielles du côté
des technologies
III.
Chapitre 3: La gestion du temps
III.1. Temps,
ordres et états dans les systèmes répartis
III.1.1. Notions
d’événements et de causalité et d’estampille
III.1.2. Construction
d’un état global avec les horloges logiques de Lamport (notion d’estampille)
III.1.3. Algorithmes
basés sur les horloges logiques
III.2.
Le protocole NTP
Network Time Protocol
IV.
Chapitre 4 BDD
réparties
IV.1. Modèles
de distribution
IV.2. Stratégies
de réplication
IV.3. Les
transactions réparties ou systèmes transactionnels
IV.3.1. les
propriétés ACID des transactions (atomicité, consistance, isolation et
durabilité)
IV.3.2. Contrôle
des propriétés d’atomicité en réparti et d’isolation
IV.4.
Protocoles 2PC,
2PL
Contenu
Le contenu du cours peut être téléchargé à partir de la
plate-forme d'hébergement de cours universitaires www.ecircle.rnu.tn.
Clé du cours : LEJG7WR
2. Description du cours "systèmes
d'exploitation"
En collaboration avec Dr. Mona Laroussi, nous avons entrepris de
développer un cours sur les Systèmes d’exploitation des ordinateurs, pour le
compte de l’Université virtuelle de Tunis. Disponible à cette adresse :
http://rel.uvt.rnu.tn/course/category.php?id=31.