Efficient Dynamic Checking of Heap Invariants using the Garbage Collector
Efficient Dynamic Checking of Heap Invariants using the Garbage Collector
批准号:
0916810
负责人:
Samuel Guyer
金额:
$0.0万
依托单位:
依托单位国家:
美国
项目类别:
Standard Grant
财政年份:
2009
资助国家:
美国
项目状态:
已结题
起止时间:
2009-09-01 至 2011-08-31
中文摘要
现代软件越来越多地使用托管编程语言(如Java和C#)进行开发,因为它们消除了一大类与内存相关的低级错误,这些错误困扰着C和C++等语言,并导致了无数的失败和安全漏洞。不幸的是,软件仍然遭受着一系列令人不安的高级语义错误的困扰,这可能会导致程序行为不当,而不一定会引发公开的故障。现有的检测这些错误的技术存在不精确(误报)、大型程序可伸缩性差或运行时开销过高等问题。本项目将探索一种新的检测编程错误的方法,该方法具有精确度、信息量、可伸缩性和足够高的效率,可以在部署的软件中使用。该方法利用静态分析中的技术,允许程序员表达预期的程序属性,但通过在运行时检查属性来克服先前的限制。其关键思想是在垃圾收集器上携带错误检查,它可以用非常低的开销检查和阐明复杂的程序属性,因为它定期访问堆中的所有对象。这项研究的结果将是一种急需的技术,用于检测和诊断已部署软件中的错误--特别是大型、复杂和高度动态的程序,如服务器应用程序。
英文摘要
Modern software is increasingly developed using managed programming languages, such as Java and C#, because they eliminate a large class of low-level memory-related errors that have plagued languages such as C and C++ and caused countless failures and security vulnerabilities. Unfortunately, software still suffers from a troubling array of higher-level semantic errors, which can cause programs to misbehave without necessarily triggering an overt failure. Prior techniques for detecting these errors suffer from some combination of imprecision (false positives), poor scalability on large programs, or extremely high run-time overheads.This project will explore a new approach for detecting programming errors that is precise, informative, scalable, and efficient enough to use in deployed software. The approach leverages techniques from static analysis that allow programmers to express expected program properties, but overcomes prior limitations by checking the properties at run-time. The key idea is to piggyback error checking on the garbage collector, which can check and elucidate complex program properties with very low overhead because it periodically visits all objects in the heap. The result of this research will be a much-needed technique for detecting and diagnosing bugs in deployed software -- especially large, complex, and highly dynamic programs, such as server applications.
期刊论文(0)
专著(0)
科研奖励(0)
会议论文
SHF:Small:Cooperative Garbage Collection for Big Data and Server Applications
-
批准号:1717373
-
项目类别:Standard Grant
-
资助金额:$44.7万
-
财政年份:2017
-
负责人:Samuel Guyer
-
依托单位:
CAREER: Cooperative Virtual Machines: Mechanisms and Policies for Application-Aware Runtime Services
-
批准号:1053862
-
项目类别:Continuing Grant
-
资助金额:$44.42万
-
财政年份:2011
-
负责人:Samuel Guyer
-
依托单位:
SHF: Small: Dynamic Detection of Heap-Based Bugs
-
批准号:1018038
-
项目类别:Standard Grant
-
资助金额:$48.49万
-
财政年份:2010
-
负责人:Samuel Guyer
-
依托单位:
国内基金
海外基金
Dynamic Credit Rating with Feedback Effects
-
批准号:--
-
项目类别:外国学者研究基金项目
-
资助金额:--
-
批准年份:2024
-
负责人:Christian Martin Hilpert
-
依托单位: