Está en la página 1de 6

UNIVERSIDAD NACIONAL AUTONOMA DE HONDURAS

Asignatura: Sistemas Operativos I

Trabajo asignado: Actividad 1

31 de Julio del 2020


INTRODUCCION

En el presente documento se trata de dar respuesta referente al tema de los Semáforos.

Investigue:

1. ¿Qué operaciones pueden ser realizadas sobre un semáforo?


R=// Existen tres tipos de operaciones realizadas por los semáforos.

A. Init (): Inicializa el semáforo antes de que cualquier proceso haya


ejecutado ni una operación wait () ni una operación signal () al límite
de número de procesos que tengan derecho a acceder el recurso.
Si se inicializa con 1, se ha construido un semáforo binario.
[ CITATION DrA05 \l 18442 ]

B. Wait (): Si el estado indica cero, el proceso se queda atrapado en el


semáforo hasta que sea despertado por otro proceso. Si el estado
indica que un proceso más puede acceder el recurso se
decremento el contador y la operación termina con éxito. [ CITATION
DrA05 \l 18442 ]

C. signal (): Una vez se ha terminado el uso del recurso, el proceso lo


señaliza al semáforo. Si queda algún proceso bloqueado en el
semáforo uno de ellos sea despertado, sino se incrementa el
contador. La operación signal () también tiene que estar
implementada como instrucción atómica. En algunas
implementaciones es posible comprobar si se haya despertado un
proceso con éxito en caso que hubiera alguno bloqueado. [ CITATION
DrA05 \l 18442 ]

2. ¿Cuál es la diferencia entre semáforos binarios y semáforos generales?


Una de las mayores y más claras diferencias es que los semáforos binarios solo
pueden tomar dos cantidades de valores (0 y 1), en comparación a los semáforos
generales que pueden tomar cualquier número no negativo, esto con el objetivo
de poder hacer conteos, otra diferencia es su aplicación, como los semáforos
binarios solo pueden tomar dos valores (0 y 1) se utilizan solo cuando un proceso
puede acceder a un recurso a la vez, en comparación con los semáforos generales
que si pueden usarse para varios procesos y también para varios recursos.

3. ¿Cuál es la diferencia entre semáforos fuertes y semáforos débiles?

La diferencia radica en que los semáforos débiles no especifican el orden en el que


se retiraran los procesos de la cola, mientras que los semáforos fuertes emplean la
política FIFO ((Primero En Entrar, Primero En Salir): viene del inglés “First In, First
Out” y se basa en que el lote de stock que primera entra, es el que primero sale),
en donde el proceso que se ha bloqueado durante más tiempo se libera de cola de
listo.
CONCLUCION

 Un semáforo es una variable especial (o tipo abstracto de datos) que constituye el


método clásico para restringir o permitir el acceso a recursos compartidos (por
ejemplo, un recurso de almacenamiento del sistema o variables del código fuente)
en un entorno de multiprocesamiento (en el que se ejecutarán varios procesos
concurrentemente).
 Un tipo simple de semáforo es el binario, que puede tomar solamente los valores 0
y 1. Se inicializan en 1 y son usados cuando sólo un proceso puede acceder a un
recurso a la vez. Son esencialmente lo mismo que los mutex.
 Los semáforos pueden ser usados para diferentes propósitos, entre ellos: Permitir
a un máximo de N threads (hilos) acceder a un recurso, inicializando el semáforo
en N
 Notificación. Inicializando el semáforo en 0 puede usarse para comunicación entre
threads sobre la disponibilidad de un recurso
Bibliografía
Formella, D. A. ( 2005). Formella webs. Obtenido de Formella webs:
http://formella.webs.uvigo.es/doc/cd04/node64.html

También podría gustarte