首页> 外文期刊>Computer architecture news >Beyond the PDP-11: Architectural support for a memory-safe C abstract machine
【24h】

Beyond the PDP-11: Architectural support for a memory-safe C abstract machine

机译:超越PDP-11:对内存安全的C抽象机的架构支持

获取原文
获取原文并翻译 | 示例

摘要

We propose a new memory-safe interpretation of the C abstract machine that provides stronger protection to benefit security and debugging. Despite ambiguities in the specification intended to provide implementation flexibility, contemporary implementations of C have converged on a memory model similar to the PDP-11, the original target for C. This model lacks support for memory safety despite well-documented impacts on security and reliability. Attempts to change this model are often hampered by assumptions embedded in a large body of existing C code, dating back to the memory model exposed by the original C compiler for the PDP-11. Our experience with attempting to implement a memory-safe variant of C on the CHERI experimental microprocessor led us to identify a number of problematic idioms. We describe these as well as their interaction with existing memory safety schemes and the assumptions that they make beyond the requirements of the C specification. Finally, we refine the CHERI ISA and abstract model for C, by combining elements of the CHERI capability model and fat pointers, and present a softcore CPU that implements a C abstract machine that can run legacy C code with strong memory protection guarantees.
机译:我们提出了一种对C抽象机的新的内存安全解释,该解释提供了更强大的保护,从而有利于安全性和调试。尽管规范中旨在提供实现灵活性的模棱两可,但C的现代实现已收敛于类似于C的最初目标PDP-11的内存模型。尽管有充分记录的对安全性和可靠性的影响,但该模型仍缺乏对内存安全性的支持。 。更改此模型的尝试通常会因嵌入大量现有C代码中的假设而受阻,这可以追溯到PDP-11原始C编译器公开的内存模型。我们尝试在CHERI实验微处理器上实现C的内存安全变体的经验使我们发现了许多有问题的习惯用法。我们描述了它们以及它们与现有内存安全方案的相互作用以及它们超出C规范要求的假设。最后,通过结合CHERI能力模型的元素和胖指针,我们完善了C的CHERI ISA和抽象模型,并提出了一个软核CPU,该CPU实现了可以运行具有强大内存保护保证的传统C代码的C抽象机。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号