Coplanificacion

39
3.5 COPLANIFICACIÓN

Transcript of Coplanificacion

Page 1: Coplanificacion

3.5 COPLANIFICACIÓN

Page 2: Coplanificacion

PLANIFICACIÓN DE PROCESOS

•LA PLANIFICACIÓN DE PROCESOS ES LA ETAPA MÁS IMPORTANTE DEL ADMINISTRADOR DE PROCESOS YA QUE SE ENCARGA DE ADMINISTRAR LA DISPONIBILIDAD DEL USO DE CPU.

Page 3: Coplanificacion

PLANIFICACIÓN DE PROCESOS

•LOS PLANIFICADORES NO IMPORTANDO SU COMPLEJIDAD DEBEN RESPETAR LOS SIGUIENTES ELEMENTOS: EQUITATIVIDAD, EFICIENCIA, TIEMPO DE RESPUESTA, RETORNO, VOLUMEN DE PRODUCCIÓN.

Page 4: Coplanificacion

COPLANIFICACIÓN• CONCEPTO DE COPLANIFICACIÓN:

Ø  TOMA EN CUENTA LOS PATRONES DE COMUNICACIÓN ENTRE LOS PROCESOS DURANTE LA PLANIFICACIÓNØ  DEBE GARANTIZAR QUE TODOS LOS MIEMBROS DEL GRUPO SE EJECUTEN AL MISMO TIEMPO.Ø  CADA PROCESADOR DEBE UTILIZAR UN ALGORITMO DE PLANIFICACIÓN ROUND ROBIN.

Page 5: Coplanificacion

COPLANIFICACIÓN

• DESPUÉS DE TENER UN MODELO DE PROCESAMIENTO Y DE UN ALGORITMO DE ASIGNACIÓN DE PROCESADORES, EL SIGUIENTE GRAN RETO ES LA ADMINISTRACIÓN CONJUNTA DE LOS TIEMPOS DE USO DE CPU DE LOS PROCESOS DE FORMA GLOBAL.

Page 6: Coplanificacion

COPLANIFICACIÓN

• PARA PODER REALIZAR ESTO, SE NECESITA DE ALGORITMOS DE PLANIFICACIÓN Y MÉTODOS DE COMUNICACIÓN MÁS EFICIENTE. A CONTINUACIÓN SE DESCRIBEN ALGUNOS ALGORITMOS DE COPLANIFICACIÓN.

Page 7: Coplanificacion

COPLANIFICACIÓN

• OUSTERHOUT (1982) PROPUSO VARIOS ALGORITMOS CON BASE EN UN ALGORITMO LLAMADO COPLANIFICACION, EL CUAL TOMA EN CUENTA LOS PATRONES DE COMUNICACIÓN ENTRE LOS PROCESOS DURANTE LA PLANIFICACIÓN PARA GARANTIZAR QUE TODOS LOS MIEMBROS DE UN GRUPO SE EJECUTEN AL MISMO TIEMPO.

Page 8: Coplanificacion

COPLANIFICACIÓN

• EL PRIMER ALGORITMO UTILIZA UNA MATRIZ CONCEPTUAL EN LA QUE CADA COLUMNA ES

LA TABLA DE PROCESOS DE UN PROCESADOR.

Page 9: Coplanificacion

COPLANIFICACIÓN

SE EMPLEA UNA MATRIZ CONCEPTUAL DONDE:LAS FILAS SON ESPACIOS DE TIEMPO.LAS COLUMNAS SON LAS TABLAS DE PROCESOS DE LOS PROCESADORES.

Page 10: Coplanificacion

COPLANIFICACIÓN

Page 11: Coplanificacion

COPLANIFICACIÓN

• LA ESENCIA DE ESTA IDEA ES CADA PROCESADOR UTILICE UN ALGORITMO DE PLANIFICACIÓN ROUND ROBIN, DONDE TODOS LOS PROCESADORES EJECUTEN EL PROCESO EN EL ESPACIO 0 DURANTE UN CIERTO PERIODO FIJO, PARA QUE DESPUÉS TODOS LOS PROCESADORES EJECUTEN EL PROCESO DEL ESPACIO 1 DURANTE UN CIERTO PERIODO FIJO.

