ARM 内存标签:如何提升 C/C++ 内存安全 (2018) [pdf]
ARM Memory Tagging: how it improves C/C++ memory safety (2018) [pdf]

原始链接: https://llvm.org/devmtg/2018-10/slides/Serebryany-Stepanov-Tsyrklevich-Memory-Tagging-Slides-LLVM-2018.pdf

``` %PDF-1.4 % âãÏÓ 4 0 obj > /PageLabels > ] >> /Outlines 2 0 R /Pages 1 0 R >> endobj 5 0 obj ```

## ARM 内存标记与苹果的增强:摘要 这次黑客新闻的讨论集中在 ARM 的内存标记扩展 (MTE) 以及苹果的实现,名为增强型内存标记扩展 (EMTE),该扩展存在于他们的 M5 芯片和较新的 iPhone 中。MTE 旨在通过在运行时检测内存错误来提高 C/C++ 代码的内存安全性。 苹果的 EMTE 在原始 MTE 的基础上进行了构建,解决了人们认为的弱点,并增加了规范标签检查以及在发生错误时报告所有非地址位等功能。虽然有些人认为 EMTE 主要帮助苹果维护与现有代码库 (XNU) 的兼容性,但它代表着硬件辅助内存安全方面迈出的重要一步。 对话中提到,SPARC 处理器自 2015 年以来就已具备类似技术 (ADI)。英特尔和 AMD 也在致力于开发 x86 对应技术 (ChkTag)。更广泛的观点是,虽然像 Rust 这样的语言提供编译时内存安全,但 MTE 为现有的 C/C++ 应用程序提供了一个有价值的纵深防御层,即使它需要运行时开销,也是一项值得的创新。关于硬件解决方案是否能弥补软件缺陷存在争论,但许多人同意提高内存安全性是一个积极的结果。
相关文章

原文
%PDF-1.4 % âãÏÓ 4 0 obj > /PageLabels > ] >> /Outlines 2 0 R /Pages 1 0 R >> endobj 5 0 obj
联系我们 contact @ memedata.com