首页> 外文期刊>Software >Weakly sensitive analysis for JavaScript object-manipulating programs
【24h】

Weakly sensitive analysis for JavaScript object-manipulating programs

机译:对JavaScript对象处理程序的敏感度较低的分析

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

摘要

While JavaScript programs have become pervasive in web applications, they remain hard to reason about. In this context, most static analyses for JavaScript programs require precise call graph information, since the presence of large numbers of spurious callees significantly deteriorates precision. One of the most challenging JavaScript features that complicate the inference of precise static call graph information is read/write accesses to object fields, the names of which are computed at runtime. JavaScript framework libraries often exploit this facility to build objects from other objects, as a way to simulate sophisticated high-level programming constructions. Such code patterns are difficult to analyze precisely, due to weak updates and limitations of unrolling techniques. In this paper, we observe that precise field origination relations can be inferred by locally reasoning about object copies, both regarding to the object and to the program structure, and we propose an abstraction that allows to separately reason about field read/write access patterns working on different fields and to carefully handle the sets of JavaScript object fields. We formalize and implement an analysis based on this technique. We evaluate the performance and precision of the analysis on the computation of call graph information for examples from jQuery tutorials.
机译:尽管JavaScript程序已在Web应用程序中变得很普遍,但仍然难以推理。在这种情况下,大多数JavaScript程序的静态分析都需要精确的调用图信息,因为大量伪造被调用者的存在会大大降低精度。使精确的静态调用图信息推理复杂化的最具挑战性的JavaScript功能之一是对对象字段的读/写访问,对象字段的名称在运行时计算。 JavaScript框架库通常利用此功能从其他对象构建对象,以此模拟复杂的高级编程结构。由于更新技术的薄弱和展开技术的局限性,难以精确分析此类代码模式。在本文中,我们观察到,可以通过对对象副本(涉及对象和程序结构)进行局部推理来推断出精确的字段起源关系,并且我们提出了一种抽象方法,该抽象方法允许单独推理字段读写访问模式的工作原理并仔细处理JavaScript对象字段集。我们基于这种技术来形式化并实施分析。我们以jQuery教程为例,评估了对调用图信息的计算分析的性能和准确性。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号