V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
wkla
V2EX  ›  程序员

在内存极其受限的情况下,怎么做 address sanitizer 之类的工作?

  •  
  •   wkla · 5 天前 · 640 次点击

    编译器提供的 -fsanitizer 一般都会占用更多的内存。但是有时候目标平台的内存十分受限,这种情况下怎么做类似的内存检查的工作?

    4 条回复    2024-12-14 18:46:34 +08:00
    passive
        1
    passive  
       4 天前 via Android
    asan 又不用非在目标平台做不可。
    本地开发机上 make test 不行吗
    yanaraika
        2
    yanaraika  
       4 天前   ❤️ 2
    用轻量级的检查替代,开 -D_GLIBCXX_ASSERTIONS -DFORTIFY_SOURCE=3 + 用带 secure mode 的 malloc 实现 例如 https://github.com/microsoft/mimalloc 。默认 glibc 的 malloc 的开 MALLOC_CHECK_
    wkla
        3
    wkla  
    OP
       4 天前
    @passive 目标机 arm ,程序需要与硬件以及其他基础建设交互。本地 x86 。这种情况怎么在本地做呢?
    nullyouraise
        4
    nullyouraise  
       4 天前
    如果是 ARM64 的话,可以试试 ARM MTE https://docs.kernel.org/arch/arm64/memory-tagging-extension.html
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3343 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 20ms · UTC 11:24 · PVG 19:24 · LAX 03:24 · JFK 06:24
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.