I.T.E.S.R.C. Romina Tamez Andrea Martínez Ma. De Lourdes Solís

Slides:



Advertisements
Presentaciones similares
Almacenamiento del sistema de archivos La gestión de archivos es uno de los componentes mas visibles de un sistema operativo. Las computadores pueden almacenar.
Advertisements

GESTION DE PROCESOS.
Tabla de Contenido Concurrencia.
Administración de procesos Lic. Orlando Zamora Rdz.
Mecanismo de semáforos
Telecomunicaciones Calificación Final. Primer parcial 30%
UNIX COMP 240.
III - Gestión de memoria
PROGRAMACIÓN PARALELA Tema 5: Análisis de algoritmos paralelos
Servicios de red e Internet
Sistemas en estratos. Descripción: se organiza en una jerarquía de estratos, estando construido cada uno de ellos sobre el otro que tiene menor jerarquía.
SISTEMA DE NACIMIENTOS MANUAL DEL USUARIO. El objetivo del presente manual es servir de guía al usuario final para interactuar con el Sistema, permitiéndole.
Windows XP sp3.
SISTEMAS OPERATIVOS UNIDAD 1..
Por: Santiago Toro Rendón Raquel Sepúlveda.  El SO se instala en una sección definida de la unidad de disco duro, denominada partición de disco. Existen.
ESTRUCTURA DE LOS SISTEMAS OPERATIVOS
HILOS Y COMUNICACIÓN ENTRE PROCESOS
Semana 5 Subprogramas..
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.
PROGRAMACIÓN PARALELA Tema 4: Metodología de la programación
Semáforos Cecilia Hernández
Unidad III Administración de procesos
Ing. Karen Torrealba de Oblitas
Sistemas Concurrentes: Paso de mensajes
 Sincronismo. En toda transmisión debe existir un acuerdo entre el receptor y el emisor, y pueden llegar a él de dos formas: Síncrona, es decir, utilizando.
IET110 Sistemas Operativos P04: Exclusión Mutua Prof. Jonathan MakucSlide: 1.
Sistemas en tiempo real (STR)
Correo electrónico Internet
OBJETOS DISTRIBUIDOS E INVOCACIÓN REMOTA ING. MARISCAL.
ORGANIZACIÓN DE LOS DATOS PARA PROCESARLOS EN COMPUTADORA Las computadoras trabajan con datos. Aceptan y procesan datos, y comunican resultados. No pueden.
 El acceso concurrente a datos compartidos puede dar pie a inconsistencia de datos  Mantener la consistencia de los datos requiere mecanismos para asegurar.
UNIDAD 2. ALGORITMOS Y ESTRUCTURAS DE DATOS.
Capítulo 7 Gestión de memoria.
Gestión de procesos Sistemas Operativos Edwin Morales
Programación secuencial vs programación concurrente
Monitores Mecanismo sincronización de nivel más alto que semáforos Construcción a nivel de lenguaje de programación que controla el acceso a datos compartidos.
INTRANET SERVIDOR / CLIENTE.
Sincronización de Procesos
Sincronización de Procesos
Tema 9.6: Sincronización de Procesos
Monitores Cabudare, noviembre de 2010 Universidad Fermín Toro
Programación secuencial vs programación concurrente
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
- 1 - Sistema Embebidos: Propiedades de los Lenguajes y SDL Agustín J. González 1s06 Se ha tomado como base el material generado por Peter Marwedel de.
 Un servidor basado en un procesador Intel que ejecute Windows Server 2003 debe tener al menos 128 MB de RAM. Microsoft recomienda también que haya.
