Vous êtes sur la page 1sur 21

Seguridad en Sistemas Operativos Unidad 1

Procesos, gestin de memoria y sistema de archivos 1.3 Comunicacin y conflicto entre procesos

Seguridad en Sistemas Operativos Unidad 1 Comunicacin y conflicto entre procesos


- Aveces los procesos necesitan comunicarse con otros
procesos $ cat arch1 arch2 | grep algo (El resultado de un proceso es la entrada de otro proceso)

Seguridad en Sistemas Operativos Unidad 1 Comunicacin y conflicto entre procesos


Cuestiones en las cuales se puede dar la comunicacin entre procesos: * Para pasar informacin a un proceso (resultado->entrada) * Dos o mas procesos no se interpongan entre si(aerolnea) * Secuencia adecuada para la resolucin de peticiones
(trabajos de impresin)

Seguridad en Sistemas Operativos Unidad 1 Comunicacin y conflicto entre procesos


En algunos sistemas operativos, los procesos que trabajan juntos pueden compartir cierto espacio de almacenamiento en el que pueden escribir y leer datos, este espacio puede ser un espacio en memoria o un archivo compartido. Condiciones de carrera: Cuando dos o ms procesos estn leyendo o escribiendo algunos datos compartidos y el resultado final depende de quien se ejecuta y cuando lo hace. Ejemplo: Spooler de impresin

Seguridad en Sistemas Operativos Unidad 1 Comunicacin y conflicto entre procesos


Condiciones de carrera (spooler de impresin)

Seguridad en Sistemas Operativos Unidad 1 Comunicacin y conflicto entre procesos


Una manera de solucionar las condiciones de carrera es buscando una manera de prohibir que mas de un proceso lea y escriba los datos compartidos al mismo tiempo. Se necesita exclusin mutua, que es la forma de asegurar que si un proceso esta utilizando una variable o archivo compartido, los dems proceso se excluirn de hacer lo mismo.

Seguridad en Sistemas Operativos Unidad 1 Comunicacin y conflicto entre procesos


REGION CRITICA Parte del tiempo un proceso esta ocupado realizando clculos internos y otras operaciones que no producen condiciones de carrera. Algunas veces un proceso debe de acceder a la memoria compartida o archivos compartidos u otras cosas que pueden producir condiciones de carrera. La parte del programa donde se accede a la memoria compartida se conoce como regin critica o seccin critica.

Seguridad en Sistemas Operativos Unidad 1 Comunicacin y conflicto entre procesos


REGION CRITICA Se necesita que los procesos cooperen de manera correcta y eficiente al utilizar datos compartidos, para ello necesitamos cumplir 4 condiciones para tener una buena solucin:
+ No puede haber 2 o mas procesos de manera simultanea dentro de sus regiones criticas + No pueden hacerse suposiciones de las velocidades o numero de procesadores + Ningn proceso que se encuentre fuera de su regin critica puede bloquear otros procesos + Ningn proceso debe de esperar para siempre para entrar en su regin critica

Seguridad en Sistemas Operativos Unidad 1 Comunicacin y conflicto entre procesos


Exclusin mutua mediante el uso de regiones criticas

Seguridad en Sistemas Operativos Unidad 1 Comunicacin y conflicto entre procesos


EXCLUSION MUTUA CON ESPERA OCUPADA (1) Deshabilitando interrupciones (2) Variables de candado (3) Alternancia estricta (4) Solucin de Peterson

Seguridad en Sistemas Operativos Unidad 1 Comunicacin y conflicto entre procesos


EXCLUSION MUTUA CON ESPERA OCUPADA (1) Deshabilitando interrupciones Un proceso al entrar en su regin critica deshabilita las interrupciones de procesador y al salir de ella las habilita para que otro proceso pudiera entrar en su regin critica. Aprovecha que los proceso solo se conmutan en el CPU nicamente como resultado de una interrupcin. No es conveniente su uso, ya que se le da el poder a un proceso de usuario el poder de desactivar las interrupciones.

Seguridad en Sistemas Operativos Unidad 1 Comunicacin y conflicto entre procesos


EXCLUSION MUTUA CON ESPERA OCUPADA (1) Deshabilitando interrupciones Suponga que un proceso desactiva las interrupciones y nunca mas las vuelva activar, que sucedera? A menudo desactivar interrupciones es til para los sistemas operativos, pero no es apropiada como mecanismo de exclusin mutua general para los procesos de usuario.

Seguridad en Sistemas Operativos Unidad 1 Comunicacin y conflicto entre procesos


EXCLUSION MUTUA CON ESPERA OCUPADA (1) Deshabilitando interrupciones La posibilidad de lograr la exclusin mutua deshabilitando las interrupciones esta disminuyendo da con da debido la aparicin de chips multi ncleo incluyendo las pc's de bajo rendimiento. En las pc's multi ncleo se deshabilita las interrupciones en un ncleo, pero los dems podran entrar en la regin critica

Seguridad en Sistemas Operativos Unidad 1 Comunicacin y conflicto entre procesos


EXCLUSION MUTUA CON ESPERA OCUPADA (2) Variables de candado - Es una solucin por software, considere una sola variable compartida(candado), que al principio es 0, el proceso lo coloca a 1 y entra a su regin critica, cuando el candado es 1 espera hasta que este sea 1. - Tiene el mismo error fatal que el spooler, suponga que un proceso lee el candado y encuentra 0, antes de que logre cambiarlo a 1, otro proceso lo coloca a 1, cuando el primer proceso continu ejecutndose colocara el candado tambin en 1 y ambos procesos entraran en su regin critica.

Seguridad en Sistemas Operativos Unidad 1 Comunicacin y conflicto entre procesos


EXCLUSION MUTUA CON ESPERA OCUPADA (2) Variables de candado - Se podra pensar que se puede solucionar leyendo la variable de candado y justamente antes de modificarlo volvemos a confirmar el estado, pero en realidad esto no ayuda, la condicin de carrera se efecta ahora en la verificacin/escritura

Seguridad en Sistemas Operativos Unidad 1 Comunicacin y conflicto entre procesos


EXCLUSION MUTUA CON ESPERA OCUPADA (3) Alternancia estricta

Seguridad en Sistemas Operativos Unidad 1 Comunicacin y conflicto entre procesos


EXCLUSION MUTUA CON ESPERA OCUPADA (3) Alternancia estricta Espera ocupada: accin de evaluar de forma continua una variable hasta que aparezca cierto valor. La espera ocupada nicamente cuando hay una expectativa razonable de que la espera ser corta.

al fin tenemos una solucin?

Seguridad en Sistemas Operativos Unidad 1 Comunicacin y conflicto entre procesos


EXCLUSION MUTUA CON ESPERA OCUPADA (3) Alternancia estricta Esta solucin tiene problemas cuando uno de los procesos es mas lento que el otro, esto deja a un proceso esperando a que el otro proceso cambien el valor de la bandera.

Seguridad en Sistemas Operativos Unidad 1 Comunicacin y conflicto entre procesos


EXCLUSION MUTUA CON ESPERA OCUPADA (3) Alternancia estricta Esta solucin tiene problemas cuando uno de los procesos es mas lento que el otro, esto deja a un proceso esperando a que el otro proceso cambien el valor de la bandera.

Seguridad en Sistemas Operativos Unidad 1 Comunicacin y conflicto entre procesos

Solucin de Peterson

Seguridad en Sistemas Operativos Unidad 1 Comunicacin y conflicto entre procesos


EXCLUSION MUTUA CON ESPERA OCUPADA (4) Solucin de Peterson Tarea 2 Analice y explique en que consiste la SOLUCION DE PETERSON Tarea 3 Elabore una pequea aplicacin con el uso de BD, la cual, emular el uso de regiones criticas para ciertos datos.

Vous aimerez peut-être aussi