2026年8月5日 Meta用从不运行程序的静态分析器在投产代码中发现了10万个缺陷 Meta的Infer利用抽象解释和双向推理,通过推理代码结构而非执行来发现空指针解引用、内存泄漏和竞态条件。以下是它的工作原理以及如何在您自己的代码库中使用它。 abstract-interpretationstatic-analysismetainfer
2026年8月4日 静态分析无法证明你的飞机不会坠毁。但它能证明一些更有用的东西。 抽象解释会对每一种可能的程序状态进行过度近似。如果除零错误在抽象中不可达,那它在真实代码中就不可达。以下是它的工作原理以及它的局限性。 abstract-interpretationstatic-analysissafety-criticalaviation
2026年8月3日 如何证明你的代码没有运行时错误(以及为什么你很可能会放弃尝试) 抽象解释让你在执行之前就证明运行时错误不可能发生。以下是它的实际工作原理、难点所在,以及它在你的工具链中的定位。 abstract-interpretationstatic-analysisruntime-errorsverification
2026年8月2日 你的 C 代码无需全面 rewrite 即可在 capability 硬件上运行 CHERI 的 hybrid ABI 让你可以逐步将 C 代码移植到 capability 硬件上。本文介绍如何编译、哪些代码会出问题,以及如何在不 rewrite 整个 codebase 的情况下修复它们。 hardware-assisted-safetychericporting
2026年8月1日 权能硬件没有失败。它只是提前 40 年到来。 自 1970 年代以来,硬件层面的内存安全性就已可行。以下是权能架构为何一直败给扁平内存模型,以及为什么 CHERI 终于正在改变这一等式。 hardware-assisted-safetycapability-hardwarecherisoftware-history
2026年7月31日 你的 C 依赖库可能让整个进程崩溃。WebAssembly 可以阻止它。 用容器来隔离单个 C 库未免小题大做。将其编译为 WebAssembly,在 WASI 沙箱中运行,即可实现内存安全、基于权能的文件系统访问和崩溃隔离,无需 Docker。 hardware-assisted-safetysandboxingcwebassembly
2026年7月30日 你的手机已经拥有能检测内存损坏的硬件 ARM Memory Tagging Extension 和 GWP-ASan 让现代移动设备在生产环境中检测内存安全成为可能。本文介绍它们的工作原理和权衡取舍。 hardware-assisted-safetymemory-corruptionmobileasan
2026年7月29日 缓冲区溢出之所以反复发生,是因为我们在软件层面修复它 CHERI是一种硬件扩展,它将每个指针转变为带有边界的权能。本文介绍它如何在CPU层面阻止缓冲区溢出、代价几何,以及如何在真实硬件上试用。 hardware-assisted-safetybuffer-overflowmemory-safetycheri
2026年7月28日 LLM 无法证明你的代码正确,但它们可以撰写实现证明的样板代码 净室验证需要生成并消解证明义务。以下介绍 LLM 如何自动化注解和验证条件生成,让你可以专注于真正困难的证明。 cleanroom-correctnessllmformal-proofsautomation
2026年7月27日 Cleanroom 实现每千行 0.1 个缺陷。你不需要全盘照搬也能达到这个目标。 Cleanroom software engineering 将 defect rate 降低 100 倍,但全面采用需要独立的 test team 和 formal proof。这里介绍一种 pragmatic subset,无需 overhead 即可捕获大部分收益。 cleanroom-correctnessprocessefficiencypragmatism