Sincronizare

De la Wikipedia, enciclopedia liberă.
Salt la navigare Salt la căutare
Notă despre dezambiguizare.svg Dezambiguizare - Dacă sunteți în căutarea unei tehnici omonime în realizarea filmelor , consultați Sincronizare (cinema) .

În informatică , sincronizarea este problema ordonării temporale a operațiilor.

Dacă toate operațiunile sunt efectuate în serie, problema de sincronizare nu există. Cu toate acestea, de multe ori, pentru a exploata mai bine sistemul și, prin urmare, a accelera procesarea, se utilizează paralelismul , care constă în pornirea mai multor fluxuri de execuție simultane (vezi multithreading ). Atâta timp cât operațiunile efectuate în paralel utilizează părți distincte ale sistemului, nu există nicio problemă, dar, atunci când două componente hardware sau software funcționează în paralel pe aceeași parte a sistemului, poate exista un conflict.

Codul care poate fi executat doar printr-un proces la un moment dat (deoarece conține date partajate, acces la resurse etc.) se numește o secțiune critică .

Unele conflicte pot fi rezolvate doar prin garantarea excluderii reciproce , adică prin serializarea acceselor, în sensul că primul care trebuie să opereze în partea comună îl blochează, îl operează și îl eliberează în cele din urmă, iar al doilea, când îl găsește blocat, se oprește în așteptarea deblocării acestuia. Excluderea reciprocă este cel mai simplu tip de sincronizare și se poate realiza prin intermediul unor monitoare , încuietori sau semafoare .

Pentru a evita alte tipuri de conflicte, sunt necesare forme mai complexe de sincronizare.

Elemente conexe

Alte proiecte

Informatică Portal IT : accesați intrările Wikipedia care se ocupă cu IT