martes, 24 de julio de 2012

Actividad 17


Actividades Obligatorias
    • Indique cinco ejemplos de sistemas de tiempo real basados en computadora. Indique que "estimulos" alimentan al sistema y qué dispositivos o situaciones controla o supervisa el sistema.
QNX
· LynxOS
· RedHat Embedded Linux
· eCos (Linux)
· SOOS
· Ubuntu Studio (Linux)
· VxWorks
· Windows CE
· Linchos
    • Proporcione tres ejemplos en los que los semaforos sean un mecanismo apropiados de sincronización de tareas.


La computadora digital se ha convertido en una maquina omnipresente en al vida diaria de todos nosotros. Las computadoras nos permiten ver juegos, así como contar el tiempo, optimizar el gasto de gasolina de nuestras ultimas generaciones de coches y programar a nuestros aparatos.
Todas estas interacciones con las computadoras sean útiles o intrusivas son ejemplos de computación de tiempo real. La computadora esta controlando algo que interactua con la realidad sobre una base de tiempo de hecho, el tiempo es la esencia de la interacción.


    • Obtenga información sobre una o más herramientas de análisis formales para sistemas de tiempo real.
Un sistema operativo de tiempo real diseñado exclusivamente para aplicaciones de tiempo real y sistemas operativos de propósito general que se han reforzado para suministrar capacidades de tiempo real. El uso de un ejecutivo de tiempo real hace factible el rendimiento en tiempo real para un sistema operativo de propósito general comportándose como software de aplicación, el ejecutivo ejecuta varias funciones del sistema operativo, particularmente las que afectan al rendimiento de tiempo real de una forma más rápida y eficiente que el sistema operativo de propósito general.


Describa las bases de datos en tiempo real
La Base de Datos en tiempo real ('real-time database -RTDB' en inglés) aplicado a sistemas de control/SCADA, es el área de memoria compartida del Kernel del programa/equipo usada para almacenar el valor actual de los datos o variables monitoreadas. Es una memoria que guarda datos mientras el programa que la origina está en ejecución por lo cual, no guarda valores históricos una vez que este es detenido. Si hacemos una analogía, es como lo hecho por la memoria RAM en los PCs.

Los sistemas SCADA por ser multitareas (realizan operaciones de lectura/escritura I/O, registro de datos, alarmas, tendencias, cálculos, etc al mismo tiempo) poseen una memoria o base de datos de tiempo real basada en su mayoría, en el valor de tags/variables que el sistema tiene configurado y que pueden cambiar de forma externa (lectura desde un PLC) o interna (ingresada por el usuario). Estos datos cambiantes viven en esa base de datos de tiempo real para ser usada por cualquier otra aplicación o variable dentro del SCADA que pueda necesitarla (son de uso público).  

Actividades sugeridas
    • Explique los sistemas operativos en tiempo real
QNX
· LynxOS
· RedHat Embedded Linux
· eCos (Linux)
· SOOS
· Ubuntu Studio (Linux)
· VxWorks
· Windows CE
· Linchos
    • ¿Cuáles son las carácteristicas de un lenguaje de tiempo real?


Básicamente los sistemas de tiempo real se definen como sistemas informáticos que tienen la capacidad de interactuar rápidamente con su entorno físico, el cual puede realizar funciones de supervisión o control para su mismo beneficio.

Todos los sistemas de tiempo real tienen la facultad de ejecutar actividades o tareas en de intervalos de tiempo bien definidos.

Todas las tareas son ejecutadas inmediatamente en una forma concurrente, esto es para sincronizar el funcionamiento del sistema con la simultaneidad de acciones que se presentan en el mundo físico.

En los sistemas de tiempo real los intervalos de tiempo en que se ejecutan las tareas se definen por un esquema de activación y por un plazo de ejecución. En lo que respecta al esquema de activación puede ser periódico, es decir en intervalos regulares, o también puede ser aperiódico, es decir,en respuesta a sucesos externos que ocurren de forma irregular.

La mayoría de los STR son utilizados cuando existen requerimientos de tiempo muy rígidos en las operaciones o en el flujo de datos, generalmente son requeridos como sistemas de control en una aplicación dedicada.

    • Mensione los requisitos funcionales de un sistema de tiempo real
Es importante que el lenguaje de programación soporte directamente la multitarea debido a que los sistemas de tiempo real deben responder a sucesos asíncronos que ocurren simultáneamente. Aunque sistemas operativos de tiempo real dan capacidad multitarea, frecuentemente existe software de tiempo real empotrado sin un sistema operativo. En vez de ello, las aplicaciones se escriben en un lenguaje que da un soporte de tiempo real suficiente para la ejecución del programa de tiempo real. El soporte de tiempo de ejecución requiere menos memoria que un sistema operativo y puede ser adaptado a una aplicación, incrementando así el rendimiento.

Autoevaluación
1.      ¿En qué consisite el diseño en tiempo real?

El software de tiempo real esta muy acoplado con el mundo externo, esto es, el software de tiempo real debe responder al ámbito del problema en un tiempo dictado por el ámbito del problema. Debido a que el software de tiempo real debe operar bajo restricciones de rendimiento muy rigurosas, el diseño del software esta conducido frecuentemente, tanto por la arquitectura del hardware como por la del software, por las características del sistema operativo, por los requisitos de la aplicación y tanto por los extras del lenguaje de programación como prospectos de diseño.
2.      ¿Qué son los sistemas de tiempo real?

Como cualquier sistema basado en computadora, un sistema de tiempo real debe integrar hardware, software, hombres y elementos de una base de datos, par conseguir adecuadamente un conjunto de requisitos funcionales y de rendimiento.

El problema para los sistemas de tiempo real es realzar la asignación importante como la función, pero las decisiones de asignación relativas al rendimiento son frecuentemente difíciles de hacer con seguridad.


3.      ¿Cuáles son los sistemas operativos en tiempo real?

QNX
· LynxOS
· RedHat Embedded Linux
· eCos (Linux)
· SOOS
· Ubuntu Studio (Linux)
· VxWorks
· Windows CE
· Linchos
4.      ¿En qué consiste la siscronización y comunicación de tareas?

Un sistema de multitarea debe suministrar un mecanismo por que el que las tareas se pasen información unas a otras, así como para asegurar su sincronización. Para estas funciones, los sistemas operativos y los lenguajes con soporte de tiempo real, utilizan frecuentemente semáforos de colas, buzones o sistemas de mensajes. Los semáforos suministran sincronización y señalización pero no contienen información. Los mensajes son similares a los semáforos, excepto en aquellos que llevan una información sino que la contienen.

Los semáforos de colas son primitivos de software que ayudan a gestionar el trafico. Suministran un método para dividir varias colas. Por ejemplo colas de tareas en espera de recursos, acceso a bases de datos o dispositivos, así como colas de recursos y dispositivos. Los semáforos coordinan (sincronizan) las tareas en espera con lo que estén esperando, sin dejar que las tareas o recursos interfieran entre sí.

No hay comentarios:

Publicar un comentario