Page 12: Coplanificacion

COPLANIFICACIÓN

• SE PUEDE UTILIZAR UN MENSAJE PARA INDICARLE A CADA PROCESADOR EL MOMENTO EN QUE DEBE HACER UN INTERCAMBIO DE PROCESOS, PARA MANTENER SINCRONIZADOS LOS INTERVALOS DE TIEMPO.

Page 13: Coplanificacion

COPLANIFICACIÓN

• SI TODOS LOS MIEMBROS DE UN GRUPO SE COLOCAN EN EL MISMO NÚMERO DE ESPACIO, PERO EN PROCESADORES DISTINTOS, SE TIENE LA VENTAJA DEL PARALELISMO DE NIVEL N, CON LA GARANTÍA DE QUE TODOS LOS PROCESOS SE EJECUTARAN AL MISMO TIEMPO, LO CUAL MAXIMIZA EL DESEMPEÑO DE LA COMUNICACIÓN.

Page 14: Coplanificacion

PLANIFICACIÓN DE TIEMPO REAL

• PROCESOS DE TIEMPO REAL (EN ESTE CONTEXTO ES MÁS HABITUAL EL TÉRMINO TAREAS DE TIEMPO REAL) SON AQUELLOS CUYA CORRECCIÓN NO SÓLO DEPENDE DEL RESULTADO, SINO TAMBIÉN DE SI LO PRODUCEN ANTES DE UN PLAZO DETERMINADO DE TIEMPO.

Page 15: Coplanificacion

•EJEMPLOS DE TAREAS DE TIEMPO REAL ABUNDAN EN LOS SISTEMAS DE DISPONEN DE UN LÍMITE MÁXIMO DE TIEMPO PARA EVALUAR UNA ENTRADA Y PRODUCIR LA RESPUESTA ADECUADA .

Page 16: Coplanificacion

• EN UN SISTEMA DE PROPÓSITO GENERAL LOS PROCESOS DE TIEMPO REAL CONVIVEN CON PROCESOS DE TIEMPO COMPARTIDO O PROCESOS DEL PROPIO SISTEMA, POR LO QUE ES MUY DIFÍCIL GARANTIZAR SIEMPRE EL CUMPLIMIENTO DE LOS PLAZOS.

Page 17: Coplanificacion

• ALGUNAS APLICACIONES DE TIEMPO REAL EXIGEN QUE EL PLAZO DE TIEMPO SE CUMPLA SIEMPRE, POR LAS GRAVES CONSECUENCIAS QUE SU INCUMPLIMIENTO PUDIERA TENER.

SISTEMAS DE TIEMPO REAL CRÍTICOS (HARD REAL TIME).

Page 18: Coplanificacion

EN OTRAS APLICACIONES PUEDEN PERMITIRSE INCUMPLIMIENTOS ESPORÁDICOS DE LOS PLAZOS.

SISTEMAS DE TIEMPO REAL ACRÍTICOS (SOFT REAL TIME)

Page 19: Coplanificacion

• EN CUANTO AL CUMPLIMIENTO DE LOS PLAZOS, EN ALGUNOS SISTEMAS LA EJECUCIÓN DE LAS TAREAS TIENE UN PLAZO FIRME, EN EL SENTIDO DE QUE SI SE REBASA EL PLAZO, AÚN MÍNIMAMENTE, LA RESPUESTA ES INÚTIL O INCLUSO CONTRAPRODUCENTE.

Page 20: Coplanificacion

EN CAMBIO, LOS SISTEMAS DE PLAZO FLEXIBLE ADMITEN ALGÚN RETRASO EN EL INCUMPLIMIENTO DEL PLAZO.

Page 21: Coplanificacion

CRITERIOS PARA LA PLANIFICACIÓN DE TIEMPO REAL

