1. 10. SISTEMAS OPERATIVOS DE TIEMPO REAL O
EMBEBIDOS
Editar 0 2…
10. SISTEMAS OPERATIVOS DE TIEMPO REAL/
EMBEBIDOS
Los sistemas embebidos y los de tiempo real son tecnologías inmersas en el diario
vivir y generalmente no se identifican fácil y tampoco se definen los sistemas
operativos que hacen posible su manipulación y que a la vez administran los
recursos de dichos dispositivos para maximizar el desempeño.
Un sistema operativo embebido es aquel que esta integrado en los circuitos de los
dispositivos electrónicos, entre estos dispositivos se encuentran
electrodomésticos, teléfonos móviles, radios, televisores, automóviles, lectores de
códigos de barras, equipos médicos, asistentes digitales personales (PDA), etc.
Estos sistemas suelen tener algunas características de los sistemas de tiempo real
pero también tienen limitaciones de tamaño, memoria y consumo de electricidad
que los hace especiales y no suelen ser visibles.
Características
Suelen utilizar un par de KB de RAM y ROM.
Trabaja con procesadores poco potentes.
Son sistemas operativos tolerantes a fallos.
SISTEMAS OPERATIVOS DE TIEMPO REAL (SOTR o RTOS -Real Time
OperatingSystem en inglés)
Sistema operativo que ha sido desarrollado para aplicaciones de tiempo real con
el fin de garantizar el cumplimiento de forma adecuada de las tareas teniendo en
cuenta las restricciones de tiempo lo que hace necesario que el sistema sea
determinista.
Es los SOTR no importa el usuario sino los procesos, generalmente se subutilizan
los recurso con el fin de estar disponibles y atentos a los procesos en el momento
que este los requiera, es utilizado en entornos donde se procesan gran cantidad
de eventos.
Son empleados para aplicaciones muy específicas como pueden ser:
Control del tráfico aéreo.
Bolsas de valores.
Control de refinerías.
Control de trenes.
Telecomunicaciones.
Sistemas de fabricación integrada.
Características de los sistemas de tiempo real
2. Objetivo es proporcionar rápidos tiempos de respuesta y cambios de contexto.
Minimizar el tiempo en el que esta deshabilitadas las interrupciones.
Procesa ráfagas de miles de interrupciones por segundo sin perder un solo
suceso.
Proceso de mayor prioridad expropia recursos.
Generalmente se utiliza planificación expropiativa basada en prioridades.
Gestión de memoria menos exigente que tiempo compartido, usualmente
procesos son residentes permanentes en memoria.
Poco movimiento de programas entre almacenamiento secundario y memoria.
La gestión de archivos se orienta más a velocidad de acceso que a utilización
eficiente del recurso.
Debe ser multihebrado y apropiativo.
Poseer un tamaño pequeño.
Debe existir mecanismos de sincronización predecibles y de herencia de prioridad.
Gestión de memoria que no afecte a la Predicibilidad.
Muchas aplicaciones de tiempo real son embebidas, pero no todas las
aplicaciones embebidas se desempeñan en tiempo real. Mientras que aplicaciones
en tiempo real siempre se adhieren a características estrictas en el tiempo, los
sistemas embebidos no son tan simples de categorizar.
Algunos sistemas operativos embebidos y de tiempo real son:
10.1 Windows XP Embedded
Es una versión de Windows XP recortada (componetizada) para dispositivos
móviles. Está pensado para arquitecturas tipo X86 y soporta practicamente el
mismo software y hardware que XP.
Sistema operativo y plataforma de desarrollo que permite a los desarrolladores
elegir entre más de 10000 componentes individualmente para conseguir la
máxima funcionalidad en una huella reducida.
Permite reducir el tiempo al mercado aprovechando un modelo de programación
familiares y un poderoso conjunto de herramientas.
Ejemplos de dispositivos construidos con Windows XP Embedded:
Cajeros automáticos.
Impresoras y escáneres
Avanzada Set-Top Boxes
Industria robótica
Servidores de los medios de comunicación en red
Dispositivos médicos
10.2 RTLinux
Es un sistema operativo en tiempo real que ejecuta Linux como un thread (hilo de
ejecución) de menos prioridad que las tareas de tiempo real. Con este diseño, las
tareas de tiempo real y los manejadores de interrupciones nunca se ven
3. retrasados por operaciones que no son de tiempo real.
La primera versión de RTLinux estaba diseñada para ejecutarse en la plataforma
x86 y proporcionaba una pequeña API y un pequeño entorno de programación. La
versión 2, que fue totalmente reescrita, fue diseñada para el soporte de
multiprocesamiento simétrico (SMP) y para ser ejecutada en una amplia variedad
de arquitecturas.
RTLinux proporciona la capacidad de ejecutar tareas de tiempo real y
manejadores de interrupciones en la misma máquina que el Linux estándar. Estas
tareas y los manejadores ejecutan cuando se necesitan en detrimento de lo que
estuviera ejecutando Linux. El peor caso de tiempo es entre que se detecta la
interrupción hardware y el procesador ejecuta la primera instrucción del manejador
de la interrupción. Este tiempo es del orden de los 10 microsegundos en la
plataforma x86.
Características de los sistemas RTLinux
Sistema operativo de tiempo real estricto.
Extensiones para entorno multiprocesador SMP (x86).
API "próximo" al de POSIX threads. Planificador expulsivo por prioridades fijas,
señales, sistema de archivos POSIX (open, close, etc.) semáforos y variables
condición.
Depuración de código mediante GDB (GNU Debugger).
Soporte para arquitecturas x86 y PPC.
Acceso directo al hardware (puertos e interrupciones).
Comunicación con procesos linux mediante memoria compartida y "tubos".
Estructura modular para crear sistemas pequeños.
Eficiente gestión de tiempos. En el peor caso se dispone de una resolución
próxima al microsegundo (para un i486).
Facilidades para incorporar nuevos componentes: relojes, dispositivos de E/S y
planificadores.
10.3 ChorusOS
ChorusOS es un sistema operativo para aplicaciones empotradas o en tiempo
real, desarrollado por la empresa Sun Microsystems. Actualmente está liberado
bajo código abierto.
Es sistema operativo altamente escalable y estable, sirve para sistemas
distribuidos, en red, empotrados o en tiempo real y se ha establecido como un
sistema operativo muy utilizado en hardware para comunicaciones, desde móviles
hasta switches. Pero también se encuentra en otras aplicaciones empotradas,
tales como impresoras, autómatas, etc.
Es de arquitectura basada en componentes (módulos), lo que le dota de una alta
configurabilidad y escalabilidad.
Este sistema operativo pertenece a la quinta generación de los sistemas
operativos.
4. 10.4 VxWorks
VxWorks es un sistema operativo de tiempo real, basado en Unix, vendido y
fabricado por WindRiverSystems. Las características distintivas de VxWorks son:
La compatibilidad con POSIX.
El tratamiento de memoria.
Las características de multi-procesador.
VxWorks se usa generalmente en sistemas empotrados.
10.5 QNX
QNX (pronunciado Q.N.X. o Q-nix) es un sistema operativo de tiempo real basado
en Unix que cumple con la norma POSIX. Es desarrollado principalmente para su
uso en dispositivos empotrados. Desarrollado por QNX Software Systems
empresa canadiense.
QNX está basado en una estructura de micronúcleo, que proporciona
características de estabilidad avanzadas frente a fallos de dispositivos,
aplicaciones, etc.
Está disponible para las siguientes arquitecturas: x86, MIPS, PowerPC, SH4
(incluida la videoconsola Dreamcast con una versión muy limitada de este), ARM,
StrongARM y xScale.
10.6 S. O. µlTRON
µMore es un sistema operativo en tiempo real para dispositivos móviles de
próxima generación que cumple las especificaciones de perfiles estándar ulTRON
4.0. Entre sus prestaciones se incluye la función EasyPowerSave (ahorro de
energía sencillo) y el módulo de red AVE-TCP (que cumple las especificaciones
IPv6). µMore puede implementarse independientemente o en combinación con los
navegadores ACCESS para la electrónica de consumo, NetFront o Compact
NetFront.
Funciones y prestaciones
Código abierto libre de cánones
Compatible con ITRON4.0.
Tamaño de código compacto.
Requisitos de ROM: 7-9 KB para configuración mínima.
Alto rendimiento.
Los gastos indirectos del S. O. se reducen llevando a cabo llamadas de sistema a
través de llamadas de subrutina. Cambio de tarea: 6,8 segundos,
aproximadamente. Cambio de contexto: 2 segundos, aproximadamente.
(Condiciones de la prueba: SH7709A ejecutándose a 133MHz, con uso de caché)
Las partes clave están escritas en lenguaje C. Puede portarse a distintas
plataformas de CPU.
Función EasyPowerSave (ahorro de energía sencillo).
Cambia automáticamente a modo de suspensión cuando el sistema está inactivo.
Funciones de red disponibles (opcional).
5. AVE-TCP: pila de protocolos TCP/IP para aplicaciones embebidas fiable y con
buenos resultados.
MMSO: observador de sistema Micro More
Herramienta de análisis del funcionamiento de tareas/S. O.
Emulador de PC.
Desarrollo y depuración basado en PC de aplicaciones escritas en VC++.
CPU compatibles:
SH-3, SH-4, ARM7TDMI.
Configurador de sistema gráfico compatible con ITRON4.0.
Ofrece soluciones completas en combinación con la máquina virtual de Java JV-
Lite2, conexión de redes AVE-TCP, sistema de ficheros AVE-File, servidor web
AVE-HTTPD, protocolo de infrarrojos IrFront y el navegador NetFront /Compact
NetFront.
10.7 Windows Embedded CE
Es una versión distinta de Windows pensada para dispositivos móviles solamente y construida
desde cero para este fin. Es más pequeña que XP Embeded llegando a tener como mínimo 300KB
(vs 40MB de XPe) y con 700 componentes que se pueden escoger (como un lego tambien).
El release 5 fue el que hasta ahora se ha incluido en diversos dispositivos como thinclients, equipo
médico, cámaras digitales, teléfonos VOIP y otros, con la versión 6 se anuncia el inicio de una
nueva generación (incluyendo un nuevo kernel que seria el 3o) de versiones especializadas de CE.
Está pensado para diversas arquitecturas además de la x86 como ARM, MIPS.
10.8 freertos
Sistema operativo de tiempo real para los sistemas empotrados pequeños.
Los programas preconfigurados de la demostración son incluidos para varias arquitecturas del
microcontrolador - ARM7, CORTEZA M3, 8051, AVR (MegaAVR), x86, PIC (PicMicro PIC18),
HCS12, H8S, RDC del BRAZO.。
10.9 NetBSD
Es un sistema operativo de la familia Unix (en sí no se le puede llamar "un Unix",
ya que esta es una marca comercial de AT&T, pero se denomina como "sistema
de tipo UNIX" o "derivado de UNIX"), open source y libre, y, a noviembre de 2006,
disponible para más de 50 plataformas hardware.
Su diseño y sus características avanzadas lo hacen ideal para multitud de
aplicaciones. NetBSD ha surgido como resultado del esfuerzo de un gran número
de personas que tienen como meta producir un sistema operativo tipo Unix
accesible y libremente distribuible.
Es utilizado en varios dispositivos empotrados y no ha requerido de software de
desarrollo adicional más que el juego de herramientas.
Características de los sistemas NetBSD:
Actualmente NetBSD se centra en ofrecer un sistema operativo estable,
multiplataforma, seguro y orientado a la investigación.
Está diseñado teniendo como prioridad escribir código de calidad y bien
organizado, y teniendo muy en cuenta también el cumplimiento de estándares
(POSIX, X/Open y otros más relevantes): prueba de este buen diseño es su
amplia portabilidad, actualmente a 56 plataformas.
Se trata de un sistema operativo maduro, producto de años de desarrollo (los
6. orígenes de BSD están sobre el año 1977), y partiendo del sistema UNIX sexta
edición.
10.10 OpenBSD
Sistema operativo libre tipo Unix, multiplataforma, basado en 4.4BSD. Es un
descendiente de NetBSD, con un foco especial en la seguridad y la criptografía.
Este sistema operativo, se concentra en la portabilidad, cumplimiento de normas y
regulaciones, corrección, seguridad proactiva y criptografía integrada.
Se distribuye bajo la licencia BSD, aprobada por la OSI.
Características
Sistema operativo tipo UNIX.
Se distingue de Linux por sus fuentes y su licencia.
Libre, Funcional, Seguro.
Base de desarrollo en Calgary.
Nueva versión cada 6 meses.
Acceso CVS al código fuente.
Actualmente esta en la versión 3.6.
10.11 Linux empotrado (Embedded Linux)
Se refiere al uso del sistema operativo Linux en un sistema embebido, como por
ejemplo PDA's, teléfonos móviles, robots, enrutadores / servidores, dispositivos
electrónicos y aplicaciones industriales con microcontroladores y
microprocesadores.
El núcleo de Linux, combinado con un conjunto de algunas otras utilidades de
Software Libre, puede ajustarse dentro del limitado espacio de hardware de los
sistemas embedidos. Una instalación típica de un Linux empotrado ocupa en
promedio 2 MB.
Linux Empotrado tiene algunas ventajas en relación a otros sistemas operativos
empotrados, como pueden ser el Código abierto, pequeño (Windows CE ocupa 21
MB comparado con los 2 MB para Linux Empotrado), puede no tener costos por
derechos, maduro y estable (Más de 10 años de edad y utilizado en muchos
dispositivos) y con respaldado.
http://www.slideshare.net/jkovima/introduccion-a-los-sistemas-embebidos-presentation
http://www.slideshare.net/20kblossomk29/embedded-systems-introduction-15343333