Estados de Ejecución de un Proceso

Untitled

Semáforos

Mecanismos de sincronismo, implementado como una construcción de un programación concurrente de más alto nivel.

Un semáforo es un contador:

p (wait): resta 1 al contador.

v (signal): suma 1 al contador.

Wait(S) y Signal(s)

Wait(S)

if S.V > 0
	S.V := S.V - 1
else
	S.L add p
	p.state := blocked

Signal(S)

if S.L is empty
	S.V := S.V + 1
else
	sea q un elemento arbitrario del conjunto S.L
	S.L remove q
	q.state := ready

Semáforo binario o Mutex