• EL CRITERIO FUNDAMENTAL DE UN ALGORITMO DE PLANIFICACIÓN DE TIEMPO REAL PARA UN CONJUNTO DE TAREAS DE TIEMPO REAL ES PROPORCIONAR PLANIFICACIÓN VIABLE, ES DECIR, DEBE SER POSIBLE PLANIFICAR LA EJECUCIÓN DE LAS TAREAS DE FORMA QUE SE CUMPLAN LOS PLAZOS DE TODAS ELLAS.

Page 22: Coplanificacion

• CON TAREAS PERIÓDICAS ES POSIBLE UN ANÁLISIS DE

VIABILIDAD ESTÁTICO (A PRIORI)

Page 23: Coplanificacion

•EL CRITERIO DE PLANIFICACIÓN VIABLE ES ABSOLUTO PARA LOS

SISTEMAS DE TIEMPO REAL CRÍTICO.

Page 24: Coplanificacion

• EN SISTEMAS ACRÍTICOS, SI LOS PLAZOS NO SE PUEDEN CUMPLIR,

LOS CRITERIOS A APLICAR DEPENDEN DEL TIPO DE SISTEMA.

Page 25: Coplanificacion

EN SISTEMAS DE PLAZO FIRME, EL CRITERIO ES

MINIMIZAR EL NÚMERO DE RETRASOS; POR EL

CONTRARIO, EN SISTEMAS DE PLAZO FLEXIBLE, EL

CRITERIO ES MINIMIZAR LA MAGNITUD DE LOS

RETRASOS.

Page 26: Coplanificacion

POLÍTICAS DE PLANIFICACIÓN DE TIEMPO REAL

SE DIVIDEN EN DOS GRUPOS, CONSIDERANDO SI ADMITEN UN PLAN DE EJECUCIÓN ESTÁTICO, LO QUE IMPLICA QUE LAS TAREAS DEBEN SER PERIÓDICAS, O

SI LA EJECUCIÓN DEBE PLANIFICARSE DINÁMICAMENTE. ESTAS ÚLTIMAS NO SIRVEN PARA

SISTEMAS CRÍTICOS.

Page 27: Coplanificacion

PLANIFICACIÓN ESTÁTICA

•CUANDO SE CONOCEN LOS PERIODOS Y LOS TIEMPOS DE EJECUCIÓN ES POSIBLE ESTABLECER A PRIORI UN PLAN DE EJECUCIÓN. EN EL CASO MÁS SENCILLO, SE ESTABLECE UN EJECUTIVO CÍCLICO, ASOCIANDO A INSTANTES PERIÓDICOS DE TIEMPO LA LIBERACIÓN DE LAS TAREAS.

Page 28: Coplanificacion

•OTROS MÉTODOS MÁS GENERALES SIGUEN CRITERIOS BASADOS EN PRIORIDADES:

FRECUENCIA MONÓTONA (RATE MONOTONIC, RM) ES UNA POLÍTICA EXPULSORA DONDE LA MÁS PRIORITARIA ES LA TAREA DE MENOR PERIODO.

Page 29: Coplanificacion

•PLANIFICACIÓN DE PLAZO MÁS CERCANO (EARLIER DEADLINE FIRST, EDF)

ES UNA POLÍTICA EXPULSORA QUE PLANIFICA LA TAREA CUYO PLAZO ESTÁ MÁS PRÓXIMO A EXPIRAR.

ESTA POLÍTICA ES ÓPTIMA CON RESPECTO AL CRITERIO DE PLANIFICACIÓN VIABLE (ES DECIR, LA CONDICIÓN NECESARIA PARA LA VIABILIDAD ES TAMBIÉN SUFICIENTE, LO QUE NO OCURRE CON RM).

Page 30: Coplanificacion

PLANIFICACIÓN DINÁMICA

• CON TAREAS APERIÓDICAS NO ES POSIBLE ESTABLECER UN PLAN DE EJECUCIÓN A PRIORI.

