arrow
返回

Debugging WebAssembly? Put Some Whamm on It!

delete2025-10-01
delete0
PRE
AI
E
Elizabeth Gilbert *
M
Matthew Schneider
Z
Zixi An
S
Suhas Thalanki
W
Wavid Bowman
B
Bai, Alexander Y.
B
Ben L. Titzer
H
Heather Miller
DOI:10.1145/3763124delete
delete原文链接
delete原文求助
delete分享
delete收藏
摘要

摘要

En 中文
调试和监控程序是软件开发和部署的重要组成部分。动态分析通过源代码或IR注入、机器码或字节码重写、虚拟机API或直接硬件支持来监控应用程序。尽管这些技术在其各自领域内是可行的,但跨技术的通用工具很少见,导致技能碎片化、重复工作和功能支持不一致。我们通过Whamm解决了WebAssembly生态系统中的这一问题,Whamm是一个用于Wasm的插桩框架,采用引擎级探测并具有字节码重写回退机制以促进可移植性。Whamm解决了三个问题:1)工具碎片化,2)通用框架的插桩开销过高,3)定制底层高性能机制的繁琐性。Whamm提供完全可编程的插桩功能,包括声明式匹配规则、静态和动态断言、自动状态报告和用户库支持,并通过编译器和引擎优化实现高性能。Whamm引擎API允许将插桩作为Wasm代码提供给Wasm引擎,重用现有引擎优化并解锁新优化,特别是内建函数化(intrinsification),以最小化开销。我们工作的关键见解是,在匹配规则中显式请求程序状态,而非使用反射,使引擎能够高效地捆绑参数,甚至内联编译后的探测逻辑。Whamm简化了工具开发工作,其字节码重写目标可以在任何地方运行插桩程序,降低碎片化并推动引擎支持的前沿发展。我们通过非平凡监控器的案例研究评估了Whamm,表明其具有表达力、强大性和高效性。
Keyword:
dynamic analysis
instrumentation
debugging
software tooling
We-bAssembly
virtual machines
optimization
intrinsification
dynamic instrumentation
bytecode rewriting
static instrumentation

期刊

P
Proceedings of the ACM on Programming Languages-PACMPL
IF:
2.8
论文数:
308
被引数:
4.7K

机构

U
University of Florida
学者数:
4.0W
论文数: 3.1W
被引数: 6.6W
State University System of Florida 封面图
State University System of Florida
学者数:
12.7W
论文数: 10.9W
被引数: 130
C
Carnegie Mellon University
学者数:
1.4W
论文数: 1.4W
被引数: 2.7W
学者 查看更多机构
引用论文

引用论文

err分享
err收藏
err分享
err收藏
One VM to rule them all
err2013-10-29
err0
PREAI
errThomas Würthinger; Christian Wimmer; Andreas Wöß; Lukas Stadler; Gilles Duboscq; Christian Humer; Gregor Richards; Doug Simon; Mario Wolczko
err分享
err收藏
Debugging at Full Speed
err2014-06-09
err0
PREAI
errSeaton,Chris; Van De Vanter,Michael L.; Haupt,Michael
err分享
err收藏
From Hack to Elaborate Technique-A Survey on Binary Rewriting
err2019-06-18
err47
PREAI
errWenzl, Matthias; Merzdovnik, Georg; Ullrich, Johanna; Weippl, Edgar
err分享
err收藏
Evaluating the accuracy of Java profilers
err2010-06-05
err0
PREAI
errTodd Mytkowicz; Amer Diwan; Matthias Hauswirth; Peter F. Sweeney
err分享
err收藏
学者 查看更多内容