一般来说我会手动编写词法分析器/语法分析器或依赖于诸如 Antlr 等工具来编写解析器。然而,最近一个朋友向我介绍了解析器组合器 ( parser combinators ),我觉得非常有趣和有用。我试了一个很棒的 Rust 库叫做nom,在这篇文章中,我将尝试通过构建一个小型的 JSON 解析器来解释 解析器组合器 的核心思想以及 nom 库的基础用法。
ReadMore: https://andreabergia.com/blog/2024/01/playing-with-nom-and-parser-combinators/
PhipsBoot是一个实验性的用 Rust 和汇编语言编写的可重定位 x86_64 引导程序,它将一个内核加载到64位模式中,并且抽象处理了许多与 x86_64 引导相关的复杂问题。
PhipsBoot 的主要优势在于通过 Multiboot2 在传统 BIOS 引导系统中由 GRUB 加载时,即使内核二进制文件是静态ELF,它也可以在物理内存中重新定位。然而,PhipsBoot 也支持 Multiboot1 和 XEN PVH 条目。
ReadMore: https://github.com/phip1611/phipsboot
ReadMore: https://github.com/ckcr4lyf/stdinman
From 日报小组 Koalr