Microkernel Xous y chip abierto Baochip-1x para sistemas integrados seguros

Andrew Huang y Sean Cross, quienes diseñaron la computadora portátil Novena de código abierto y la plataforma para smartphones Precursor, presentaron el SoC de código abierto Baochip-1x en la conferencia 39C3 (Chaos Communication Congress). El chip está diseñado para usarse con el sistema operativo de micronúcleo Xous, que Andrew y Sean han estado desarrollando durante los últimos cinco años. Los esquemas, las descripciones de los bloques de hardware en Verilog, el simulador y la documentación de diseño correspondiente están disponibles bajo la licencia de código abierto CERN OHL 2.0. El código del sistema operativo Xous está escrito en Rust y se distribuye bajo la licencia Apache 2.0.

La falta de un equilibrio razonable en el mercado de chips que combine un diseño ligero con la capacidad de ejecutar sistemas seguros se cita como la razón para crear un SoC personalizado. Se observa que dos extremos se han vuelto comunes en los dispositivos integrados: chips completamente funcionales con una unidad de gestión de memoria (MMU), diseñados para ejecutar grandes plataformas basadas en Linux, y chips simplificados sin MMU, que utilizan sistemas operativos como Zephyr, Chibios o RT-Thread, que no ofrecen garantías de seguridad adecuadas.

Los creadores del chip Baochip-1x intentaron combinar la ligereza de los microcontroladores ARM sin MMU con las capacidades de aislamiento de memoria de las CPU completas. La MMU del Baochip-1x permite el uso de memoria virtual paginada para el aislamiento de procesos. El sistema operativo Xous combina las capacidades de memoria virtual con el verificador de préstamos del lenguaje Rust para crear un mecanismo seguro y eficiente para la transmisión asincrónica de mensajes entre procesos. El modelo de comunicación entre procesos implementado permite la separación de diferentes tareas manteniendo un tamaño de kernel mínimo.

El SoC Baochip-1x incluye una CPU VexRiscv de 32 bits basada en la arquitectura de conjunto de instrucciones RISC-V (RV32-IMAC) compatible con el esquema de traducción de direcciones Sv39 (memoria virtual) y un acelerador de E/S BIO de cuatro núcleos basado en el diseño PicoRV y compatible con el conjunto de instrucciones RV32E. VexRiscv opera a 400 MHz y BIO a 800 MHz. El SoC está equipado con 2 MB de SRAM y 4 MB de RRAM no volátil. El primer lote de chips se fabricará en el segundo trimestre de 2026 en TSMC mediante un proceso de 22 nm (TSMC22ULL).

 Microkernel Xous y chip abierto Baochip-1x para sistemas integrados seguros

El sistema operativo Xous admite procesos e hilos, y se basa en un micronúcleo compacto y un conjunto de servidores (implementaciones de servicios) que se comunican mediante un mecanismo de paso de mensajes asíncrono similar al de QNX. Los servidores escuchan los mensajes y ejecutan código específico de Rust asociado al mensaje recibido. El núcleo es responsable de entregar los mensajes a los servidores. asignación de servidores tiempo de procesador y transferencia de propiedad de la memoria de un servidor a otro.

El núcleo ejecuta una cantidad mínima de código (su tamaño es de 4 KB) y la mayor cantidad de funcionalidad posible se traslada al espacio de usuario. Entre otras cosas, el espacio de usuario implementa primitivas para la sincronización, la programación de tareas, la asignación de memoria, la interacción con el hardware y la red. También se implementa un servidor gráfico como servicio. Una característica distintiva de Xous es su implementación de la biblioteca estándar de C, escrita en Rust.

Fuente: opennet.ru

Compre alojamiento confiable para sitios con protección DDoS, servidores VPS VDS 🔥 Compra alojamiento web fiable con protección DDoS, servidores VPS VDS | ProHoster