You are on page 1of 7

-1- Sistemas Operativos

COORDINACIÓN DE PROCESOS

Los sistemas multiprocesamiento (en paralelo) tienen dos o más


procesadores que operan de manera simultanea y deben estar sincronizados
por el administrador de procesos. El administrador de procesos tiene que
coordinar la actividad de cada proceso así como sincronizar la interacción entre
el procesador y los procesos.

La sincronización, la comunicación y la cooperación es la clave para


que el sistema trabaje bien.

Las ventajas que ofrece el multiprocesamiento son:

 Mejora la producción

 Mejor confiabilidad

 Procesamiento rápido

CONFIGURACIONES TÍPICAS DE MULTIPROCESAMIENTO

Mucho depende de cómo se configuren los procesadores múltiples en el


sistema y las configuraciones típica son:

1) Configuración Maestro / Esclavo. Es una configuración asimétrica.


Es un sistema de un procesador con procesadores esclavos,
adicionales, cada uno de los cuales esta administrado por el procesador
maestro. El procesador maestro administra todos los archivos,
dispositivos, memoria y procesadores.

Esclavo

Memoria Procesador Dispositivos


Principal maestro de E / S

Esclavo

CONFIGURACIÓN MAESTRO / ESCLAVO


-1-
-2- Sistemas Operativos

VENTAJAS DESVENTAJAS
1. Su simplicidad 1. No es confiable ya que si el
procesador mastro falla, tambien el
sistema.
2. Puede llevar un mal uso de los
recursos. Ya que si un procesador
esclavo queda liberado mientras que el
procesador maestro esta ocupado,
debe esperar hasta quel el maestro se
liber y le asigne otro trabajo.
3. Incrementa el número de
interrupciones. Los procesadores
esclavos deben interrumpir al maestro
cunado necesitan algun recurso.

2) Configuración Débilmente acoplada. Tiene varios sistemas de


cómputo completos, cada uno con memoria propia, dispositivos de
entrada / salida, CPU y sistema operativo.

Se conoce como débilmente acoplada, porque cada procesador controla


sus propios recursos – sus archivos y dispositivos de entrada/salida.
Para mantener el sistema equilibrado y asegurar el mejor uso de los
recursos, la planificación de los trabajos se basa en varias políticas. Por
ejemplo los nuevos trabajos se asignan al procesador con carga mas
ligera.

Dispositivos de
Memoria Principal Procesador 1 E/S

Dispositivos de
Memoria Principal Procesador 2 E/S

Dispositivos de
Memoria Principal Procesador 3 E/S

CONFIGURACIÓN DÉBILMENTE ACOPLADA

VENTAJA DESVENTAJA
1. si falla un procesador los de más 1. Pude resultar difícil detectar
pueden continuar el trabajo de cuándo ha fallado un procesador
manera independiente

-2-
-3- Sistemas Operativos

3) Configuración Simétrica. Tiene cuatro ventajas sobre la débilmente


acoplada:
|
 Es más confiable
 Se utilizan los recursos con efectividad
 Puede equilibrar las cargas
 No falla todo el sistema

En una configuración simétrica, la programación del procesador esta


descentralizada. Una solo copia del sistema operativo y un tabla global que
lista cada proceso y su estado están almacenadas en un área común de la
memoria, por lo que los procesadores tienen acceso a la misma, los
procesadores utilizan el mismo algoritmo de planificación para la selección de
los procesos a ejecutar y tienen acceso a todos los dispositivos.

Procesador 1

Memoria Dispositivos
Principal Procesador 2 de E / S

Procesador 3

CONFIGURACIÓN SIMÉTRICA

VENTAJA DESVENTAJA
1. Si se interrumpe un proceso, los 1. Se presentan conflictos por la
procesadores actualizan la entrada y demanda de recursos.
pueden ejecutar otro proceso

-3-
-4- Sistemas Operativos

SOFTWARE DE SINCRONIZACIÓN DE PROCESOS

El éxito de la sincronización de los procesos se basa en la capacidad que tiene


el sistema de poner un recurso fuera del alcance de otros procesos mientras se
este usando. En resumen el recurso queda bloqueado para todos los procesos
hasta que sea liberado. Un error que puede ocurrir es dejar esperando
indefinidamente a un trabajo, si esto sucede se conoce como el cliente en
espera indefinida. Los sitios en donde puede ocurrir este problema es en
memoria y tablas de asignación, además de cualquier recurso compartido.

El elemento común de todos los esquemas se sincronización de procesos


es permitir que un proceso termine su trabajo en una región o sección crítica,
antes que otros procesos tengan acceso a la misma.

La sincronización a veces se implementa como un arreglo:


 Llave
 Cerradura

Antes de que un proceso entre en una región crítica es necesario obtener la


llave. Una vez que la obtenemos, ningún otro proceso puede tener acceso a
esa región hasta que termine. Cuando termina el proceso da la llave a otro
proceso.