CONCEPTOS FUNDAMENTALES DEL NIVEL DEL SISTEMA OPERATIVO
Teoría de Sistemas Operativos Departamento de Electrónica 2º Semestre, 2002 Gabriel Astudillo Muñoz
- 1 - Sistema Embebidos: Propiedades de los Lenguajes y SDL Agustín J. González 1s07 Se ha tomado como base el material generado por Peter Marwedel de.
Informática III 2009 Ing. Estela D'Agostino 1 Programación secuencial vs programación concurrente Pascal, C, Fortran, Cobol Secuenciales único hilo de.
“condición que necesita el usuario para resolver un problema o conseguir un objetivo determinado”. Los requisitos de un sistema son los aspectos que el.
Estructura de los Sistemas Operativos
Teoría de Sistemas Operativos Sincronización Procesos
CORREOS ELECTRONICOS Adriana Chàvez. Principalmente se usa este nombre para denominar al sistema que provee este servicio en Internet, mediante el protocolo.
CORREO ELECTRÓNICO.
Unidad 2 – Gestión de Procesos
1 5. UNIDADES DE PROGRAMAS. 2 Uso de mecanismos de control de secuencia de: Invocaciones Retornos Entre: PPSP 1 a) I R SP 1 SP 2 b) I R Unidades subordinadas.
UNIDAD 7 “OTROS PARADIGMAS DE PROGRAMACIÓN“ LI & MSC OSCAR RAMIREZ CORTÉS Universidad de la Huasteca Veracruzana.
LIA. SUEI CHONG SOL, MCE..  1.- SOFTWARE BÁSICO O DE SISTEMA. Conjunto de programas imprescindibles para el funcionamiento del sistema.  2.- SOTWARE.
UTFSM - Sistemas Operativos
INTERRUPCIONES – ABRAZO MORTAL
¿QUE ES EL DIAGRAMA DE ESTADO ?
Objetivos del tema. Hemos visto lo que es la estructura de un programa, los datos, que esos datos en realidad se convierten en variables de distinto.
Gestión de Procesos Hilos.
Gestión de Memoria – Parte 2
Planificación de CPU Conceptos Básicos Criterios de Planificación Algoritmos de Planificación Planificación con Múltiples Procesadores Planificación Real-Time.
Desventajas Poco eficiente: lectura y escritura en disco es lenta Necesita otro mecanismo de sincronización para acceder a los datos Son los procesos.
LE, EI, Profesor Ramón Castro Liceaga UNIVERSIDAD LATINA (UNILA) IV. IMPLANTACION DE ALGORITMOS.
Transcripción de la presentación:

I.T.E.S.R.C. Romina Tamez Andrea Martínez Ma. De Lourdes Solís Equipo #3 Romina Tamez Andrea Martínez Ma. De Lourdes Solís Edwin Salvador Llamas Lic. Orlando Zamora

Paso de Mensajes

Cuando los procesos interactúan unos con otros, se deben satisfacer dos requisitos básicos: La sincronización y la comunicación. Los procesos tienen que sincronizarse para cumplir la exclusión mutua; los procesos cooperantes pueden necesitar intercambiar información. Un método posible para ofrecer ambas funciones es el paso de mensajes. El paso de mensajes tiene la ventaja adicional de que se presta a ser implementado en sistemas distribuidos, así como en sistemas multiprocesador y monoprocesador de memoria compartida.

Concurrencia: Exclusión mutua y sincronización Hay varias formas de sistemas de paso de mensajes. • sena (destino, mensaje) • receive (origen, mensaje) Este es el conjunto mínimo de operaciones necesario para que los procesos puedan dedicarse al paso de mensajes. Un proceso envía información en forma de un mensaje a otro proceso designado como destino. Un proceso recibe información ejecutando la primitiva receive, que indica el proceso emisor (origen) y el mensaje.

Sincronización La comunicación de un mensaje entre dos procesos implica cierto nivel de sincronización entre ambos. El receptor no puede recibir un mensaje hasta que sea enviado por otro proceso. Además, hace falta especificar qué le sucede a un proceso después de ejecutar una primitiva sena o receive. Cuando se ejecuta una primitiva sena en un proceso, hay dos posibilidades: O bien el proceso emisor se bloquea hasta que se recibe el mensaje o no se bloquea. Análogamente, cuando un proceso ejecuta una primitiva receive, hay dos posibilidades: 1. Si previamente se ha enviado algún mensaje, éste es recibido y continúa la ejecución. 2. Si no hay ningún mensaje esperando entonces, o bien (a) el proceso se bloquea hasta que llega un mensaje o (b) el proceso continúa ejecutando, abandonando el intento de recepción .

