用Zig在RISC-V上构建最小化的时间共享操作系统内核

2025-09-14
用Zig在RISC-V上构建最小化的时间共享操作系统内核

作者在RISC-V架构上用Zig语言实现了一个最小化的时间共享操作系统内核原型。该项目重做了作者本科操作系统课程中的一个练习,并利用了现代工具和RISC-V架构的优势。它支持静态定义线程、线程间系统调用以及基于定时器中断的时间片轮转调度,实现了基本的线程虚拟化,每个线程拥有独立的栈和寄存器上下文。代码已开源,并提供了详细的实现步骤和代码解释,适合系统软件和计算机体系结构学习者参考。

阅读更多
开发

在裸机RISC-V系统上使用Newlib构建紧凑型C标准库

2025-04-26
在裸机RISC-V系统上使用Newlib构建紧凑型C标准库

本文介绍了如何在裸机RISC-V系统上利用Newlib构建紧凑型C标准库。作者通过实现UART基本函数,并将其传递给Newlib,最终实现了printf功能。文章详细解释了Newlib的概念、交叉编译工具链的设置,以及UART驱动、系统调用和链接脚本的编写。最后,作者演示了如何在QEMU上运行该应用程序,并分析了调试日志。这是一个关于嵌入式系统开发的实用教程,展示了如何在资源受限的环境中使用C标准库。

阅读更多
开发 Newlib

打造我的首个嵌入式Linux系统

2024-06-16
打造我的首个嵌入式Linux系统

本文记录了作者从零开始构建嵌入式Linux系统的过程,从简单的ATtiny单片机编程开始,逐步深入到设计Linux系统所需的硬件和软件。作者详细介绍了电路设计、元器件选择、PCB布线以及软件镜像创建等环节,并分享了使用廉价SoC和有限资源实现Linux系统运行的经验和技巧。

阅读更多
未分类 电路设计