Desarrollo De Sistemas En Tiempo Real

Sistema de tiempo real.
Un sistema de tiempo real es aquel en el que para que las operaciones computacionales sean correctas no solo es necesario que la lógica e implementación de los programas computacionales sea correcto, sino también el tiempo en el que dicha operación entregó su resultado. Si las restricciones de tiempo no son respetadas el sistema se dice que ha fallado.
*Características de los sistemas en tiempo real.
* Determinismo: es una cualidad clave en los sistemas de tiempo real. Es la capacidad de determinar con una alta probabilidad, cuanto es el tiempo que se toma una tarea en iniciarse. Esto es importante porque los sistemas de tiempo real necesitan que ciertas tareas se ejecuten antes de que otras puedan iniciar.
* Responsividad: es aquella que se enfoca enel tiempo que tarda una tarea en ejecutarse una vez la interrupción ha sido atendida. Los aspectos a los que se enfocan son: La cantidad de tiempo que se lleva el iniciar la ejecución de una interrupción, la cantidad de tiempo que se necesita para realizar la tarea que pidió la interrupción, y los efectos de interrupciones anidadas.
* Usuarios controladores: En estos sistemas, el usuario (porejemplo, los procesos que corren en el sistema) tienen un control mucho más amplio del sistema. El proceso es capaz de especificar su prioridades, es capaz de especificar el manejo de memoria que requiere (que parte estará en caché y que parte en memoria swap y que algoritmos de memoria swap usar),y especifica que derechos tiene sobre el sistema. Esto aunque parece anárquico no lo es, debido aque los sistemas de tiempo real usan tipos de procesos que ya incluyen estas características, y usualmente estos TIPOS de procesos son mencionados como requerimientos.
* Confiabilidad: El sistema no debe solamente estar libre de fallas pero más aún, la calidad del servicio que presta no debe degradarse más allá de un límite determinado. El sistema debe de seguir en funcionamiento a pesar decatástrofes, o fallas mecánicas. Usualmente una degradación en el servicio en un sistema de tiempo real lleva consecuencias catastróficas,
* Operación a prueba de fallas duras: El sistema debe de fallar de manera que: cuando ocurra una falla, el sistema preserve la mayor parte de los datos y capacidades del sistema en la mayor medida posible. Que el sistema sea estable, es decir, que si para elsistema es imposible cumplir con todas las tareas sin exceder sus restricciones de tiempo, entonces el sistema cumplirá con las tareas más críticas y de más alta prioridad.
Calidad de software.
Es el desarrollo de software basado en estándares con la funcionalidad y rendimiento total que satisfacen los requerimientos del cliente. La calidad del software es medible y varía de un sistema a otro ode un programa a otro. Un software elaborado para el control de naves espaciales debe ser confiable al nivel de "cero fallas"; un software hecho para ejecutarse una sola vez no requiere el mismo nivel de calidad; mientras que un producto de software para ser explotado durante un largo período (10 años o más), necesita ser confiable, mantenible y flexible para disminuir los costos de mantenimientoy perfeccionamiento durante el tiempo de explotación.
* Características que hacen un software de calidad:
* Mantenibilidad: el software debe ser diseñado de tal manera, que permita ajustarlo a los cambios en los requerimientos del cliente. Esta característica es crucial, debido al inevitable cambio del contexto en el que se desempeña un software.
* Confiabilidad: incluye variascaracterísticas además de la confiabilidad, como la seguridad, control de fallos, etc.
* Eficiencia: tiene que ver con el uso eficiente de los recursos que necesita un sistema para su funcionamiento.
* Usabilidad: el software debiera ser utilizado sin un gran esfuerzo por los usuarios para los que fue diseñado, documentado, etc.
Lograr el éxito en la producción de software es hacerlo con...
tracking img