Concurrency Flashcards
1
Q
Gründe für Nebenläufigkeit
A
- Asynchrones Events
- Multitasking/- Threading
- Client-Server Architektur
- Multicore Hardware
- Cloud Computing
2
Q
Probleme bei Nebenläufigkeit
A
- Race Conditions
- Synchronisation
- Authentikation in Kommunikation zwischen Prozessen
3
Q
Race Condition
Problem/ Erklärung
A
- Verschiedene Prozesse arbeiten gleichzeitig auf den selben Ressourcen
- Nicht deterministisches Verhalten
- TOCTOU
4
Q
Was bedeutet Toctou? (Abk.)
A
Time-of-Check-to-Time-of-Use
5
Q
Bedeutung Toctou (Erklärung)
A
Zwischen Prüfung (z.B. Zugriffsberechtigung) und Aktion kann das Programm in der Ausführung unterbroche nwerden und ein Angreifer z.B. die Datei tauschen
6
Q
Race Conditions
Lösungsansatz
A
- Prüfung und Nutzung nicht trennen
- File Deskriptoren statt Pfade verwenden
- Bestätige Ressourcen, Referenzen und Identitäten beim Zugriff, denn Unterbrechungen können nicht verhindert werden.
- Verwendung atomarer Methoden
7
Q
Synchronisation
Allgemein
A
- Semaphoren
- Mutexe
8
Q
Was ist eine Semaphore?
A
- Zähler mit Startwert > 0
- Jede Sperre dekrementiert Zähler, jeder Freigabe inkrementiert
- Semaphore bei 0, dann wird Aufrufer geblockt
9
Q
Synchronisation
Probleme
A
- Falsche Nutzung
- Keine Freigabe nach Nutzung
- Deadlock
- Namenskonflikte