你的 C 代码无需全面 rewrite 即可在 capability 硬件上运行
CHERI 的 hybrid ABI 让你可以逐步将 C 代码移植到 capability 硬件上。本文介绍如何编译、哪些代码会出问题,以及如何在不 rewrite 整个 codebase 的情况下修复它们。
你有一个用 C 编写的codebase,它大到无法全部用 Rust rewrite,又关键到不能任由缓冲区溢出威胁。CHERI capability 硬件承诺在 CPU 层面捕获内存安全违规,但网上一直有人说 CHERI 指针是 128 位的,而你的代码默认指针是 64 位。 好消息是,CHERI…