Atomique (informatique)

Atomique (informatique)

Atomicité (informatique)

Page d'aide sur l'homonymie Pour les articles homonymes, voir Atomicité.
Les méthodes de synchronisation

Barrière de synchronisation - Futex - Moniteur

Mutex - Sémaphore - Spinlock

L'atomicité est une propriété utilisée en programmation concurrente pour désigner une opération ou un ensemble d'opérations d'un programme qui s'exécute entièrement sans que le processus ou le thread qui la gère cède la place à un autre processus pendant tout le déroulement. Une opération qui vérifie cette propriété est qualifiée d'atomique.

En règle générale, les instructions assembleur peuvent être considérées comme atomiques.

Par extension, il est possible de dire qu'une section critique protégée par une exclusion mutuelle est aussi atomique.

Exemple d'instruction spéciale devant être atomique

L'instruction Test And Set est un exemple concret d'instruction devant être atomique. Cette instruction travaille sur une variable booléenne (ici notée V). Le fonctionnement de cette instruction est le suivant :

TEST_AND_SET(V) :
    C = non V
    V = Vrai
    retourner C

Une telle instruction (si elle est atomique) permet d'implémenter un algorithme d'exclusion mutuelle par attente active. En effet, il est possible de définir les protocoles d'entrée et de sortie suivants :

Entree :
   REPETER
      ne rien faire
   JUSQU'A TEST_AND_SET(Verrou)
SORTIE :
   Verrou = Faux -- Cette affectation est considérée comme atomique.

Le protocole d'entrée boucle tant que la variable Verrou est vrai. Si celle-ci est fausse, alors TEST_AND_SET retourne Vrai et modifie cette dernière variable. Le protocole de sortie fixe simplement la variable Verrou à faux ce qui autorise l'entrée d'une tâche dans la section critique.

  • Portail de la programmation informatique Portail de la programmation informatique
Ce document provient de « Atomicit%C3%A9 (informatique) ».

Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article Atomique (informatique) de Wikipédia en français (auteurs)

Игры ⚽ Поможем решить контрольную работу

Regardez d'autres dictionnaires:

  • Atomique (Informatique) — Atomicité (informatique) Pour les articles homonymes, voir Atomicité. Les méthodes de synchronisation Barriè …   Wikipédia en Français

  • ATOMIQUE (PHYSIQUE) — La physique atomique est une discipline de la physique au même titre que la physique nucléaire ou que la physique de la matière condensée. Elle s’intéresse à des édifices simples – atomes, atomes ionisés (ou ions), éventuellement molécules à… …   Encyclopédie Universelle

  • INFORMATIQUE - Évolution des systèmes de traitement de l’information — Un usage maintenant bien établi associe étroitement le mot «informatique» au principe du traitement de l’information à l’aide de machines électroniques perfectionnées. Sans insister sur l’ambiguïté de l’expression «traitement de l’information» et …   Encyclopédie Universelle

  • atomique — ● adj. ►BASDON Se dit d opérations que l on peut considérer comme indivisibles. Par exemple, une instruction assembleur du processeur l est. Le fait de tester une variable *et* d effectuer un branchement ne l est pas forcément (c est d ailleurs… …   Dictionnaire d'informatique francophone

  • Commissariat à l'énergie atomique et aux énergies alternatives — Création 18 octobre 1945 Siège …   Wikipédia en Français

  • Commissariat a l'energie atomique — Commissariat à l énergie atomique Commissariat à l énergie atomique Création : 18 octobre 1945 Siège  …   Wikipédia en Français

  • Commissariat À L'énergie Atomique — Création : 18 octobre 1945 Siège  …   Wikipédia en Français

  • Commissariat à l'Energie Atomique — Commissariat à l énergie atomique Commissariat à l énergie atomique Création : 18 octobre 1945 Siège  …   Wikipédia en Français

  • Commissariat à l'Énergie Atomique — Création : 18 octobre 1945 Siège  …   Wikipédia en Français

  • Commissariat à l'énergie atomique — Création : 18 octobre 1945 Siège  …   Wikipédia en Français

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”