ChibiOS/RT

sistema operativo

ChibiOS / RT es un sistema operativo en tiempo real compacto y rápido que admite múltiples arquitecturas y se publica bajo una combinación de licencias GPL3 y Apache 2.0 (según el módulo). Está desarrollado por Giovanni Di Sirio.

ChibiOS/RT
Información general
Tipo de programa sistema operativo
Desarrollador Giovanni Di Sirio
Modelo de desarrollo Código abierto
Lanzamiento inicial 2007
Licencia GPL3 o propietario
Estado actual Estable
Información técnica
Plataformas admitidas Intel 80387, ARM7, ARM9, ARM Cortex-M0, ARM Cortex-M3, ARM Cortex-M4, ARM Cortex-M7, PowerPC, e200z, Atmel AVR, TI MSP430, STM8, Freescale Coldfire, Renesas H8S
Versiones
Última versión estable 20.3.2 / 1 de agosto de 2020 ()
Enlaces

Las licencias comerciales están disponibles en ChibiOS . Los productos adicionales incluyen ChibiOS/HAL, una capa de abstracción de hardware compatible con ChibiOS/RT, y ChibiStudio, un entorno de desarrollo libre basado en Eclipse, GNU Compiler Collection y el módulo de depuración OpenOCD JTAG .

Métrica

editar

ChibiOS/RT está diseñado para aplicaciones integradas en microcontroladores de 8, 16 y 32 bits; el tamaño y la eficiencia de ejecución son los principales objetivos del proyecto.[1]​ Como referencia, el tamaño del kernel puede variar desde un mínimo de 1.2 KiB hasta un máximo de 5,5 KiB con todos los subsistemas activados en un procesador STM32 Cortex-M3 . El kernel es capaz de superar los 220.000 subprocesos creados/terminados por segundo y puede realizar un cambio de contexto en 1,2 microsegundos en un STM32 a 72 MHz. Se incluyen métricas similares para todas las plataformas compatibles en la distribución de origen como informes de prueba.

Características

editar

El microkernel ChibiOS/RT admite:

Todos los objetos del sistema, como hilos, semáforos, temporizadores, etc., se pueden crear y eliminar en tiempo de ejecución. No hay límite superior excepto para la memoria disponible. Para aumentar la fiabilidad del sistema, la arquitectura del kernel es completamente estática, no se requiere un asignador de memoria (pero está disponible como una opción) y no hay estructuras de datos con límites de tamaño superiores como tablas o pilas. Las API del sistema están diseñadas para no tener condiciones de error, como códigos de error o excepciones.

Los RTOS están diseñados para aplicaciones en dispositivos integrados e incluye aplicaciones de demostración para varios microcontroladores :

  • ST STM32F1xx, STM32F2xx, STM32F3xx, STM32F4xx, STM32L1xx, STM32F0xx
  • ST STM8S208x, STM8S105x, STM8L152x
  • ST / Freescale SPC56x / MPC56xx
  • NXP LPC11xx, LPC11Uxx, LPC13xx
  • NXP LPC2148
  • Atmel AT91SAM7S, AT91SAM7X
  • Atmel Mega AVR
  • TI MSP430x1611
  • TI TM4C123G y TM4C1294
  • Microchip PIC32MX

Los puertos contribuidos también están disponibles para las familias Coldfire y H8S .

ChibiOS/RT también ha sido portado a Raspberry Pi[3]​ y se han implementado los siguientes controladores de dispositivo: Puerto (GPIO), Serie, GPT (Temporizador de uso general), I2C, SPI y PWM.

Además es posible ejecutar el kernel en un proceso Win32 en un modo de emulación de E/S de software, lo que permite un fácil desarrollo de aplicaciones sin necesidad de hardware físico. Se incluye un ejemplo para el compilador MinGW .

ChibiOS/RT es totalmente compatible con el kit de herramientas GUI µGFX . µGFX se conocía anteriormente como ChibiOS/GFX.

Véase también

editar

Referencias

editar
  1. «ChibiOS/RT statistics on ohloh.net». Archivado desde el original el 14 de abril de 2014. Consultado el 30 de enero de 2010. 
  2. «A detailed explanation of multithreading in ChibiOS/RT». Archivado desde el original el 23 de abril de 2018. Consultado el 10 de diciembre de 2020. 
  3. Czwienczek (9 de abril de 2014). «Sistemas Operativos para Microcontroladores.: RTOS para Raspberry Pi». Sistemas Operativos para Microcontroladores. Consultado el 11 de enero de 2021. 

Enlaces externos

editar