SHF: Small: Collaborative Research: Static Analysis Infrastructure for Variability-Aware Bug Detection and Translation of Highly-Configurable Software Systems

SHF:小型:协作研究:用于高度可配置软件系统的可变性缺陷检测和转换的静态分析基础设施

基本信息

  • 批准号:
    1816951
  • 负责人:
  • 金额:
    $ 24.13万
  • 依托单位:
  • 依托单位国家:
    美国
  • 项目类别:
    Standard Grant
  • 财政年份:
    2018
  • 资助国家:
    美国
  • 起止时间:
    2018-10-01 至 2022-09-30
  • 项目状态:
    已结题

项目摘要

Highly-configurable systems, e.g., the Linux kernel, form our most critical infrastructure, underpinning everything from high-performance computing clusters to IoT devices. Keeping these systems secure and reliable with automated tools is essential. However, tool support is lacking for such systems because of the complexity and scale of their configurability. This leaves some of the most critical software with some of the least tool support. The problem is that most software tools are not variability-aware; that is, they do not account for the many configurations of the software. Serious defects, including null pointer errors and buffer overflows, can and do appear in specific configurations, making them hard to find without accounting for variability. The goal of this project is to advance the state of the art for systems development and debugging, resulting in more secure and less error-prone systems, benefiting the millions who rely on highly-configurable software infrastructure.To solve these challenges, this project aims to develop the infrastructure, analysis techniques, and language support for debugging and maintaining configurable software systems written in C-family languages, currently lacking for software developers. The first part of the project is to develop a front-end infrastructure that captures these sources of variability in a new intermediate representation. Such reusable infrastructure is crucial to the development of state-of-the-art analyses. The second part seeks to create variability-aware versions of static analyses and propose new inter-procedural analyses that enable tradeoffs between scalability and precision. While static analysis has proven useful for detecting bugs, accounting for configurations increases the complexity of analysis. Systematic extensions to bug detection algorithms based on these new analyses can target previously obscured bugs. Since the C preprocessor has long been recognized as a source of problems, the third part of this project is to develop new language extensions to C, supplanting preprocessor usage and enabling compiler support for variability specifications. Translators to the new language based on our front-end analysis infrastructure will enable existing software to benefit from the new language. The PIs on this project will mentor graduate students and are committed to promoting female and under-represented minority participation. Artifacts developed in this project will be used in courses to introduce students to state-of-the-art software tool development.This award reflects NSF's statutory mission and has been deemed worthy of support through evaluation using the Foundation's intellectual merit and broader impacts review criteria.
高度可配置的系统,例如Linux内核构成了我们最关键的基础架构,从高性能计算簇到IoT设备的所有基础。 使用自动化工具确保这些系统安全可靠。 但是,由于其可配置性的复杂性和规模,因此缺乏此类系统的工具支持。 这使一些最关键的软件具有一些工具支持最少的支持。 问题在于,大多数软件工具不是可变性的;也就是说,它们没有说明软件的许多配置。 严重的缺陷,包括无效的指针错误和缓冲区溢出,可以并且确实以特定的配置出现,从而使它们难以在不考虑可变性的情况下找到。 The goal of this project is to advance the state of the art for systems development and debugging, resulting in more secure and less error-prone systems, benefiting the millions who rely on highly-configurable software infrastructure.To solve these challenges, this project aims to develop the infrastructure, analysis techniques, and language support for debugging and maintaining configurable software systems written in C-family languages, currently lacking for software developers. 该项目的第一部分是开发一个前端基础架构,该基础架构在新的中间表示中捕获这些可变性来源。这种可重复使用的基础设施对于最新分析的发展至关重要。 第二部分旨在创建静态分析的可变性版本,并提出新的过程间分析,以在可扩展性和精度之间进行权衡。 虽然静态分析已被证明可用于检测错误,但对配置的考虑会增加分析的复杂性。 基于这些新分析的错误检测算法的系统扩展可以针对以前被遮盖的错误。 由于长期以来,C Preadosesor一直被认为是问题的来源,因此该项目的第三部分是为C开发新的语言扩展,取代预处理器使用情况并为可变性规格提供编译器支持。 基于我们的前端分析基础架构将转换为新语言,将使现有软件能够从新语言中受益。 该项目的PI将指导研究生,并致力于促进女性和代表性不足的少数参与。 该项目中开发的文物将在课程中使用,以向学生介绍最先进的软件工具开发。该奖项反映了NSF的法定任务,并且使用基金会的知识分子优点和更广泛的影响审查标准,被认为值得通过评估来提供支持。

