Reseña Histórica – Hitos a lo largo del tiempo:
1980: Primer núcleo de un sistema operativo en tiempo real básico 1982: Primera versión de QNX 1990: Rediseño de QNX + Salida de versiones comerciales
Introducción a los Sistemas Operativos en tiempo real Un Sistema Operativo en tiempo real es un sistema operativo diseñado para aplicaciones de tiempo real. Debe garantizar un alto grado de determinismo y dar la respuesta sin errores en un lapso de tiempo corto.
Determinismo Sensibilidad Control de usuario Fiabilidad Tolerancia a los fallos Tipos de Sistemas Operativos en tiempo real:
Características fundamentales: SISTEMAS CRÍTICOS SISTEMAS NO CRÍTICOS
Características de diseño y soporte del Sistema Operativo en tiempo real:
Procesador. Planificación y Procesos. Comunicación entre procesos y sincronización. Interrupciones. Memoria. Comunicaciones.
PROCESADOR Problemas con la capacidad de procesamiento. Cuesta cumplir con el reloj interno del procesador. Tasa de interrupciones elevada.
TIPOS DE DISEÑO DE LOS SISTEMAS OPERATIVOS EN CUANTO AL MANEJO DE EVENTOS: Diseño guidado por eventos. Diseño de compartición.
PLANIFICACIÓN Y PROCESOS ESTADOS: Ejecución, preparado y bloqueado. Cola de procesos corta. Asignación y ordenamiento de la cola de procesos por prioridades. COMUNICACIÓN ENTRE PROCESOS Y SINCRONIZACIÓN Semáforos. Problemas: inversión de prioridades y punto muerto. Envío de mensajes.
MEMORIA Velocidad de acceso. Fragmentación. Paginación. COMUNICACIONES Lan bus o puertos serie.
ARQUITECTURA DE SISTEMAS OPERATIVOS EN TIEMPO REAL La Memoria física se divide en dos regiones: USER SPACE y KERNEL SPACE. El HW interactúa con el Kernel y el Kernel con el usuario. Se quiere minimizar la latencia y el Jitter.
Clases de tiempo real: TIEMPO REAL ESTRICTO TIEMPO REAL FLEXIBLE TIEMPO REAL FIRME
ARQUITECTURA BASICA
Alternativas de modificación del Kernel para reducir la latencia y el jitter: ATENCIÓN PRIORITARIA EN EL KERNEL ESTÁNDAR (PREEMPTABLE KERNEL)
MODIFICACIONES SOBRE EL KERNEL ESTÁNDAR (PATCH)
ATENCIÓN PRIORITARIA EN EL KERNEL ESTÁNDAR (PREEMPTABLE KERNEL)
ATENCION PRIORITARIA EN EL KERNEL ESTANDAR
MODIFICACIONES SOBRE EL KERNEL ESTÁNDAR (PATCH) Microkernel Nanokernel Recurso Kernel Extensiones POSIX de tiempo real añadidas al Kernel
MODIFICACIONES EN EL KERNEL ESTANDAR (PATCH): MICROKERNEL
MODIFICACIONES EN EL KERNEL ESTANDAR (PATCH): NANOKERNEL
MODIFICACIONES EN EL KERNEL ESTANDAR (PATCH): RECURSO KERNEL
MODIFICACIONES EN EL KERNEL ESTANDAR (PATCH): EXTENSIONES POSIX DE TIEMPO REAL AÑADIDAS AL KERNEL Consiste en modificar directamente al kernel del sistema operativo agregando librerías que den soporte a relojes, señales, semáforos, memoria compartida, etc.
Arquitectura de QNX Microkernel
Arquitectura de QNX
Responsabilidades:
IPC (Comunicación entre procesos) Mensajes Proxies Señales La comunicación de la red a bajo nivel. Planificador de procesos. Manejo de interrupciones del primer nivel.
Microkernel
Arquitectura Interna
Microkernel
Procesos de un sistema QNX Administrador de procesos (Proc) Administrador del sistema de archivos (Fsys) Administrador de dispositivos (Dev) Administrador de red (Net)
Administrador de Procesos Fases del ciclo de vida de un proceso: creación, carga, ejecución y terminación. QNX soporta tres primitivas de la creación de procesos: Fork () Exec () Spawn ()
Administrador del sistema de archivos QNX implementa seis tipos de archivos: Archivos regulares Directorios Accesos directos Pipes y FIFOs Archivos de bloques especiales Archivo especial de carácter
Administrador de dispositivos
Administrador de red Ofrece tres rasgos avanzados: Un mayor rendimiento a través de equilibrio de carga Tolerancia a fallos a través de conectividad redundante Puente entre las redes de QNX
Diferencias con otros SO Comparación de QNX con la familia UNIX, Windows.
Instalación de QNX Instalación típica de QNX
Inserte el CD o el disquete en la unidad de lectura. Reinicie su computadora. Cuando arranca el sistema, simplemente siga las instrucciones que aparecen en pantalla.
Necesitara conocer la configuración de su Hardware ya que el instalador lo solicitara. Luego, puede instalar cualquier software para QNX, el sistema ya estará listo para su uso.
Pasos para instalar QNX
QNX Neutrino RTOCaracteristicas Tiempo real Arquitectura Microkernel Partición adaptativa Procesamiento Transparente Distribuido Arranque Rápido
Proporciona tiempos de respuesta rápidos y predecibles, gracias a:
Planificador basado en prioridades Interrupción de latencias Atención de interrupciones en un plazo previsible
Tiempo real
Arquitectura Microkernel
Sistemas robustos Facilita la identificación y corrección de errores Actualización segura y rápida de componentes
Sistemas auto-reparables La falla se limita al componente Recuperación rápida del sistema
Arq. Microkernel – Beneficios
Asegura que los procesos críticos cuenten siempre con los recursos necesarios y cumplan los plazos de tiempo real.
CASOS: Condiciones normales Sobrecarga Ciclos de procesamiento disponibles Partición adaptativa
Partición adaptativa
Procesamiento transparente distribuido
Independencia de los recursos de su localización física en la red. Comunicación mediante una sola capa. Redundancia y balanceo de carga. Procesamiento transparente distribuido
OBJETIVO: cumplir requisitos de disposición temprana.
ESTRATEGIAS: BIOS less boot Microkernel Activación instantánea de dispositivo Arranque rápido
Photon microGUI
Configuración de pantallas múltiples. Application Builder. Compatibilidad con lenguajes asiáticos. Rápida creación de prototipos. Actualización de la interfaz de usuario sin reiniciar el sistema. HMI (Human Machine Interface). Phindows.
Características
Es una herramienta de conexión a distancia. Permite la interacción de aplicaciones Photon en Windows.
CARACTERÍSTICAS: Brinda portabilidad y productividad. Rendimiento ajustable a recursos disponibles. Fuentes de ventana local. Seguridad. Phindows
REQUERIMIENTOS: QNX 6.3 o superior Windows 2000, Windows XP Phindows
SOFTWARE SOBRE QNX: REALFLEX Características Beneficios
Sus características principales son:
Soporte de tiempo real, para seguimiento y control Configuración STAND BY Alto rendimiento y diseño eficaz para grandes bases de datos Procesa datos en tiempo real Guarda un histórico de las bases de datos Dispone de alarmas, procesadores de eventos, de cálculos Tiene capacidad de control Tiene CSL- Lenguaje de comandos de secuencia Soporta una amplia gama de protocolos estándares Migración automática de sistemas heredados RealFlex 4 Dispone de API del servidor de aplicaciones para interactuar con consolas QNX Dispone de un kit de desarrollo de personal
Sus beneficios son:
Alta velocidad Redundancia en el procesamiento para recuperación ante fallos Los usuarios tienen acceso a la interfaz del operador, bases de datos SQL, páginas web Compatibilidad con un gran número de RTOS Permite efectuar captura de eventos del sistema Se pueden desarrollar aplicaciones
Interface Gráfica de Usuario