Están disponibles varios mecanismos de sincronización para obtener


cooperación y comunicación entre procesos algunos de estos son:

1) Probar, establecer (TS)


2) Walt, signal
3) Semáforos

1) Probar y establecer

También se conoce como ( Test and Set ). Revisa si la llave esta


disponible o no. La llave es un bit en una localidad de almacenamiento
que puede contener 0 si esta libre y 1 si esta ocupado. Se puede
considerar a TS como un subprograma que tiene un parámetro
(localidad de almacenamiento) y que devuelve un valor (el código de
estado: ocupado / libre) .

VENTAJAS DESVENTAJAS
1. Fácil de implementar 1.Podría ocurrir la carencia de
recursos, si muchos procesos
esperan entrar en la región critica
2. Funciona bien con numero 2. Ocurre LA ESPERA ACTIVA. Es
pequeño de procesos. cuando los procesos que están en
espera de entrar en una región
critica consumen recursos.

-4-
-5- Sistemas Operativos

 Wait-Signal

Es una modificación de TS y elimina la espera activa.


- Wait: Se activa cuando el proceso encuentra el código de
condición ocupado y establece en el BCP el estado de
bloqueado y pasa a la cola de procesos en esperan la entrada a
la región critica.
- Signal: Queda activado cuando el proceso sale de la región
crítica y el código de condición se establece en libre. Comprueba
la cola de procesos que esperen entrar en la región crítica,
selecciona uno y lo coloca en el estado de listo.

BLOQUEO MUTUO

Una carencia de sincronización de los procesos da como resultado dos


condiciones extremas:

- Bloqueo mutuo
- Inanición

El bloqueo mutuo también es conocido como abrazo mortal, ocurre cuando


los recursos que requieren varios trabajos para terminar su ejecución están en
manos de otros trabajos mismos, que a su vez esperan que otros recursos
queden disponibles.

Los bloqueos mutuos se vuelven más frecuentes con el uso creciente de los
sistemas interactivos.

Casos en donde se da el bloqueo mutuo:

1) Bloqueo mutuo en solicitudes de archivo:

A1
Solicita Asigna

P1 P2

A2
Asigna Solicita

2) Bloqueo mutuo en base de datos


El bloqueo es una técnica para garantizar la integridad de los datos. El
bloqueo puede clasificarse en tres niveles:

3) Bloqueo mutuo en la asignación de dispositivos dedicados

4) Bloqueo mutuo en asignación de dispositivos múltiples


-5-
-6- Sistemas Operativos

P1
Asigna Solicita

Disco Impresora

P3 P2

Gratificador

5) Bloqueo mutuo al compartir discos

6) Bloqueo en red

CONDICIONES PARA EL BLOQUEO

 Exclusión mutua: Permitir que solo un proceso tenga acceso a un


dispositivo dedicado

 Retención de recursos: Cuando se esta esperando a que se libere el


recurso

 Espera circular: Un proceso en espera para concluir su trabajo necesita


la liberación de un recurso

 No apropiatividad: Carencia de resignación temporal de recurso.

ESTRATEGIAS PARA EL MANEJO DE BLOQUEOS


Existen varios algoritmos de recuperación pero todos requieren una victima.

1) El más drástico es terminar los trabajos activos en el sistema y volver a


arrancarlos desde el principio.

2) Terminar solo trabajos incluidos en el bloqueo mutuo y solicitar a sus


usuarios que lo vuelvan a enviar.
-6-
-7- Sistemas Operativos

3) Identificar que trabajos intervienen en el bloqueo mutuo y terminarlos 1 x


1 y comprobar la desaparición del bloqueo después de cada eliminación
hasta resolverlo. Una vez liberado el sistema se deja que todos los
trabajos restantes terminen su procesamiento.

4) Solo si el trabajo mantiene un registro de su progreso de manera que se


pueda interrumpir y después continuar sin reiniciar desde el principio.

5) Selecciona un trabajo no bloqueado, retira los recursos que contiene y


se los asigna a procesos bloqueados, de manera que pueda reanudarse
la ejecución.

6) Detiene los trabajos nuevos e impide que entren al sistema lo que


permite que los que están bloqueados terminen su trabajo.

Deben considerarse varios factores en la elección de la víctima para


que tengan los efectos negativos mínimos:

1) La prioridad del trabajo

2) EL tiempo de CPU utilizado por el trabajo a punto de terminar

3) La cantidad de tareas en que repercutirá la elección de la víctima.

Inanición: Donde la tarea no puede ejecutarse y permanece en espera de


recursos que no están disponibles.

Actividades
1. Investigar que es un semáforo, su funcionamiento y aplicación.

2. Investigar en qué consisten los algoritmos de los productores y


consumidores, lectores y escritores y el de los filósofos.

3. Realizar un mapa conceptual del tema coordinación de procesos.


Se evaluará: conectores, conceptos, coherencia.

-7-

You might also like