Tanto el emisor como el receptor pueden ser bloqueantes o no bloqueantes: • Envío bloqueante, recepción bloqueante: Tanto el emisor como el receptor se bloquean hasta que se entrega el mensaje; esta técnica se conoce como rendezvous. Esta combinación permite una fuerte sincronización entre procesos. • Envío no bloqueante, recepción bloqueante: Aunque el emisor puede continuar, el receptor se bloquea hasta que llega el mensaje solicitado. Permite que un proceso envíe uno o más mensajes a varios destinos tan rápido como sea posible. Un proceso que debe recibir un mensaje antes de poder hacer alguna función útil tiene que bloquearse hasta que llegue el mensaje. Un ejemplo es el de un proceso servidor que ofrezca un servicio o un recurso a otros procesos. • Envío no bloqueante, recepción no bloqueante: Nadie debe esperar.

Direccionamiento Evidentemente, es necesario disponer de alguna forma de especificar en la primitiva send qué proceso va a recibir el mensaje. De forma similar, la mayoría de las implementaciones permiten a los procesos receptores indicar el origen del mensaje que se va a recibir.

Concurrencia: Exclusión mutua y sincronización Los distintos esquemas para hacer referencia a los procesos en las primitivas sena y receive se encuadran dentro de dos categorías: direccionamiento directo e indirecto. Direccionamiento directo: la primitiva sena incluye una identificación específica del proceso destino. La primitiva receive se puede gestionar de dos formas: -Una posibilidad requiere que el proceso designe explícitamente un proceso emisor. - En otros casos, es imposible especificar el proceso de origen por anticipado. Direccionamiento indirecto: los mensajes no se envían directamente del emisor al receptor, sino a una estructura de datos compartida formada por colas que pueden guardar los mensajes temporalmente. Estas colas se denominan generalmente buzones (mailboxes). De este modo, para que dos procesos se comuniquen, uno envía mensajes al buzón apropiado y el otro los coge del buzón.

Formato de mensajes El formato de los mensajes depende de los objetivos del servicio de mensajería y de si el servicio ejecuta en un ordenador independiente o en un sistema distribuido. Para algunos sistemas operativos, los diseñadores han elegido mensajes cortos y de tamaño fijo para minimizar el procesamiento y el coste de almacenamiento.

Formato típico de mensaje

Monitores

Es un módulo de Software que consta de uno o mas procedimientos, secuencia y unos datos locales

Características:

1.- Las variables de datos locales están solo accesibles para los procedimientos del monitor y no para procedimientos externos. 2.- Un proceso entra en el monitor invocando a uno de sus procedimientos. 3.- Solo un proceso puede estar ejecutando en el monitor en cierto momento, cualquier otro proceso se suspende hasta que el monitor esté disponible.

semáforos

Un semáforo es una estructura diseñada para sincronizar dos o más procesos, de modo que su ejecución se realice de forma ordenada y sin conflictos entre ellos.

Los semáforos se emplean para permitir el acceso a diferentes partes de programas (llamados secciones críticas) donde se manipulan variables o recursos que deben ser accedidos de forma especial. Según el valor con que son inicializados se permiten a más o menos procesos utilizar el recurso de forma simultánea.

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. Cuando el recurso está disponible, un proceso accede y decrementa el valor del semáforo con la operación P. El valor queda entonces en 0, lo que hace que si otro proceso intenta decrementarlo tenga que esperar. Cuando el proceso que decrementó el semáforo realiza una operación V, algún proceso que estaba esperando puede despertar y seguir ejecutando

Tiene dos operaciones básicas que son: Wait.- Pregunta a los procesos si su contador es > ó = que cero, en caso de no ser así, los decrementa. El proceso que cambia en este caso a negativo (−1) desde la cola de procesos Listos a ser ejecutados es el que automáticamente toma el control del procesador. Signal.- A partir de un tiempo t definido por el despachador se ejecuta, y pregunta a los procesos si su contador es < que cero en caso de que sea afirmativa la respuesta, saca a este proceso de su ejecución y depende de su estado

Para hacer que dos procesos se ejecuten en una secuencia predeterminada puede usarse un semáforo inicializado en 0. El proceso que debe ejecutar primero en la secuencia realiza la operación V sobre el semáforo antes del código que debe ser ejecutado después del otro proceso. Éste ejecuta la operación P. Si el segundo proceso en la secuencia es programado para ejecutar antes que el otro, al hacer P dormirá hasta que el primer proceso de la secuencia pase por su operación V. Este modo de uso se denomina señalación (signaling), y se usa para que un proceso o hilo de ejecución le haga saber a otro que algo ha sucedido.