Commit 2f0e0d8e authored by Grégory Mounié's avatar Grégory Mounié

Avec des opérateurs atomiques, tout est plus simple

parent a444b18d
......@@ -12,12 +12,14 @@
#+exclude_tags: noexport
#+creator: Emacs 26.3 (Org mode 9.2.3)
* Code de fées: implantation des algorithmes de Dekker et Peterson
* Code de fées
Ces codes implantent les algorithmes de Dekker et Peterson, vus en
TD. Comme pour un conte de fées, leur intérêt est plutôt dans les
concepts sous-jacents et pas dans le code lui-même qui n'a pas
forcément d'utilité dans la /vraie vie/.
En particulier, *les codes vus en TD ne fonctionnent pas !*
** Attention aux compilateurs
Les codes sont complexifiés (utilisation de pointeurs, de strides,
découpage en plusieurs fichiers/modules), pour éviter que les
......@@ -37,7 +39,11 @@
été dépassée par celle des processeurs.
Pour faire fonctionner ces algorithmes, il faut demander au
compilateur d'utiliser les instructions atomiques du processeur.
compilateur d'utiliser les instructions atomiques du processeur,
mais alors pourquoi utiliser ces algorithmes, si l'on dispose
d'opérateurs atomiques ?
** Le code en C11
Ce code illustre le modèle mémoire de C11 (acquire-release).
Ce code illustre le modèle mémoire de C11 (acquire-release) sur
l'algorithme de Dekker. Néanmoins, il serait beaucoup plus simple
de faire une attente active avec les opérateurs atomiques.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment