Teoría de Sistemas Operativos Departamento de Electrónica 2º Semestre, 2002 Gabriel Astudillo Muñoz

Slides:



Advertisements
Presentaciones similares
GESTION DE PROCESOS.
Advertisements

Concurrencia Exclusión mutua y sincronización
Mecanismo de semáforos
III - Gestión de memoria
I.T.E.S.R.C. Romina Tamez Andrea Martínez Ma. De Lourdes Solís
Administración de procesos y del procesador.
ESTADOS DE PROCESOS L.I. Ramiro Robles Villanueva.
INTERPROCESS COMMUNICATIONS-1 Cátedra: Sistemas Operativos UTN-FRSF
Concepto de programa. Directorio Concepto de programa. Analisis del problema. Resolucion del problema. Desarroollo de un programa. Partes constitutivas.
Comunicación entre procesos en Linux
Tema II Unidad de memoria. 2 Unidad de memoria 2.1 Definiciones y conceptos básicos Localización Capacidad Unidad de transferencia
SISTEMAS OPERATIVOS UNIDAD 1..
Administración de procesos y del procesador.
Johanna Lizeth Rodríguez Lorena Fda. Chávarro Ramos
7a.1 Silberschatz, Galvin y Gagne ©2003 Sistemas Operativos 6ª edición Capítulo 7: Sincronización de procesos parte a.
Material de apoyo Unidad 2 Estructura de datos
Tema 6: Clases Antonio J. Sierra.
Arquitectura del Computador
HILOS Y COMUNICACIÓN ENTRE PROCESOS
TRADUCTOR DE UN PROGRAMA
Bloqueos Mortales Cecilia Hernández Bloqueos Mortales Definición Un proceso/hebra esta bloqueada cuando esta esperando por un evento que nunca ocurrirá.
Concurrencia: Exclusión Mútua y Sincronización
Conceptos generales: Concurrencia: Existencia simultánea de varios procesos en ejecución. IMPORTANTE: EXISTENCIA SIMULTÁNEA NO IMPLICA EJECUCIÓN SIMULTÁNEA.
Sincronización de Procesos Semáforos Emely Arráiz Ene-Mar 08.
Semáforos Cecilia Hernández
Unidad III Administración de procesos
Modelo de Von Neumann Ana Lilia Laureano-Cruces Departamento de Sistemas Universidad Autónoma Metropolitana.
IET110 Sistemas Operativos P04: Exclusión Mutua Prof. Jonathan MakucSlide: 1.
COMPUTACIÓN I TEMA 6. Pasaje de parámetros por Referencia. Uso de apuntadores Prof. Mireya Morales.
PROGRAMACION CONCURRENTE
Lenguaje de Programación cap. 1 Estructura del Computador.
Sebastián Sánchez Prieto
Teoría de Sistemas Operativos Departamento de Electrónica 2º Semestre, 2002 Gabriel Astudillo Muñoz
Planificación y Gestión de procesos
 El acceso concurrente a datos compartidos puede dar pie a inconsistencia de datos  Mantener la consistencia de los datos requiere mecanismos para asegurar.
Gestión de Procesos Gestión de Procesos Procesos Planificación CPU
Capítulo 7 Gestión de memoria.
Gestión de procesos Sistemas Operativos Edwin Morales
Programación secuencial vs programación concurrente
Sincronización de Procesos
Sincronización de Procesos
Tema 9.6: Sincronización de Procesos
Monitores Cabudare, noviembre de 2010 Universidad Fermín Toro
Sistemas operativos de tiempo Real Alejandro Celery RTOS - Sistemas Embebidos FI-UBA1.
Teoría de Sistemas Operativos Introducción Departamento de Electrónica 2º Semestre, 2003 Gabriel Astudillo Muñoz
Teoría de Sistemas Operativos Sincronización Procesos Departamento de Electrónica 2º Semestre, 2003 Gabriel Astudillo Muñoz
Integrantes: Ma Carmen Zaragoza Santiago Leticia González Hernández Abraham Obispo Antonio Alexis González Ramírez Eduardo Hernández Tolentino.
Administrador de procesos
CONCEPTOS FUNDAMENTALES DEL NIVEL DEL SISTEMA OPERATIVO
Cuentas de usuarios y grupos en windows 2008 server
SISTEMAS OPERATIVOS DEADLOCK ABRAZO MORTAL BLOQUEO MUTUO.
Estructura de los Sistemas Operativos
Teoría de Sistemas Operativos Sincronización Procesos
ELEMENTOS DE COMPUTACIÓN Profesor: Guillermo Figueroa
Teoría de Sistemas Operativos Sistema de I/O. 2 Introducción Una de las funciones principales del sistema operativo es el control de todos los dispositivos.
Unidad 2 – Gestión de Procesos
Protocolos de Sondeo SNOOPY
Threads en Java  Threads: programas multitarea  Creación de threads  Ciclo de vida de un thread  Sincronización.
Teoría de Sistemas Operativos Memoria Departamento de Electrónica 2º Semestre, 2003 Gabriel Astudillo Muñoz
ALMACENAMIENTO DE DATOS. Son componentes que leen o escriben datos en medios o soportes de almacenamiento, y juntos conforman lamemoria o almacenamiento.
UTFSM - Sistemas Operativos
INTERRUPCIONES – ABRAZO MORTAL
Licenciatura Tecnologías de la Información y Comunicación
DOCENTE: DAISY KATERINE RODRÍGUEZ DURÁN. CONTENIDO TEMÁTICO SISTEMAS OPERATIVOS PAQUETES INTEGRADOS DE OFICINA PROCESOS Y PROCEDIMIIENTOS DE UNIDAD ADMINISTRATIVA.
Desarrollador Profesional de Juegos Programación III Unidad II Trabajando con bloqueo de datos.
Teoría de Sistemas Operativos Procesos Departamento de Electrónica 2º Semestre, 2003 Gabriel Astudillo Muñoz
1 Unidades funcionales de un ordenador Procesadores Memorias Dispositivos de E/S
Historia de los sistemas operativos. Los Sistemas Operativos han sufrido una serie de cambios revolucionarios llamados generaciones. Hay cuatro generaciones:
1 Tema 6: Concurrencia de Procesos Sistemas Operativos.
El principal trabajo del procesador es ejecutar las instrucciones de máquina que se encuentran en memoria principal. Estas instrucciones se encuentran.
Transcripción de la presentación:

Teoría de Sistemas Operativos Departamento de Electrónica 2º Semestre, 2002 Gabriel Astudillo Muñoz

2 IPC Problema Proceso 1Proceso N SO Recurso Cada proceso pide recursos El SO se encarga de la sincronización Competencia Conceptos Soluciones Boqueo Mutuo

3 IPC Problema Competencia Imaginemos que dos procesos leen o escriben ciertas zonas compartidas El resultado final puede depender de lo que cada proceso ejecutó. Conceptos Soluciones Boqueo Mutuo

4 IPC Problema Competencia Job 1 Job 2 Job In = 7, Out=4 A B Ejemplo Cada Proceso: Lee In carga celda, In Escribe en celda In++ Conceptos Soluciones Boqueo Mutuo

5 IPC Problema Competencia Job 1 Job 2 Job In = 7, Out=4 A B In=7 Ejemplo Conceptos Soluciones Boqueo Mutuo

6 IPC Problema Competencia Job 1 Job 2 Job In = 7, Out=4 A (celda=7) B In=7 Ejemplo Conceptos Soluciones Boqueo Mutuo

7 IPC Problema Competencia Job 1 Job 2 Job In = 7, Out=4 A (celda=7) B In=7 Scheduler interrumpe a A y le da tiempo de CPU a B Ejemplo Conceptos Soluciones Boqueo Mutuo

8 IPC Problema Competencia Job 1 Job 2 Job In = 7, Out=4 A (celda=7) B In=7 Ejemplo Conceptos Soluciones Boqueo Mutuo

9 IPC Problema Competencia Job 1 Job 2 Job In = 7, Out=4 A (celda=7) B: celda=7 In=7 Ejemplo Conceptos Soluciones Boqueo Mutuo

10 IPC Problema Competencia Job 1 Job 2 Job 3 Job B In = 7, Out=4 A (celda=7) B: Escribe Ejemplo Conceptos Soluciones Boqueo Mutuo

11 IPC Problema Competencia Job 1 Job 2 Job 3 Job B In = 8, Out=4 A (celda=7) B: In++ Ejemplo Conceptos Soluciones Boqueo Mutuo

12 IPC Problema Competencia Job 1 Job 2 Job 3 Job B In = 8, Out=4 A (celda=7) B: In++ Scheduler interrumpe a B y le da tiempo de CPU a A Ejemplo Conceptos Soluciones Boqueo Mutuo

13 IPC Problema Competencia Job 1 Job 2 Job 3 Job B In = 8, Out=4 A: celda=7 B: In++ Ejemplo Conceptos Soluciones Boqueo Mutuo

14 IPC Problema Competencia Job 1 Job 2 Job 3 Job A In = 8, Out=4 A: Escribe B: In++ Ejemplo Conceptos Soluciones Boqueo Mutuo

15 IPC Problema Competencia Job 1 Job 2 Job 3 Job A In = 8, Out=4 A: In++ B: In++ Ejemplo Conceptos Soluciones Boqueo Mutuo

16 IPC Problema Competencia Job 1 Job 2 Job 3 Job A In = 8, Out=4 A: In++ B: In++ El trabajo de B se “perdió” Ejemplo Conceptos Soluciones Boqueo Mutuo

17 IPC Problema Competencia Lo anterior se conoce como una “condición de competencia”. Existe la necesidad de eliminar este tipos de condiciones. Conceptos Soluciones Boqueo Mutuo

