Race Conditions

aus WB Wiki; freien Wissensdatenbank rund ums Thema Computer
Wechseln zu: Navigation, Suche

Wenn zwei Prozesse auf einen gemeinsamen Speicherplatz lesen oder schreiben wollen und das Ergebnis davon abhängt, wer wann darauf zugreift, ist in der Informatik, speziell in der Interprozesskommunikation, von Race Conditions die Rede.

Um dieses Problem zu lösen, wurden Algorithmen entwickelt, die den gegenseitigen Ausschluss der Prozesse gewährleisten. Möchte zum Beispiel Prozess B in die kritische Section zugreifen, wo gerade Prozess A am arbeiten ist, so muss der Algorithmus dafür sorgen, dass Prozess B der Zugriff verboten wird.

Algorithmen die den gegenseitigen Ausschluss von Prozessen gewährleisten:

Eine elegantere Lösung lässt sich es mit den Semaphoren realisieren. Mit Semaphoren kann man sogar gewährleisten, dass mehrere Prozesse gleichzeitig auf dem Speicherplatz zugreifen können. Weitere, elegantere Lösungen bieten Mutexe, Monitore, und Sleep/Wakeup.