Presentacion sistemas operativos

9
Daniela Guevara Campos Cod. 2463 Materia: Sistemas Operativos Concurrencia: Exclusión mutua y sincronización

Transcript of Presentacion sistemas operativos

Page 1: Presentacion sistemas operativos

Daniela Guevara Campos

Cod. 2463

Materia: Sistemas Operativos

Concurrencia: Exclusión mutua y sincronización

Page 2: Presentacion sistemas operativos

Concurrencia: exclusión mutua y sincronización

• La concurrencia es el punto clave para el diseño de los Sistemas Operativos donde vemos:

Comunicación entre procesos

Compartición

Competencia por los recursos

Sincronización de la ejecución

Asignación del tiempo de procesador a los procesos

Page 3: Presentacion sistemas operativos

• Se pueden presentar tres contextos diferentes en la concurrencia

Varias aplicaciones

La multiprogramación se creó para permitir que el tiempo de procesador de la máquina fuese compartido dinámicamente entre varios trabajos o aplicaciones activas.

Aplicaciones estructuradas

Como ampliación de los principios del diseño modular y la programación estructurada, algunas aplicaciones pueden implementarse eficazmente como un conjunto de procesos concurrentes.

Estructura del sistema operativo

Las mismas ventajas de estructuración son aplicables a los programadores de sistemas y se ha comprobado que algunos sistemas operativos están implementados como un conjunto de procesos.

Concurrencia: exclusión mutua y sincronización

Page 4: Presentacion sistemas operativos

• Se deben tener algunos conceptos básicos para poder entender y saber en que se basan los sistemas:

Multiprogramación

Es la gestión de varios procesos dentro de un sistema monoprocesador; la mayoría de los computadores personales, estaciones de trabajo y sistemas operativos actuales de estas máquinas dan soporte a la multiprogramación.

Multiproceso

Es la gestión de varios procesos dentro de un sistema multiprocesador. Hasta no hace mucho, los sistemas multiprocesador se utilizaban únicamente en grandes sistemas, computadores centrales y minicomputadores.

Procesos distribuido

Es la gestión de varios procesos que ejecutan en sistemas de computadores múltiples y remotas.

Concurrencia: exclusión mutua y sincronización

Page 5: Presentacion sistemas operativos

• Hay varios elementos de gestión y diseño que surgen por causa de la concurrencia:El sistema operativo debe ser capaz de seguir la pista de los distintos

procesos activos. Esto lo hace por medio de bloques de control de procesos.

El sistema operativo debe asignar y quitar los distintos recursos a cada proceso activo. Entre estos recursos se encuentra el tiempo de procesador, la memoria, los archivos y los dispositivos de E/S.

El sistema operativo debe proteger los datos y los recursos físicos de cada proceso contra injerencias no intencionadas de otros procesos.

Los resultados de un proceso deben ser independientes de la velocidad relativa a la que se realiza la ejecución con respecto a otros procesos concurrentes.

Concurrencia: exclusión mutua y sincronización

Page 6: Presentacion sistemas operativos

• Pueden implementarse soluciones de software para los procesos concurrentes que se ejecuten en máquinas de monoprocesador y multiprocesador con una memoria principal compartida, donde normalmente, estas soluciones suponen que existe una exclusión mutua en el acceso a memoria. Es decir, los accesos simultáneos a la misma posición de memoria se hacen en serie.

Concurrencia: exclusión mutua y sincronización

Page 7: Presentacion sistemas operativos

• El uso de instrucciones especiales de la maquina para hacer cumplir la exclusión mutua tiene varias ventajas entre ellas:a. Es aplicable a cualquier número de procesos en sistemas con

memoria compartida, tanto de monoprocesador como de multiprocesador.

b. Es simple y fácil de verificar.

c. Puede usarse para disponer de varias secciones criticas.

d. Se emplea espera activa, mientras un proceso esta esperando para entrar a la sección critica continua consumiendo tiempo de procesador.

e. Puede producirse inanición.

f. Puede producirse interbloqueo.

Concurrencia: exclusión mutua y sincronización

Page 8: Presentacion sistemas operativos

• Para poder concluir los temas centrales de los sistemas operativos son la multiprogramación, multiproceso y el proceso distribuido. Un punto fundamental para la tecnología en el diseño de sistemas operativos es la concurrencia, cuando se ejecutan varios procesos concurrentemente, en el caso real de un sistema multiprocesador o en el caso virtual de un sistema monoprocesador multiprogramado, aparecen resolución de conflictos y de cooperación.

Concurrencia: exclusión mutua y sincronización

Page 9: Presentacion sistemas operativos

• Los procesos concurrentes pueden interactuar de varias formas, pero los procesos que no tiene conocimiento de ellas uno de los otros pueden competir por recursos tales como el tiempo del procesador o los dispositivos de E/S.

• La exclusión mutua es una condición en la cual hay un conjunto de procesos concurrentes y sólo uno puede acceder a un recurso dado o realizar una función dada en cada instante de tiempo.

Concurrencia: exclusión mutua y sincronización