18 IPC Problema Competencia Conceptos  Exclusión Mutua: concepto que garantiza que si un proceso utiliza un recurso compartido, los demás no pueden utilizarlo.  Sección Crítica: Parte del programa en la que tiene acceso al recurso compartido. ==> Para evitar que existan condiciones de competencia, se debe evitar que dos o más procesos accedan al mismo tiempo a la Sección Crítica Soluciones Boqueo Mutuo

19 IPC Problema Competencia Conceptos Soluciones Cualquier solución al problema debe cumplir: 1.Dos procesos no deben encontrarse al mismo tiempo dentro de sus secciones críticas. 2.No se deben hacer hipótesis sobre la velocidad o el número de CPU. 3.Ningún proceso que esté en ejecución fuera de su sección crítica puede bloquear a otros procesos. 4.Ningún proceso debe esperar eternamente para entrar a su sección crítica. Boqueo Mutuo

20 IPC Problema Competencia Conceptos Soluciones Alternancia estricta: ==> ¿Qué sucede si un proceso quiere entrar dos veces consecutivas a su sección crítica? Boqueo Mutuo

21 IPC Problema Competencia Conceptos Soluciones Alternancia estricta: ==> ¿Qué sucede si un proceso es más lento que el otro? Boqueo Mutuo

22 IPC Problema Competencia Conceptos Soluciones Solución de Peterson: Boqueo Mutuo

23 IPC Problema Competencia Conceptos Soluciones Instrucción TSL: Lee el contenido de una palabra de memoria en un registro para después almacenar un valor distinto de cero en esa dirección Las operaciones de lectura y almacenamiento de la palabra tienen la garantía de ser indivisibles Boqueo Mutuo

24 IPC Problema Competencia Conceptos Soluciones Instrucción TSL: Se emplea una variable compartida, flag. Ésta coordina el acceso al recurso compartido. Cuando flag==0, cualquier proceso puede darle el valor 1 mediante la instrucción TSL y después leer o escribir en el recurso compartido. Al terminar, el proceso vuelve a hacer flag=0. Boqueo Mutuo

25 IPC Problema Competencia Conceptos Soluciones Instrucción TSL: Boqueo Mutuo

26 IPC Problema Competencia Conceptos Soluciones Semáforos: Un semáforo es una variable entera (positiva), cuyo valor sólo puede ser accesado mediante las operaciones wait y signal Boqueo Mutuo

27 IPC Problema Competencia Conceptos Soluciones Semáforos: WAIT: verifica si el valor de un semáforo es mayor que cero y en este caso decrementa dicho valor y el proceso continúa. Si es cero, el proceso se va a dormir Las modificaciones al valor del semáforo sólo se ejecutan en forma indivisible, es decir, si un proceso está modificando un semáforo ningún otro proceso puede esta modificando el mismo valor Boqueo Mutuo

28 IPC Problema Competencia Conceptos Soluciones Semáforos: SIGNAL: incrementa el valor del semáforo respectivo. Si uno o más procesos dormían y no podían completar una operación DOWN anterior, el SO elige alguno de ellos y se le permite terminar la operación WAIT.  después de un SIGNAL en un semáforo con procesos durmiendo, dicho semáforo seguirá con valor 0, pero habrá un menor número de procesos durmiendo. Boqueo Mutuo

29 IPC Problema Competencia Conceptos Soluciones Semáforos: Boqueo Mutuo

30 IPC Problema Competencia Conceptos Soluciones Boqueo Mutuo Se produce cuando un proceso de un sistema multiprogramado espera un evento que nunca va a ocurrir. Un conjunto de procesos está en deadlock cuando cada proceso en el conjunto está esperando por un evento que solo puede ser causado por otro proceso en el conjunto.

31 IPC Problema Competencia Conceptos Soluciones Boqueo Mutuo Ejemplo ¿ Hay Bloqueo Mutuo ?

32 IPC Problema Competencia Conceptos Soluciones Boqueo Mutuo Condiciones para un bloqueo: Cada recurso está asignado a un proceso o está disponible 1.- Condición de exclusión mutua. P1 R1 Asignado

33 IPC Problema Competencia Conceptos Soluciones Boqueo Mutuo Condiciones para un bloqueo: Los procesos que tienen recursos asignados con anterioridad, pueden solicitar nuevos recursos. 2.- Condición de posesión y espera P1 R1 R2 Solicita Asignado

34 IPC Problema Competencia Conceptos Soluciones Boqueo Mutuo Condiciones para un bloqueo: Los recursos asignados no pueden ser forzados a dejar un proceso  El proceso que los posee debe liberarlos en forma explícita. Condición de no apropiación

35 IPC Problema Competencia Conceptos Soluciones Boqueo Mutuo Condiciones para un bloqueo: Debe existir una cadena circular de dos o más procesos, cada uno de los cuales espera un recurso asignado por el siguiente miembro de la cadena. Condición de espera circular P1 R1 P2 R2 Solicita Asignado Solicita Asignado

36 IPC Problema Competencia Conceptos Soluciones Boqueo Mutuo Ejemplo