This Month in Redox - August 2026
This Month in Redox - August 2026
Redox 本月动态 - 2026 年 8 月
This Month in Redox - August 2026 By Ribbon and Ron Williams on Monday, August 31, 2026. Redox OS is a complete Unix-like general-purpose microkernel-based operating system written in Rust. August was a very exciting month for Redox! Here’s all the latest news. Sorry for the delayed report, a combination of busy development, time off, conference attendance, other work, and various random factors got in the way. Redox 本月动态 - 2026 年 8 月,由 Ribbon 和 Ron Williams 发布于 2026 年 8 月 31 日,星期一。Redox OS 是一个完全由 Rust 编写的、类 Unix 的通用微内核操作系统。八月对 Redox 来说是非常令人兴奋的一个月!以下是所有最新消息。抱歉报告发布有所延迟,繁忙的开发工作、休假、参加会议、其他工作以及各种随机因素导致了进度延误。
Donate to Redox
为 Redox 捐款
If you would like to support Redox, please consider donating or buying some merch! Merch has moved from Teespring to Amaze Commerce: https://app.amazecommerce.com/shop/redox-os 如果您想支持 Redox,请考虑捐款或购买周边商品!周边商店已从 Teespring 迁移至 Amaze Commerce:https://app.amazecommerce.com/shop/redox-os
More Boot Fixes
更多引导修复
Wildan Mubarok improved UEFI compatibility, which allowed the MSI Modern 14 C7M laptop to boot! Wildan Mubarok 改进了 UEFI 兼容性,使得 MSI Modern 14 C7M 笔记本电脑能够成功引导!
ARM64 Multi-core Support
ARM64 多核支持
lbecher implemented multi-core support for AArch64/ARM64, and made some fixes. More testing need to done to determine the extent of the performance improvements. lbecher 实现了 AArch64/ARM64 的多核支持并进行了一些修复。目前还需要进行更多测试,以确定性能提升的程度。
Ring Buffer Communication For More Parallelism
用于提升并行性的环形缓冲区通信
After some months of work, Ibuki Omatsu and Anhad Singh implemented a ring buffer communication API (Redox Rings) equivalent to Linux io_uring system call API to improve performance on supported drivers, with guidance from 4lDO2 and help from Wildan Mubarok to fix bugs. This work improves the I/O performance for the NVMe driver, RedoxFS and RAMFS by a significant factor. In the benchmark below (bypassing the RedoxFS file system) it’s measured to improve I/O performance by 14-15x!! 经过几个月的工作,Ibuki Omatsu 和 Anhad Singh 在 4lDO2 的指导下,并在 Wildan Mubarok 的协助修复 Bug 后,实现了一个等同于 Linux io_uring 系统调用 API 的环形缓冲区通信 API(Redox Rings),旨在提升受支持驱动程序的性能。这项工作显著提升了 NVMe 驱动程序、RedoxFS 和 RAMFS 的 I/O 性能。在下方的基准测试中(绕过 RedoxFS 文件系统),测得 I/O 性能提升了 14-15 倍!!
Significant Native Compilation Performance Improvement and OOM Fixes
原生编译性能显著提升及 OOM 修复
After months of investigation by Wildan Mubarok on gradual GCC compilation performance degradation, he found and fixed a kernel memory leak that was causing the os-test test suite compilation time in GCC (on QEMU) to increase from 2 hours up to 10 hours, and causing out of memory (OOM) errors. Once fixed, the compilation time was reduced from 10 hours to around 30 minutes. 经过 Wildan Mubarok 对 GCC 编译性能逐渐下降问题长达数月的调查,他发现并修复了一个内核内存泄漏问题。该问题曾导致 GCC(在 QEMU 上)编译 os-test 测试套件的时间从 2 小时增加到 10 小时,并引发了内存溢出(OOM)错误。修复后,编译时间从 10 小时缩短至约 30 分钟。
NUMA Support
NUMA 支持
Aadarsh (aka EuclidDivisionLemma) implemented the initial support for NUMA-based memory management. As we currently use QEMU to test NUMA behaviour, any help to test on real hardware would be much appreciated. He also implemented local node allocation (locality of data) by default and a libredox API to modify NUMA allocation policies. Aadarsh(又名 EuclidDivisionLemma)实现了基于 NUMA 的内存管理的初步支持。由于我们目前使用 QEMU 测试 NUMA 行为,非常欢迎大家在真实硬件上进行测试。他还默认实现了本地节点分配(数据局部性),并提供了一个用于修改 NUMA 分配策略的 libredox API。
Process Priority Support
进程优先级支持
Conclusion of the Scheduler Improvements RSoC project: Akshit Gaur implemented support for process priorities and system priority tuning, which improved general performance. He also wrote the last EEVDF article giving the complete explanation after optimizations. Thanks a lot Akshit for the great work! 调度器改进 RSoC 项目总结:Akshit Gaur 实现了对进程优先级和系统优先级调整的支持,这提升了整体性能。他还撰写了最后一篇 EEVDF 文章,对优化后的情况进行了完整解释。非常感谢 Akshit 的出色工作!
QEMU on Redox!
在 Redox 上运行 QEMU!
Ribbon and Wildan Mubarok confirmed/tested that QEMU is working on Redox. Ribbon tested the server variant of Redox in QEMU terminal mode and Wildan tested the desktop variant including the GTK frontend. Redox does not yet have support for KVM-like virtual machine acceleration, so performance can be significantly slow. Ribbon 和 Wildan Mubarok 确认并测试了 QEMU 可以在 Redox 上运行。Ribbon 在 QEMU 终端模式下测试了 Redox 服务器版本,Wildan 则测试了包括 GTK 前端在内的桌面版本。由于 Redox 尚未支持类似 KVM 的虚拟机加速,因此性能可能会非常缓慢。
Dual-boot Installation from Linux!
从 Linux 进行双引导安装!
Wildan Mubarok improved the Linux support of Redox installer to allow a dual-boot installation of Redox. You can see this page to learn how to use it and the new GUI installer options. Wildan Mubarok 改进了 Redox 安装程序对 Linux 的支持,允许进行 Redox 的双引导安装。您可以查看此页面了解如何使用它以及新的 GUI 安装程序选项。
Kernel Binary Size Profiling
内核二进制文件大小分析
4lDO2 implemented support for kernel binary size profiling to measure where it can be reduced, also reducing memory usage. 4lDO2 实现了内核二进制文件大小分析支持,以评估哪些部分可以精简,从而降低内存占用。
Current File Access Design using Namespaces and Capability-based Security
使用命名空间和基于能力的安全性进行文件访问设计
Ibuki Omatsu created a diagram that summarizes how the openat function is used to resolve paths, using the namespace manager, as part of capability-based security. Ibuki Omatsu 绘制了一张图表,总结了作为基于能力安全性的一部分,openat 函数如何利用命名空间管理器来解析路径。
Better relibc Contribution Philosophy and Goals
更好的 relibc 贡献理念与目标
4lDO2 documented the relibc safety philosophy and goals (for our POSIX/C Standard Library) to reduce the probability of undefined behavior and logic bugs being introduced. This primarily focuses on restricting unsafe code to the “leaf functions” of relibc for better oversight/review and less unsafe code in unexpected places. It also includes using more Rust-like error handling internally, to give more information than POSIX errors. 4lDO2 记录了 relibc(我们的 POSIX/C 标准库)的安全理念和目标,旨在降低引入未定义行为和逻辑错误的概率。这主要侧重于将不安全代码限制在 relibc 的“叶函数”中,以便于监督/审查,并减少在意外位置出现的不安全代码。它还包括在内部使用更多类似 Rust 的错误处理方式,以提供比 POSIX 错误更多的信息。
Kernel Improvements (kernel)
内核改进 (kernel)
-
4lDO2 reduced IPC overhead by 5%.
-
4lDO2 reduced binary size by 2.2% by removing DTB code when not reached.
-
4lDO2 merged the redox_syscall library code into the kernel repository to ease changes.
-
Akshit Gaur did more improvements and fixes to EEVDF scheduler work stealing.
-
Aadarsh improved memory deallocation performance by reducing thread locking.
-
Aadarsh fixed a panic in NUMA code.
-
Wildan Mubarok moved all scheme path handling to user-space.
-
Wildan Mubarok fixed a potential bug where process killing could create zombie processes.
-
Wildan Mubarok fixed a panic in FUTEX_WAIT64 system call.
-
4lDO2 将 IPC 开销降低了 5%。
-
4lDO2 通过移除未触及的 DTB 代码,将二进制文件大小减少了 2.2%。
-
4lDO2 将 redox_syscall 库代码合并到内核仓库中,以简化变更。
-
Akshit Gaur 对 EEVDF 调度器的工作窃取(work stealing)进行了更多改进和修复。
-
Aadarsh 通过减少线程锁定提高了内存释放性能。
-
Aadarsh 修复了 NUMA 代码中的一个 panic。
-
Wildan Mubarok 将所有方案(scheme)路径处理移至用户空间。
-
Wildan Mubarok 修复了一个可能导致进程终止时产生僵尸进程的潜在 Bug。
-
Wildan Mubarok 修复了 FUTEX_WAIT64 系统调用中的一个 panic。
Driver Improvements (driver)
驱动程序改进 (driver)
-
MJ Pooladkhay implemented PCI multi-vector MSI-X support.
-
MJ Pooladkhay fixed VirtIO device completions being lost.
-
Wildan Mubarok fixed a pcid bug that Clippy detected.
-
bjorn3 did some code deduplication and cleanup.
-
MJ Pooladkhay 实现了 PCI 多向量 MSI-X 支持。
-
MJ Pooladkhay 修复了 VirtIO 设备完成信号丢失的问题。
-
Wildan Mubarok 修复了 Clippy 检测到的一个 pcid Bug。
-
bjorn3 进行了一些代码去重和清理工作。
System Improvements (sys)
系统改进 (sys)
-
Ibuki Omatsu implemented multi-threading support for schemes.
-
Wildan Mubarok ported rldd to be our ldd tool implementation.
-
Wildan Mubarok improved the scheme path parent gathering performance.
-
Wildan Mubarok fixed some off-by-one errors.
-
Ibuki Omatsu 实现了方案(schemes)的多线程支持。
-
Wildan Mubarok 将 rldd 移植为我们的 ldd 工具实现。
-
Wildan Mubarok 改进了方案路径父级获取的性能。
-
Wildan Mubarok 修复了一些差一错误(off-by-one errors)。