Loading presentation...

Present Remotely

Send the link below via email or IM

Copy

Present to your audience

Start remote presentation

  • Invited audience members will follow you as you navigate and present
  • People invited to a presentation do not need a Prezi account
  • This link expires 10 minutes after you close the presentation
  • A maximum of 30 users can follow your presentation
  • Learn more about this feature in our knowledge base article

Do you really want to delete this prezi?

Neither you, nor the coeditors you shared it with will be able to recover it again.

DeleteCancel

Make your likes visible on Facebook?

Connect your Facebook account to Prezi and let your likes appear on your timeline.
You can change this under Settings & Account at any time.

No, thanks

DISEÑO DE SOFTWARE DE ARQUITECTURA DE TIEMPO REAL

No description
by

Fernando Jayme Pulido

on 15 June 2015

Comments (0)

Please log in to add your comment.

Report abuse

Transcript of DISEÑO DE SOFTWARE DE ARQUITECTURA DE TIEMPO REAL

Una forma de ver un sistema en tiempo real es como un sistema de estimo/respuesta. Dado un estimulo de entrada, el sistema debe producir la correspondiente salida. Se puede, por lo tanto, definir el comportamiento de un sistema de tiempo real haciendo una lista de estímulos recibidos por el sistema, las respuestas asociadas y el tiempo real en que dicha respuestas deben producirse.
Los estímulos pueden pertenecer a dos clases:
Los estímulos periódicos en un sistema de tiempo real son generados normalmente por sensores asociados al sistema. Estos proporcionan información sobre el estado del entorno del sistema las respuestas son dirigidas a un conjunto de actuadores que controlan a un equipo como una bomba que influye el entorno del sistema los estimulo aperiódicos pueden generarse por actuadores o sensores.
Por consiguiente los sistemas de tiempo real se diseñan como un conjunto de procesos concurrentes que cooperan entre si con el objeto de soportar la gestión de estos procesos, la plataforma de ejecución para la mayoría de los sistemas de tiempo real incluye un sistema operativo en tiempo real las facilidades que proporcionan este sistema operativo son accedidas a través del sistema de soporte de tiempo de ejecución (run-time sistema) para el lenguaje de programación de tiempo real utilizado.
11 de Junio de 2015
Definición
DISEÑO DE SOFTWARE DE ARQUITECTURA DE TIEMPO REAL
Planificación de sistemas de tiempo real
Un sistema de tiempo real es un software cuyo correcto funcionamiento depende de los resultados producidos por el mismo y del instante de tiempo en el que se producen estos resultados. Un sistema de tiempo real blando (soft) es un sistema cuyo funcionamiento degrada si los resultados no se producen correctamente de acuerdo con los requerimientos temporales especificados. Un sistema de tiempo real duro (hard) es un sistema cuyo funcionamiento es incorrecto si los resultados no se producen de acuerdo a la especificación temporal.
Dada la importancia que en los STR tiene la gestión del tiempo y la predictibilidad del comportamiento del sistema, es fundamental hacer una buena planificación para aprovechar al máximo los recursos disponibles (fundamentalmente el procesador) sin llegar a sobrecargarlos, evitando así que los trabajos se completen fuera del plazo previsto. Así pues, debe haber un elemento denominado planificador que se encargue de asignar los recursos apropiados a los trabajos pendientes para que se realicen de manera eficiente.
DISEÑO DE SOFTWARE DE ARQUITECTURA DE TIEMPO REAL
1. Estímulos periódicos. Ocurren a intervalos de tiempos predicibles .por ejemplo, el sistema debe de tener un sensor cada 50 mili segundos y realizar una acción respuesta) dependiendo del valor de ese sensor (estimulo).
2. Estímulos aperiódicos. Ocurren de forma irregular. Normalmente son provocados utilizando el mecanismo de interrupciones de la computadora. Un ejemplo de dicho estimo podría ser una interrupción para indicar que una trasferencia de E/S sea completado y que los datos están disponibles en un buffer.
Lenguajes de programación
Un lenguaje de programación de sistemas de tiempo real
Debe facilitar la realización de sistemas
– concurrentes
– fiables
– con un comportamiento temporal analizable

Hay varias clases de lenguajes de interés para STR:
– Lenguajes ensambladores
» Flexibles y eficientes, pero costosos y poco fiables
– Lenguajes secuenciales (Fortran, Pascal, C, C++)
» Necesitan un SO para concurrencia y tiempo real
– Lenguajes concurrentes (Modula, Ada, Java, ...)
» Concurrencia y tiempo real incluidos en el lenguaje.
* Todavía no hay compiladores ni máquinas virtuales para
Java de tiempo real
Sistemas operativos de tiempo real
Los sistemas operativos convencionales no son adecuados
Para realizar sistemas de tiempo real
– No tienen un comportamiento determinista
– No permiten garantizar los tiempos de respuesta
– algunos de ellos son poco fiables
_ Un sistema operativo de tiempo real (SOTR) debe soportar
– concurrencia: procesos ligeros (threads) con memoria común
– Temporización: medida de tiempos y ejecución periódica
– planificación determinista
» ej.: prioridades fijas con desalojo
– Dispositivos de E/S: acceso a recursos de hardware e
Interrupciones.
Todos los sistemas operativos de tiempo real incluyen:
Un reloj de tiempo real: proporciona la información para planificar los procesos en forma periódica.
Un manejador de interrupciones: gestiona las solicitudes aperiódicas de los servicios.
Gestor de recursos: asigna la memoria adecuada.
un despachador: la función de iniciar la ejecución de un proceso.
Los sistemas operativos de tiempo real para sistemas grandes, tales como control de procesos de sistemas de telecomunicaciones pueden tener facilidades adicionales, tales como la gestión de almacenamiento en disco.
Gestión de procesos
Los sistemas de tiempo real tienen que manejar eventos externos rápidamente y, en algunas ocasiones satisfaces plazos de tiempo para el procesamiento de eventos, esto significa que estos eventos deben de ser planificados a tiempo para la ejecución.
El gestor de procesos en un RTOS (real-time operating system) es el responsable de elegir los procesos para su ejecución, asignar recursos de memoria e iniciar y detener la ejecución una de las cosas más importantes es el tiempo ya que todo tiene su límite de tiempo especificado.
BIBLIOGRAFIA
http://metodoz.blogspot.mx/2013/05/diseno-de-software-de-arquitectura-de.html
http://www.disa.bi.ehu.es/spanish/asignaturas/17225/SITR_tema_3_JAP_DIT_UPM.pdf
INTEGRANTES DE EQUIPO:
FERNANDO JAYME PULIDO
OSCAR FERREYRA MARTINEZ
TOMAS GONZALEZ RIVERA
ALEXIS URIEL HERNANDEZ LOPEZ
JOSE FABIAN GONZALEZ MARTINEZ
MISAEL CARDENAS REYES
Full transcript