• ESTE ÚLTIMO TIPO DE PLANIFICACIÓN, HABITUAL EN SISTEMAS DE PROPÓSITO GENERAL, SE DENOMINA PLANIFICACIÓN DINÁMICA DEL MEJOR RESULTADO (BEST-EFFORT).

Page 31: Coplanificacion

SISTEMAS DISTRIBUIDOS EN TIEMPO REAL

LOS SISTEMAS DE TIEMPO REAL SON AQUELLOS QUE INTERACTÚAN CON EL MUNDO EXTERIOR DONDE EL TIEMPO ES UN FACTOR IMPORTANTE.

Page 32: Coplanificacion

SISTEMAS DISTRIBUIDOS EN TIEMPO REAL

• LOS SISTEMAS DE TIEMPO REAL SE CONSIDERAN ESTIMULOS, MIENTRAS SU RESPUESTA SEA ANTES DEL MOMENTO LIMITE SE CONSIDERA CORRECTO UN ESTIMULO, Y SI LA RESPUESTA ES DESPUÉS DEL MOMENTO LIMITE SE CONSIDERA FALLIDO.

Page 33: Coplanificacion

SISTEMAS DISTRIBUIDOS EN TIEMPO REAL

TIPOS DE SISTEMAS EN TIEMPO REAL• SUAVES

NO TIENEN PROBLEMAS SI SE REBAZA CON EL TIEMPO LIMITE• DUROS

NO TIENEN LIMITE CUMPLIDO Y ES INACEPTABLE

Page 34: Coplanificacion

SISTEMAS DISTRIBUIDOS EN TIEMPO REAL

• PREDICTIBILIDADSE DICE QUE EL SISTEMA DEBE SER CLARO, EN EL MOMENTO EN QUE

ESTE CUMPLA CON TODOS SUS TIEMPOS LIMITE, INCLUSO CON UNA CARGA PICO.

LOS ANÁLISIS ESTADÍSTICOS DEL COMPORTAMIENTO, CON FRECUENCIA ERRORES, PUEDEN EXISTIR CORRELACIONES INESPERADAS ENTRE LOS EVENTOS CON ALARMAS DE TIEMPO, PRESIÓN O RADIOACTIVIDAD.

Page 35: Coplanificacion

SISTEMAS DISTRIBUIDOS EN TIEMPO REAL

• SE CONOCE COMO COMPOSICIÓN DE LOS PROCESOS, QUE CIERTO ELEMENTO NECESITA 50MLS, OTRO CIERTO PROCESO NECESITA 60 MLS Y EL INICIO DEL PROCESO TARDARÍA UNOS 5MLS, ESTO GARANTIZA DE ENTRADA QUE SE PUEDE MANEJAR TAL EVENTO.

Page 36: Coplanificacion

SISTEMAS DISTRIBUIDOS EN TIEMPO REAL

CARACTERÍSTICAS:

-SE ACTIVAN POR EVENTO O POR TIEMPO-SU COMPORTAMIENTO DEBE SER PREDECIBLE-DEBEN SER TOLERANTES A FALLAS-LA COMUNICACIÓN EN LOS SISTEMAS DISTRIBUIDOS DE TIEMPO REAL DEBE SER DE ALTO DESEMPEÑO

Page 37: Coplanificacion

SISTEMAS DISTRIBUIDOS TIEMPO REAL

LA CAPACIDAD DE PROCESAMIENTO ESTÁ DISTRIBUIDA ENTRE VARIOS COMPUTADORES INTERCONECTADOS. LAS ACTIVIDADES DEL SISTEMA TIENEN REQUISITOS DE TIEMPO.

Page 38: Coplanificacion

SISTEMAS DISTRIBUIDOS EN TIEMPO REAL

NECESIDAD DE SISTEMAS DISTRIBUIDOS:·         Requisitos de procesamiento.·         Distribución física del sistema.·         Fiabilidad: Tolerancia a fallos. · Los sistemas distribuidos de tiempo real (SDTR) son complicados de realizar.·         Se consideran sistemas débilmente acoplados.·         Comunicación mediante mensajes·         El tiempo de comunicación es significativo.

Page 39: Coplanificacion