Scalable Static Techniques for Exhaustive and Incremental Analyses of C Systems
Scalable Static Techniques for Exhaustive and Incremental Analyses of C Systems
批准号:
9501761
负责人:
Barbara Ryder
金额:
$35.69万
依托单位国家:
美国
项目类别:
Continuing Grant
财政年份:
1995
资助国家:
美国
项目状态:
已结题
起止时间:
1995-07-15 至 1999-12-31
中文摘要
在软件系统中,诸如编译器、测试器和调试器之类的工具需要静态语义信息,以确保它们的正确性并提高性能。 增量更新算法只计算受程序变化影响的数据流信息,避免了总的重新计算,有效地为大型不断发展的软件系统提供一致的文档。 在此之前,已经开发了用于类似Fortran的语言的增量技术和用于C程序的详尽分析。当C系统的这些分析产生解决方案时,它们是廉价和高质量的;然而,通常分析耗尽了可用的资源而没有产生完整的解决方案,特别是对于大型程序(超过5,000 - 10,000行代码)。本研究的目的是扩大穷举技术的适用性,以处理更广泛的一类程序,并为C系统开发增量技术。这项工作由一个学术和工业团队进行,重点是开发新的分析技术及其在研究工业应用中的测试。 目标是:(i)缩放现有原型以处理具有10,000到100,000行代码的程序,(ii)开发用于分析模块而不分析整个程序的技术(即,分析的单独编译模式),(iii)开发用于具有通用指针的语言的有趣的过程间静态分析的增量技术,以及(iv)增强用于现代编程语言的语义分析的理论基础设施(即,C、C++和Fortran 90)。 这项研究探索了通过设计新的、对流量不敏感的方法来改变别名信息精度的技术,以增强我们目前对流量敏感的方法。 对程序变量进行分区允许对不同的变量集具有不同精度的混叠解决方案。 实验进行了不同的k值为这些不同的集合,使用k-限制来处理递归结构中的解引用。本文提出了一种混合增量式分析算法,并以此为基础对C程序进行增量式副作用分析。
英文摘要
In software systems, tools such as compilers, testers, and debuggers require static semantic information, both to insure their correctness and to enhance performance. Incremental update algorithms, which only calculate data flow information affected by the program changes, avoiding total recalculation, efficiently provide consistent documentation for a large evolving software system. Previously, incremental techniques for Fortran-like languages and exhaustive analyses for C programs have been developed. When these analyses of C systems produce solutions, they are inexpensive and high quality; however, often the analyses exhaust available resources without yielding a complete solution, especially for larger programs (over 5,000-10,000 lines of code). This research aims at expanding the applicability of exhaustive techniques to handle a wider class of programs and developing incremental techniques for C systems. The work is performed by an academic and industrial team, focusing on the development of new analysis techniques and their testing on research industrial applications. Goals are to: (i) scale the existing prototype to handle programs with 10,000 to 100,000 lines of code, (ii) develop techniques for analyzing modules without analyzing the entire program (i.e., a separate compilation mode of analysis),(iii) develop incremental techniques for interesting interprocedural static analyses for languages with general purpose pointers, and (iv) enhance the theoretical infrastructure for semantic analysis of modern programming languages (i.e., C, C++, and Fortran 90). The research explores techniques for varying the precision of alias information by designing new, flow-insensitive methods, to augment our current flow-sensitive ones. Partitioning the program variables allows for an aliasing solution with varying degrees of precision for different sets of variables. Experiments are conducted varying the value of k for these different sets, using k-limiting to handle dereferencing in recursive structures. A hybrid incremental analysis algorithm is used as a basis for incrementalizing side effect analysis of C programs.
期刊论文(0)
专著(0)
科研奖励(0)
会议论文
NSF Student Travel Grant for 2017 Programming Languages Mentoring Workshop (PLMW) at ACM SIGPLAN SPLASH Conference
-
批准号:1747889
-
项目类别:Standard Grant
-
资助金额:$1.5万
-
财政年份:2017
-
负责人:Barbara Ryder
-
依托单位:
CPA-SEL: Blended Static/Dynamic Analyses for Performance Understanding and Improved Security of Framework-intensive Applications
-
批准号:0964870
-
项目类别:Standard Grant
-
资助金额:$18.47万
-
财政年份:2009
-
负责人:Barbara Ryder
-
依托单位:
CPA-SEL: Blended Static/Dynamic Analyses for Performance Understanding and Improved Security of Framework-intensive Applications
-
批准号:0811518
-
项目类别:Standard Grant
-
资助金额:$0.0万
-
财政年份:2008
-
负责人:Barbara Ryder
-
依托单位:
Student Travel Support to the International Conference on Software Engineering (ICSE) 2007 Doctoral Symposium
-
批准号:0650366
-
项目类别:Standard Grant
-
资助金额:$1.07万
-
财政年份:2007
-
负责人:Barbara Ryder
-
依托单位:
Collaborative Rsch: Northeast Workshop in Integrative Computing, Education and Research (ICER)
-
批准号:0548575
-
项目类别:Standard Grant
-
资助金额:$0.52万
-
财政年份:2005
-
负责人:Barbara Ryder
-
依托单位:
ITWF: Collaborative Research: Increasing the Representation of Undergraduate Women and Minorities in Computer Science
-
批准号:0420433
-
项目类别:Standard Grant
-
资助金额:$5.98万
-
财政年份:2004
-
负责人:Barbara Ryder
-
依托单位:
Special Projects: Travel Grants for Faculty at Minority/Female Institutions to Attend FCRC'03
-
批准号:0243337
-
项目类别:Standard Grant
-
资助金额:$6.91万
-
财政年份:2003
-
负责人:Barbara Ryder
-
依托单位:
Change Impact Analysis of Object-oriented Software
-
批准号:0204410
-
项目类别:Continuing Grant
-
资助金额:$30.0万
-
财政年份:2002
-
负责人:Barbara Ryder
-
依托单位:
Special Project: Travel Grant for Faculty at Minority/Female Institutions to Attend PLDI '99
-
批准号:9902428
-
项目类别:Standard Grant
-
资助金额:$2.35万
-
财政年份:1999
-
负责人:Barbara Ryder
-
依托单位:
Component Data-Flow Analysis for Large-Software Systems
-
批准号:9900988
-
项目类别:Standard Grant
-
资助金额:$30.1万
-
财政年份:1999
-
负责人:Barbara Ryder
-
依托单位:
Module-Level Compile-Time Analysis for Industrial-Sized Software
-
批准号:9804065
-
项目类别:Standard Grant
-
资助金额:$5.0万
-
财政年份:1998
-
负责人:Barbara Ryder
-
依托单位:
Effective Compilation in the Presence of Exceptions
-
批准号:9808607
-
项目类别:Standard Grant
-
资助金额:$23.0万
-
财政年份:1998
-
负责人:Barbara Ryder
-
依托单位:
Postdoc: Data-Flow Testing for Difficult-To-Find Bugs
-
批准号:9704703
-
项目类别:Standard Grant
-
资助金额:$3.32万
-
财政年份:1997
-
负责人:Barbara Ryder
-
依托单位:
Compile-Time Analysis Tools for Parallel Software Development Environments
-
批准号:9213518
-
项目类别:Standard Grant
-
资助金额:$10.81万
-
财政年份:1993
-
负责人:Barbara Ryder
-
依托单位:
Practical Compile Time Analyses for Evolving C Systems
-
批准号:9208632
-
项目类别:Continuing Grant
-
资助金额:$31.26万
-
财政年份:1992
-
负责人:Barbara Ryder
-
依托单位:
Practical Compile-Time Analysis Algorithms: (FAW)
-
批准号:9023628
-
项目类别:Continuing Grant
-
资助金额:$25.0万
-
财政年份:1991
-
负责人:Barbara Ryder
-
依托单位:
Applying Incremental Data Flow Analysis to Large Software Systems
-
批准号:8920078
-
项目类别:Continuing Grant
-
资助金额:$21.76万
-
财政年份:1990
-
负责人:Barbara Ryder
-
依托单位:
Incremental Analysis Algorithms for Software Systems
-
批准号:8513730
-
项目类别:Standard Grant
-
资助金额:$8.63万
-
财政年份:1986
-
负责人:Barbara Ryder
-
依托单位:
海外基金