Sistemas Operativos de Tiempo Real PDF

Title Sistemas Operativos de Tiempo Real
Author Walter Hc
Course Sistemas Operativos Avanzados
Institution Universidad Siglo 21
Pages 8
File Size 374.8 KB
File Type PDF
Total Downloads 83
Total Views 152

Summary

Download Sistemas Operativos de Tiempo Real PDF


Description

Sistemas Operativos de Tiempo Real

Sistemas Operativos Avanzados

Sistemas operativos de tiempo real Los sistemas operativos de tiempo real se caracterizan por tener una restricción temporal muy importante a la hora de llevar a cabo sus actividades. Esto significa que en dichos sistemas el tiempo es un factor clave; las operaciones tienen que cumplir su cometido en un determinado tiempo, ya que, pasado este lapso, el resultado de la operación ya no tiene sentido. Ejemplos de estos sistemas están en procesos militares, control aeronáutico y otras áreas críticas. En la actualidad uno de los sistemas operativos de tiempo real es VxWorks, que es un sistema operativo de sistemas integrados, basado en el sistema operativo Unix, vendido y fabricado por Wind River Systems, compañía de Alameda, California, Estados Unidos, fundada en 1981 y especializada en el desarrollo de tecnologías de simulación y sistemas inteligentes. (Traducido de: https://www.windriver.com/products/vxworks/). VxWorks, como la mayoría de los sistemas operativos en tiempo real incluye núcleo (kernel) multitarea con planificador con derecho preferente, preemptive, es decir los procesos pueden tomar la CPU arbitrariamente, respuesta rápida a las interrupciones, comunicación entre procesos, sincronización y sistema de archivos (Silberchatzm, 2005). Debemos comprender que, para los sistemas operativos de tiempo real estricto, es determinante alcanzar los objetivos. Algunas veces el sistema operativo termina siendo un conjunto de librerías enlazadas con los programas de aplicación, lo que evita el costo administrativo, overhead, que supone la protección y control entre partes de sistema. En esta lectura también describiremos un fenómeno que en los sistemas operativos de tiempo real es conocido como inversión de prioridad no acotada y que afecta a los procesos. Por último, describiremos las señales observadas en los sistemas operativos de tiempo real y detallaremos las características que tienen.

2

VxWorks El líder de los sistemas operativos de tiempo real, VxWorks, cuenta con las siguientes características: • Compatibilidad con POSIX. • Administración de memoria. • Multiprocesador. • Un intérprete de interfaz de usuario. • Monitor de rendimiento y depuración de código. Actualmente VxWorks puede ejecutarse en prácticamente todas las CPU (en inglés, unidad central de procesamiento) modernas del mercado de sistemas embebidos. Sobre el estándar POSIX (Portable Operating System Interface), Interface de sistema operativo portable. Este estándar está basado en el famoso sistema operativo UNIX. Con el estándar se pretende conseguir la portabilidad de aplicaciones a nivel de código fuente, que es el escrito por el programador, es decir, que sea posible portar una aplicación de una computadora a otra, o de una plataforma a otra, sin más que recompilar su código.

Otras características y beneficios de VxWorks  Arquitectura expansible y actualizable: tiene una plataforma modular pensada en el futuro. VxWorks puede adaptarse y evolucionar para ajustarse a los requerimientos del mercado, las necesidades y la tecnología de avanzada. El núcleo de VxWorks está separado de los protocolos, las aplicaciones y otros paquetes, y permite realizar actualizaciones y agregar nuevas características ( features) para cumplir más rápido con las mínimas funcionalidades que se necesitan para probar de nuevo todo el sistema.  Escalable: VxWorks es un sistema operativo de tiempo real ubicuo, que está disponible para dispositivos médicos y grandes sistemas inteligentes que forman grillas de sistemas y todo lo que hay entremedio. Escala según las necesidades de los proyectos y sus requerimientos.

3

 Amplia conectividad: la conectividad es la clave de los dispositivos en el Internet de las cosas (en inglés, IoT); por lo tanto, VxWorks soporta los estándares de conectividad líderes en la industria, junto con los protocolos de red, desde el momento en que comenzamos a usarlo. Se puede agregar RIP (Routing Information Protocol) y QoS (quality of service), que son capacidades avanzadas de red. La naturaleza modular de VxWorks permite agregar conectividad y capacidades de red.

 Seguridad: por más de 30 años, VxWorks ha sido la base que permitió la innovación en la industria espacial, la defensa, la industria automotriz y la industria médica. VxWorks permite diferenciarse y certificar sistemas críticos. El agregado del perfil de seguridad, si bien es opcional, permite proteger a los dispositivos eficientemente y, así, resguardar también los datos y la propiedad intelectual. Una certificación IEC 61508 SIL3 (IEC: Comisión Internacional de Electrotécnica por sus siglas en inglés: International Electrotechnical Commision, SIL: nivel de integridad y seguridad por sus siglas en inglés Safety Integrity Level, también opcional) permite reducir los costos y el tiempo para certificar estas características.  Es una plataforma que cumple con la ARINC (Corporación de Radio Aeronáutica por sus siglas en inglés Aeronautical Radio, Incorporated) 653, alineada con el estándar del Entorno de Capacidades del Futuro Aeronáutico (en inglés, FACE™).

 Posee soporte MILS (multiple independent levels of security o seguridad de múltiples niveles independientes) para sistemas seguros multinivel. Este soporte y esta arquitectura colabora con la reducción de costos y tamaño en el desarrollo de plataformas de hardware, lo que permite el uso compartido del mismo hardware.  Soporte para la certificación de seguridad crítica: cumple con certificaciones para entornos de aeronáutica, la industria de la automatización y la industria médica.  Tecnología de virtualización: VxWorks ofrece un hipervisor tipo 1 de tiempo real, que permite la consolidación de hardware separado en un solo procesador con múltiples núcleos.  Soporte Java Runtime: además de aplicaciones C y C++.

4



Tiene menor riesgo e integración más rápida con tecnologías ofrecidas por otros proveedores.

Inversión de prioridad no acotada La inversión de prioridad sucede cuando un proceso de prioridad alta tiene que esperar a que un proceso de prioridad baja termine de usar un determinado recurso compartido. Utilizando los protocolos de sincronización adecuados, puede conseguirse que la inversión de prioridad esté acotada por la duración de secciones críticas, es decir, en las secciones de código en las que el proceso se reserva un recurso para su uso exclusivo, el tiempo de la sección crítica, en general, es breve. Sin embargo, con los semáforos convencionales puede aparecer la inversión de prioridad no acotada. Esto significa que el retraso experimentado por tareas de prioridad alta no está acotado por la duración de secciones críticas, sino que depende del tiempo de ejecución total de tareas de prioridad más baja. Esta situación puede ocurrir cuando una tarea de alta prioridad está esperando a que una tarea de prioridad baja libere un semáforo que controla el acceso a un recurso compartido y la tarea de prioridad baja es expulsada –del uso de la CPU– por una tarea de prioridad intermedia. La Figura 1 muestra un ejemplo de esta situación. Los largos retrasos que se experimentan en estos casos son normalmente inaceptables para las tareas con requerimientos de tiempo real estricto (hard). Si se utilizan protocolos de sincronización apropiados, la cantidad de inversión de prioridad puede quedar acotada a la duración de secciones críticas, que es normalmente muy pequeña. Un mecanismo de sincronización diferente, el mutex, evita la inversión de prioridad no acotada y, opcionalmente, puede ser utilizado para sincronizar diferentes procesos.

5

Figura 1: Ejemplo de inversión de prioridad no acotada (POSIX tiempo real)

Fuente: González Harbour, M. (2001). POSIX https://www.istr.unican.es/publications/mgh-1993b.pdf

de

tiempo

real.

Recuperado

de

Señales de tiempo real El mecanismo de señales definido en el POSIX.1 permite notificar eventos que ocurren en el sistema operativo de tiempo real, pero no es completamente satisfactorio para aplicaciones de tiempo real. Las señales no se almacenan en colas y, por lo tanto, algunos eventos se pueden perder como consecuencia de este mecanismo. Las señales no están priorizadas, y esto implica tiempos de respuesta más largos para eventos urgentes, lo que es crítico para los sistemas operativos de tiempo real, en los que la respuesta rápida es obligatoria. Además, los eventos del mismo tipo producen señales con el mismo número y son indistinguibles. Puesto que muchas aplicaciones de tiempo real están basadas en el rápido intercambio de eventos en el sistema, el POSIX.4 ha extendido la interfaz de señales para conseguir las siguientes características:  Las señales de tiempo real se guardan en colas, por lo que los eventos no se pierden.  Las señales de tiempo real pendientes de procesado se extraen de la cola en orden de prioridad y se usa el número de señal como prioridad. Esto permite diseñar aplicaciones con tiempos de respuesta más rápidos ante eventos urgentes.  Las señales de tiempo real contienen un campo adicional de información, que la aplicación puede utilizar para intercambiar datos entre el

6

generador de la señal y el módulo que la procesa. Por ejemplo, este campo puede ser utilizado para identificar la fuente y la causa de la señal. 

El rango de señales disponibles para la aplicación ha sido expandido.

7

Referencias González Harbour, M. (2001). POSIX de tiempo real. Recuperado de https://www.istr.unican.es/publications/mgh-1993b.pdf [Imagen sin título sobre inversión de prioridad no acotada]. (s. f.). Recuperado de https://www.istr.unican.es/publications/mgh-1993b.pdf Silberchatz, A. (2005) Conceptos de sistemas operativos (7.a ed.). Madrid, ES: McGraw-Hill. Wind (s. f.). VxWorks. https://www.windriver.com/products/vxworks/

Recuperado

de

8...


Similar Free PDFs