Concurrency Flashcards

1
Q

Gründe für Nebenläufigkeit

A
  • Asynchrones Events
  • Multitasking/- Threading
  • Client-Server Architektur
  • Multicore Hardware
  • Cloud Computing
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Probleme bei Nebenläufigkeit

A
  • Race Conditions
  • Synchronisation
  • Authentikation in Kommunikation zwischen Prozessen
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Race Condition

Problem/ Erklärung

A
  • Verschiedene Prozesse arbeiten gleichzeitig auf den selben Ressourcen
  • Nicht deterministisches Verhalten
  • TOCTOU
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Was bedeutet Toctou? (Abk.)

A

Time-of-Check-to-Time-of-Use

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
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
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Synchronisation

Allgemein

A
  • Semaphoren

- Mutexe

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
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
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Synchronisation

Probleme

A
  • Falsche Nutzung
  • Keine Freigabe nach Nutzung
  • Deadlock
  • Namenskonflikte
How well did you know this?
1
Not at all
2
3
4
5
Perfectly