Actividad1

UNIVERSIDAD NACIONAL AUTONOMA DE HONDURAS Asignatura: Sistemas Operativos I Trabajo asignado: Actividad 1 31 de Julio

Views 172 Downloads 1 File size 141KB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

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

implementada

operación signal como

() también

instrucción

tiene

atómica.

que En

estar 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