Atomicité (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 Atomicité (Informatique) de Wikipédia en français (auteurs)

Regardez d'autres dictionnaires:

  • Atomicité (informatique) — Pour les articles homonymes, voir Atomicité. 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 pouvoir être interrompue avant… …   Wikipédia en Français

  • atomicité — ● n. f. ►BASDON Caractéristique de certains opérations complexes, en particulier les transactions, qui ne seront réellement effectuées que si toutes ses composantes peuvent être réalisées. Sinon, rien ne sera fait. Voir atomique …   Dictionnaire d'informatique francophone

  • Atomicité — Cette page d’homonymie répertorie les différents sujets et articles partageant un même nom. Sur les autres projets Wikimedia : « Atomicité », sur le Wiktionnaire (dictionnaire universel) En informatique, l atomicité est propriété… …   Wikipédia en Français

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

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

  • Parallélisme (informatique) — Pour les articles homonymes, voir parallèle. Blue Gene L cabinet., un des ordinateurs massivement parallèle les plus rapides des années 2000 En informatiqu …   Wikipédia en Français

  • Transaction informatique — En informatique, et particulièrement dans les bases de données, une transaction telle qu une réservation, un achat ou un paiement est mise en œuvre via une suite d opérations qui font passer la base de données d un état A antérieur à la… …   Wikipédia en Français

  • Thread (informatique) — Pour les articles homonymes, voir Thread et Fil. Un processus avec deux threads. Un thread ou fil (d exécution) o …   Wikipédia en Français

  • Fibre (informatique) — Pour les articles homonymes, voir Fibre (homonymie). En Informatique, une fibre (fiber en anglais) est un thread d exécution particulièrement léger. Comme les threads, les fibres partagent la même mémoire virtuelle. Toutefois, les fibres… …   Wikipédia en Français

  • Sémaphore (informatique) — Pour les articles homonymes, voir sémaphore. Un sémaphore permet de protéger une variable (ou un type de donnée abstrait) et constitue la méthode utilisée couramment pour restreindre l accès à des ressources partagées (par exemple un espace de… …   Wikipédia en Français

Share the article and excerpts

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