INFO622 : Systèmes de synchronisation et Processus

De Wiki du LAMA (UMR 5127)
Aller à la navigation Aller à la recherche

Ouvrage de référence

  1. Andrew Tanenbaum, Systèmes d'exploitation

Documentation remise en classes

- Entêtes de fonctions POSIX (I) :
   fonctions_POSIX_1.pdf.
- Entêtes de fonctions POSIX (II) :
   fonctions_POSIX_2.pdf.
- Entêtes de fonctions POSIX (III) :
   fonctions_POSIX_3.pdf.


Déroulement (2012-2013)

CM1 : Introduction

- Banque virtuelle : exemple de condition de concurrence.
   programme ``banqueVirtuelle.c``.


CM2 : Processus vs Threads, exclusion mutuelle I

- Exemple d'utilisation du fork :
   programme ``exFork.c``.
- Exemple d'utilisation de threads (compiler avec l'option -lpthread) :
   programme ``exThread.c``.
- Exemple de récupération d'un valeur retournée par un thread. (compiler avec l'option -lpthread) :
   programme ``exThread2.c``.

CM3 : Producteur/Consommateur et Sémaphores

- Exemple d'attente active avec des threads (compiler avec l'option -lpthread) :
   programme ``attenteActive.c``.
- Exemple d'utilisation d'un sémaphore par des threads (compiler avec l'option -lpthread) :
   programme ``semThread.c``.

CM4 : Sémaphores POSIX et mémoire partagée

- Sémaphores nommés avec processus distincs (compiler avec l'option -lpthread) :
   programme ``createur.c``.
   programme ``destructeur.c``.
   programme ``gestionnaire.c``.
   programme ``parleur.c``.
- Mémoire partagée (compiler avec l'option -lrt) :
   fichier entête ``mp_maStruct.h``.
   programme ``mp_lecture.c``.
   programme ``mp_affichage.c``.



TD :

- TD1.
- TD2.
   - programme ``rsa.c``.
   - exemples de clés RSA valides au format ( n, d, e ) ``exCleRSA.txt``.
   - Solution question 1.
   - Solution question 2.
   - Solution question 3.
- TD3 - Programme ``poste.c``
   - Fichier ``makefile`` pour compiler ``poste.c``
- TD4.