03 Locks Flashcards

1
Q

desarrolle Locks

A

Intro

  • objetivo: ejecutar una serie de instrucciones de forma atomica.
  • que es. Una variable que mantiene el estado del lock en todo momento. Puede estar adquirido (por un proceso) o disponible (no lo tiene ningun proceso).

Semantica
- la interaccion con Locks se da mediante dos metodos: Lock y unlock.

Construccion
- Para construir adecuadamente un lock, es necesario hacer uso de primitivas de hardware, implementadas en los procesadores, y de primitivas del SO.

Evaluacion

  • excl. mutua
  • fairness
  • performance

Implementaciones estudiadas

  • suspencion de interrupciones (pro: simple. Contra: op. privilegiada; falla en multiproc.; se pueden perder interrupciones de interes; ineficiente).
  • Spin lock (excl. mutua)
    • test and set. Es de hard.
    • compare and swap. Es de hard.
    • load linked and store conditional. Es de hard.
    • fetch and add. Es de hard.
  • YIELD (SO)
  • Colas.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly