Table des matières:
Définition - Que signifie l'opération atomique?
Les opérations atomiques dans la programmation simultanée sont des opérations de programme qui s'exécutent complètement indépendamment de tout autre processus.
Les opérations atomiques sont utilisées dans de nombreux systèmes d'exploitation modernes et systèmes de traitement parallèle.
Techopedia explique le fonctionnement atomique
Les opérations atomiques sont souvent utilisées dans le noyau, le composant principal de la plupart des systèmes d'exploitation. Cependant, la plupart du matériel informatique, des compilateurs et des bibliothèques fournissent également des niveaux variables d'opérations atomiques.
Lors du chargement et du stockage, le matériel informatique effectue l'écriture et la lecture dans une mémoire de taille de mot. Pour extraire, ajouter ou soustraire, l'augmentation de valeur a lieu par le biais d'opérations atomiques. Lors d'une opération atomique, un processeur peut lire et écrire un emplacement pendant la même transmission de données. De cette façon, un autre mécanisme ou processeur d'entrée / sortie ne peut pas effectuer de tâches de lecture ou d'écriture en mémoire tant que l'opération atomique n'est pas terminée.
Lorsque des données sont utilisées par une opération atomique qui est également utilisée par d'autres opérations atomiques ou non atomiques, elles ne peuvent exister que dans des environnements de traitement séquentiel ou des mécanismes de verrouillage doivent être utilisés pour éviter les erreurs de données. La comparaison et l'échange sont une autre méthode mais ne garantissent pas l'intégrité des données pour les résultats de l'opération atomique.
Le problème survient lorsque deux opérations exécutées en parallèle (opérations simultanées) utilisent les mêmes données et qu'une disparité entre les résultats des opérations se produit. Le verrouillage verrouille les données variables et force le fonctionnement séquentiel des processus atomiques qui utilisent les mêmes données ou les affectent d'une manière ou d'une autre.
