Marcelo Bazan

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 3

 TEMA: PROCESO PARALELO E INTERBLOQUEO

 Alumno: Marcelo Adrian Bazan Mendez.

 Carrera: Análisis de Sistemas


Ejercicios
1. Analiza y describe dos algoritmos de sincronización de procesos.

- Semaforo

Un semáforo sirve para permitir o restringir a los hilos o procesos el acceso a algún

recurso compartido.

Cuentan con dos operaciones básicamente, una es para reservarlo “wait (espera)” y

la otra para liberarlo “signal (señal)”, equivalente down y up.

Pueden ser binarios o generales.

Hay una tercera operación en los semáforos, que es el inicializador, esta operación

definirá si el semáforo será binario o no, es decir, si se inicializa con 1, el semáforo

será binario ya que solo podrá manejar un recurso compartido, en caso de tener “N”

recursos compartidos se inicializará con “N”. De igual si tenemos “N” procesos

inicializamos un semáforo para que solo “N” procesos acceda a un recurso

compartido.

La operación “Down” consiste en ir disminuyendo el número de recursos que posee

el semáforo, cuando este contador llegue a 0, entonces el proceso quedará bloqueado

en espera de que dicho contador sea liberado por medio de un “Up”.

Hay semáforos que tiene la operación de manejar una cola del tipo FIFO (PEPS) para

llevar el control de los procesos que están solicitando los recursos, así cuando se

liberen los recursos estos puedan asignarle dicho recurso al primer proceso que lo

solicito.
- Carnicería
El algoritmo de la panadería toma su nombre de la costumbre de las Carnicerías en
general, donde las personas al entrar al local obtienen un número de turno (único) y
lo utilizan para que el dependiente les vaya atendiendo en orden de llegada. El cliente
obtiene su número de turno usando una cinta de papel que ofrece boletos con
números consecutivos.

El dependiente sólo puede atender a una persona al mismo tiempo, lo que concuerda
con el uso de un recurso de forma exclusiva: el recurso es el dependiente y la sección
crítica de un cliente es lo que realiza mientras es atendido.

El sistema mantiene un número (variable global) que refleja el número de turno del
cliente que se está atendiendo en el instante actual. Los clientes deben esperar en
una cola hasta que llega su turno. Una vez que se acaba con un cliente, la variable
global se incrementa en uno y el cliente que tenga un boleto con ese número pasa a
ser atendido. Cuando termina una compra, el cliente se desprende de su boleto y se
dedica a realizar cualquier otra actividad libremente (guardar el dinero en la billetera,
retirarse, etc.), ya que no se encuentra más en su sección crítica. Si más tarde quiere
volver a comprar, tendrá que obtener un nuevo número.

En el modelo algorítmico que se propone, cada cliente es un hilo, identificado con un


número único i. Los hilos se deben coordinar para decidir en cada momento qué hilo
tiene derecho a ejecutar su código de sección crítica.

También podría gustarte