项目成果

期刊论文数量(5)
专著数量(0)
科研奖励数量(0)
会议论文数量(0)
专利数量(0)
SugarC: scalable desugaring of real-world preprocessor usage into pure C
SugarC:将现实世界的预处理器使用可扩展地脱糖为纯 C
Conditional compilation is dead, long live conditional compilation!
条件编译已死,条件编译万岁!
An empirical study of real-world variability bugs detected by variability-oblivious tools
Static data-flow analysis for software product lines in C: Revoking the preprocessor’s special role
C 语言中软件产品线的静态数据流分析:撤销预处理器的特殊角色
  • DOI:
    10.1007/s10515-022-00333-1
  • 发表时间:
    2022
  • 期刊:
  • 影响因子:
    3.4
  • 作者:
    Schubert, Philipp Dominik;Gazzillo, Paul;Patterson, Zach;Braha, Julian;Schiebel, Fabian;Hermann, Ben;Wei, Shiyi;Bodden, Eric
  • 通讯作者:
    Bodden, Eric
Toward detection and characterization of variability bugs in configurable C software: an empirical study
可配置 C 软件中可变性错误的检测和表征:一项实证研究
{{ item.title }}
{{ item.translation_title }}
  • DOI:
    {{ item.doi }}
  • 发表时间:
    {{ item.publish_year }}
  • 期刊:
  • 影响因子:
    {{ item.factor }}
  • 作者:
    {{ item.authors }}
  • 通讯作者:
    {{ item.author }}

数据更新时间:{{ journalArticles.updateTime }}

{{ item.title }}
  • 作者:
    {{ item.author }}

数据更新时间:{{ monograph.updateTime }}

{{ item.title }}
  • 作者:
    {{ item.author }}

数据更新时间:{{ sciAawards.updateTime }}

{{ item.title }}
  • 作者:
    {{ item.author }}

数据更新时间:{{ conferencePapers.updateTime }}

{{ item.title }}
  • 作者:
    {{ item.author }}

数据更新时间:{{ patent.updateTime }}

Shiyi Wei其他文献

Practical blended taint analysis for JavaScript
JavaScript 实用混合污点分析
Adaptive Context-sensitive Analysis for JavaScript
JavaScript 的自适应上下文相关分析
RTL-Spec: RTL Spectrum Analysis for Security Bug Localization
RTL-Spec:用于安全漏洞定位的 RTL 频谱分析
A Practical Blended Analysis for Dynamic Features in JavaScript
JavaScript 中动态特征的实用混合分析
  • DOI:
  • 发表时间:
    2012
  • 期刊:
  • 影响因子:
    0
  • 作者:
    Shiyi Wei;B. Ryder
  • 通讯作者:
    B. Ryder
Evaluating Design Tradeoffs in Numeric Static Analysis for Java
评估 Java 数值静态分析中的设计权衡
  • DOI:
    10.1007/978-3-319-89884-1_23
  • 发表时间:
    2018
  • 期刊:
  • 影响因子:
    0
  • 作者:
    Shiyi Wei;Piotr (Peter) Mardziel;Andrew Ruef;J. Foster;M. Hicks
  • 通讯作者:
    M. Hicks

Shiyi Wei的其他文献

{{ item.title }}
{{ item.translation_title }}
  • DOI:
    {{ item.doi }}
  • 发表时间:
    {{ item.publish_year }}
  • 期刊:
  • 影响因子:
    {{ item.factor }}
  • 作者:
    {{ item.authors }}
  • 通讯作者:
    {{ item.author }}

