martes, 21 de junio de 2016

 Planificacion existentes en multiprocesadores

SO en la planificacion en tiempo real
  • Metodos con tablas estaticas
  • Metodos apropiados con preoridades estaticas
  • Metodos dinamicos de planificacion
  • Metodos dinamicos de p'lanificacion

Planificacion con tablas estaticas
Planificacion apropiada con preoridades
Planificacion dinamica
Planificacion dinamica del mejor resultado
Planificacion por plazos
  • Instante en que esta cada lista
  • Plazo de comienzo
  • Plazo de finalizacion
  • Tiempo de proceso
  • Exigencias de recursos
  • Prioridad
  • Estructura de sobtareas 
  • Planificacion monotona en frecuencia

Planificacion del multiprocesador
cuando un NT ejecuta en un unico procesador, el hilo de mayor prioridad simpre esta activo, a menos que se encuentre esperando u suceso. Si hay ma sde u  hilo con mmaxima prioridad, el procesador esta compartido, por turno rotatorio , entre los hilos de ese nivel de prioridad.
MVS,estan formados por las siguientes entidades
  • Bloque de peticion de servicio global(SRB global)
  • Bloque de control del espacio de3 direcciones(ASCB)
  • Bloque de peticion de servicio(SRB)
  • Bloque de control de tarea(TCB)
Espacio de direcciones que es asignado a una banda permanece en esa banda, los primeros 6 niveles son especificados individualmente como prioridades fijas, mientras que los 10 niveles inferiores forman un grupo de tiempo medio de espera(MTTW. mean-time-to-wait)
En resumen un multiprocesador fuertemente acoplado, tiene acceso a la misma memoria principal. Un proceso o tarea de tiempo real es aquel que se ejecuta en conexion con algun proceso, funcion o conjunto de sucesos externos al sistema informaticoy que debe cumplir uno o mas plazos para interactuar de forma correcta y eficiente con el entorno exterior.


PLANIFICACIÓN DE MULTIPROCESADORES
Cuando un sistema informático tiene más de un único procesador, aparecen varios elementos nuevos en el diseño de la tarea de planificación. Se va a comenzar con una breve introducción a los multiprocesadores y, después, se discutirá sobre lo que hay que tener en cuenta para llevar a cabo la  planificación al nivel de los procesos o al nivel de los hilos.
 Los sistemas multiprocesador pueden clasificarse de la siguiente manera:

  1.  Multiprocesador débilmente acoplado
  2. Procesadores especializados
  3. Multiprocesador fuertemente acoplado


Evolución de los multiprocesadores fuertemente acoplados
La arquitectura de los multiprocesadores ha estado al acecho durante muchos años. El primer sistema comercial fue el Burroughs D825, disponible en 1960, que incluía hasta cuatro procesadores. 
El objetivo principal de los procesadores múltiples es ofrecer un rendimiento mejorado y fiabilidad en la multiprogramación

  •  Rendimiento:Un único multiprocesador ejecutando en un sistema operativo multiprogramado ofrecerá mejor rendimiento que un sistema monoprocesador equivalente y puede ser más efectivo que varios sistemas monoprocesador.
  •  Seguridad:En un sistema fuertemente acoplado, si los procesadores funcionan por parejas, el fallo de un procesador sólo produce una degeneración del rendimiento en vez de la pérdida completa de servicio

En la planificación de un multiprocesador se deben considerar tres puntos interrelacionados:

 • La asignación de procesos a los procesadores
 • El uso de multiprogramación en los procesadores individuales
 • La expedición real de los procesos 
Considerando estos tres puntos, es importante tener en cuenta que el método a emplear dependerá, en general, del grado de granularidad de la aplicación y del número de procesadores disponibles.
 

Planificacion en tiempo real



 Planificacion de multiprocesadores 
y en tiempo real

  
En los últimos años, el procesamiento en tiempo real ha pasado a ser una disciplina emergente en informática e ingeniería. El sistema operativo y, en particular, el planificador, es quizá el componente más importante de un sistema de tiempo real. Los ejemplos de aplicaciones de tiempo real actuales incluyen control de experimentos de laboratorio, plantas de control de procesos, robótica, control del tráfico aéreo, telecomunicaciones y sistemas de control y mando militar. 
Los sistemas de la próxima generación serán los vehículos autónomos todo terreno, controladores de robots articulados, sistemas de fabricación inteligente, estaciones espaciales y exploraciones submarinas. 
El procesamiento en tiempo real puede definirse como un tipo de procesamiento en el que la exactitud del sistema no depende sólo del resultado lógico de un cálculo sino también del instante en que se  produzca el resultado.
  
Un sistema de tiempo real se puede definir indicando lo que significa proceso de tiempo real o tarea.
Los sistemas multiprocesadores pueden clasificarse de la siguiente manera:
  1. Multiprocesador debilmente acoplado. 
  2. Procesadores especialisados.

En general, en un sistema de tiempo real, algunas de las tareas son tareas de tiempo real y, por ello, poseen cierto grado de urgencia. Dichas tareas intentan controlar o reaccionar ante sucesos que tienen lugar en el mundo exterior. Puesto que estos sucesos se producen en "tiempo real", una tarea de tiempo real debe poder ir al paso de los sucesos de los que se ocupa. Así pues, normalmente es  posible asociar un plazo a una tarea en particular, donde el plazo especifica el instante de comienzo o el de finalización. 
Dichas tareas pueden clasificarse en rígidas o flexibles.
Una tarea rígida de tiempo realdebe cumplir el plazo; en otro caso producirá daños no deseados o un error fatal en el sistema.
 Una tarea flexible de tiempo real tiene un plazo asociado, que es conveniente, pero no obligatorio; aunque haya vencido el plazo, aún tiene sentido planificar y completar la tarea. Otra característica de las tareas de tiempo real es la posibilidad de ser periódicas o aperiódicas.
Una tarea aperiódicadebe comenzar o terminar en un plazo o bien puede tener una restricción tanto para el comienzo como para la finalización. En el caso de una
 tarea periódica,el requisito se puede enunciar como "una vez por cada periodo T" o "exactamente cada unidades



Uso de la multiprogramación en procesadores individuales

Cuando cada proceso se asigna estáticamente a un procesador durante todo su tiempo de vida, surge una nueva cuestión: ¿Puede estar multiprogramado dicho procesador? La primera reacción puede ser  preguntarse por qué hace falta responder a la cuestión; puede parecer demasiado dispendioso vincular a un procesador con un único proceso cuando dicho proceso puede bloquearse frecuentemente esperando una E/S o por motivos de concurrencia o sincronización. En los multiprocesadores tradicionales, con sincronización de grano grueso o independiente, está claro que cada procesador individual podría alternar entre varios procesos para conseguir una alta utilización y, por tanto, un mejor rendimiento. Sin embargo, cuando se trabaja con aplicaciones de grano medio ejecutándose en muchos procesadores, la situación es menos clara. Cuando hay varios  procesadores disponibles, no resulta tan importante que cada procesador esté ocupado al máximo.

Planificación de multiprocesadores y en tiempo real no son apropiativas, si se interrumpe una tarea, esta controlada por el control tarea para los espacios de direcciones.
 Un espacio de direcciones en ungrupo de rendimiento se considera que pasa por una serie de periodos de rendimiento.
 Los periodos de rendimiento permiten a una transacción o a cualquier trabajo, gestionarse de forma.