Kernel de Sistema Operativo de Tiempo Compartido Mínimo en RISC-V con Zig

2025-09-14
Kernel de Sistema Operativo de Tiempo Compartido Mínimo en RISC-V con Zig

Esta publicación describe un kernel de sistema operativo de tiempo compartido mínimo, implementado en RISC-V utilizando el lenguaje de programación Zig. El proyecto, una nueva versión de una tarea de sistemas operativos de grado, aprovecha las herramientas modernas y la arquitectura RISC-V. Incluye hilos definidos estáticamente, llamadas al sistema entre hilos y programación round-robin mediante interrupciones del temporizador. Se implementa una virtualización básica de hilos, donde cada hilo tiene una pila y un contexto de registro privados. El código es de código abierto, y el autor proporciona un recorrido detallado de la implementación y explicaciones del código, convirtiéndolo en un recurso valioso para estudiantes de software de sistemas y arquitectura de computadoras.

Leer más
Desarrollo

Construyendo una biblioteca estándar C compacta con Newlib en RISC-V Bare Metal

2025-04-26
Construyendo una biblioteca estándar C compacta con Newlib en RISC-V Bare Metal

Este artículo demuestra cómo construir una biblioteca estándar C compacta usando Newlib en un sistema RISC-V bare-metal. El autor implementa funciones básicas de UART, pasándolas a Newlib para habilitar la funcionalidad printf. El proceso abarca el concepto de Newlib, la configuración de la cadena de herramientas de compilación cruzada, el controlador UART, las llamadas al sistema y la creación de un script de enlace. El artículo concluye ejecutando la aplicación en QEMU y analizando el registro de depuración. Este es un tutorial práctico sobre desarrollo de sistemas embebidos, que muestra cómo utilizar la biblioteca estándar C en entornos con recursos limitados.

Leer más
Desarrollo