{{ truncateString('Shiyi Wei', 18)}}的其他基金

CAREER: Improving the Practicality of Configurable Static Analysis Tools through Analysis, Testing, Refinement and Adaptation
职业:通过分析、测试、细化和适应提高可配置静态分析工具的实用性
  • 批准号:
    2047682
  • 财政年份:
    2021
  • 资助金额:
    $ 24.13万
  • 项目类别:
    Continuing Grant
Collaborative Research: SHF: Small: An Automated Full-Lifecycle Approach for Improving the Development and Use of Static Analysis
合作研究:SHF:小型:改进静态分析开发和使用的自动化全生命周期方法
  • 批准号:
    2008905
  • 财政年份:
    2020
  • 资助金额:
    $ 24.13万
  • 项目类别:
    Standard Grant
SHF: Small: Automated Fine-Grained Requirements Traceability
SHF:小型:自动化细粒度需求可追溯性
  • 批准号:
    1910976
  • 财政年份:
    2019
  • 资助金额:
    $ 24.13万
  • 项目类别:
    Standard Grant

相似国自然基金

基于超宽频技术的小微型无人系统集群协作关键技术研究与应用
  • 批准号:
  • 批准年份:
    2020
  • 资助金额:
    57 万元
  • 项目类别:
    面上项目
异构云小蜂窝网络中基于协作预编码的干扰协调技术研究
  • 批准号:
    61661005
  • 批准年份:
    2016
  • 资助金额:
    30.0 万元
  • 项目类别:
    地区科学基金项目
密集小基站系统中的新型接入理论与技术研究
  • 批准号:
    61301143
  • 批准年份:
    2013
  • 资助金额:
    24.0 万元
  • 项目类别:
    青年科学基金项目
ScFVCD3-9R负载Bcl-6靶向小干扰RNA治疗EAMG的试验研究
  • 批准号:
    81072465
  • 批准年份:
    2010
  • 资助金额:
    31.0 万元
  • 项目类别:
    面上项目
基于小世界网络的传感器网络研究
  • 批准号:
    60472059
  • 批准年份:
    2004
  • 资助金额:
    21.0 万元
  • 项目类别:
    面上项目

相似海外基金

Collaborative Research: SHF: Small: LEGAS: Learning Evolving Graphs At Scale
协作研究:SHF:小型:LEGAS:大规模学习演化图
  • 批准号:
    2331302
  • 财政年份:
    2024
  • 资助金额:
    $ 24.13万
  • 项目类别:
    Standard Grant
Collaborative Research: SHF: Small: LEGAS: Learning Evolving Graphs At Scale
协作研究:SHF:小型:LEGAS:大规模学习演化图
  • 批准号:
    2331301
  • 财政年份:
    2024
  • 资助金额:
    $ 24.13万
  • 项目类别:
    Standard Grant
Collaborative Research: SHF: Small: Efficient and Scalable Privacy-Preserving Neural Network Inference based on Ciphertext-Ciphertext Fully Homomorphic Encryption
合作研究:SHF:小型:基于密文-密文全同态加密的高效、可扩展的隐私保护神经网络推理
  • 批准号:
    2412357
  • 财政年份:
    2024
  • 资助金额:
    $ 24.13万
  • 项目类别:
    Standard Grant
Collaborative Research: SHF: Small: Quasi Weightless Neural Networks for Energy-Efficient Machine Learning on the Edge
合作研究:SHF:小型:用于边缘节能机器学习的准失重神经网络
  • 批准号:
    2326895
  • 财政年份:
    2023
  • 资助金额:
    $ 24.13万
  • 项目类别:
    Standard Grant
Collaborative Research: SHF: Small: Enabling Efficient 3D Perception: An Architecture-Algorithm Co-Design Approach
协作研究:SHF:小型:实现高效的 3D 感知:架构-算法协同设计方法
  • 批准号:
    2334624
  • 财政年份:
    2023
  • 资助金额:
    $ 24.13万
  • 项目类别:
    Standard Grant
{{ showInfoDetail.title }}

作者:{{ showInfoDetail.author }}

知道了