CN110221973B - 面向c程序缺陷检测的靶向式并行符号执行方法 - Google Patents

面向c程序缺陷检测的靶向式并行符号执行方法 Download PDF

Info

Publication number
CN110221973B
CN110221973B CN201910428120.4A CN201910428120A CN110221973B CN 110221973 B CN110221973 B CN 110221973B CN 201910428120 A CN201910428120 A CN 201910428120A CN 110221973 B CN110221973 B CN 110221973B
Authority
CN
China
Prior art keywords
node
control node
main control
computing
program
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910428120.4A
Other languages
English (en)
Other versions
CN110221973A (zh
Inventor
张俊贤
赵曦
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hunan Panlian Xin'an Information Technology Co ltd
Original Assignee
Hunan Panlian Xin'an Information Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hunan Panlian Xin'an Information Technology Co ltd filed Critical Hunan Panlian Xin'an Information Technology Co ltd
Priority to CN201910428120.4A priority Critical patent/CN110221973B/zh
Publication of CN110221973A publication Critical patent/CN110221973A/zh
Application granted granted Critical
Publication of CN110221973B publication Critical patent/CN110221973B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3604Software analysis for verifying properties of programs
    • G06F11/3612Software analysis for verifying properties of programs by runtime analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Multi Processors (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明涉及一种面向C程序缺陷检测的靶向式并行符号执行方法,其包括分布式计算系统,所述分布式计算系统包括一个主控节点和多个计算节点,所述主控节点任务预处理和任务分派包括以下步骤:步骤S1、源代码编译到中间代码;步骤S2、静态分析出疑似漏洞点;步骤S3、建立程序依赖图;步骤S4、图算法遍历程序依赖图G;步骤S5、将子图置入队列;步骤S6、记录计算节点的状态;步骤S7、初始化计算节点;步骤S8、中间代码的分配;步骤S9、遍历队列ListTask;步骤S10、各计算节点开始计算任务;步骤S11、更新元组NS;步骤S12、主控节点通知各计算节点结束,收取并汇总各计算节点所提交的处理结果。本发明实现了对源代码缺陷分析目标的快速精准定位和验证。

Description

面向C程序缺陷检测的靶向式并行符号执行方法
技术领域
本发明涉及信息技术领域,尤其涉及一种面向C程序缺陷检测的靶向式并行符号执行方法。
背景技术
符号执行是一种精确度较高的程序分析技术。该技术使用符号化输入代替实际输入来模拟执行目标程序,使用符号表达式刻画执行路径上程序指令的语义。在遇到条件语句时,分支条件被加入到当前路径的路径条件中,通过调用SMT求解器对路径条件的可满足性进行求解来判断路径是否实际可行,通过对路径条件约束子集变异后得到的新约束集合,通过使用SMT求解器对新约束集合求解,循环以上过程以穷举分析目标程序的路径空间。计算资源开销过大和路径空间爆炸问题导致符号执行技术难以高效分析大规模代码,是该技术目前存在的主要问题。
发明内容
针对现有技术的不足,本发明提供一种面向C程序缺陷检测的靶向式并行符号执行方法,有机结合静态分析“快”和符号执行“准”的优点,在利用静态分析的优势保证高效率的同时,利用符号执行的精度优势,实现对源代码缺陷分析目标的快速精准定位和验证。
本发明解决其技术问题所采用的技术方案是:
所述面向C程序缺陷检测的靶向式并行符号执行方法包括分布式计算系统,所述分布式计算系统包括一个主控节点和多个计算节点,所述主控节点负责任务的预处理和任务的分派,所述计算节点负责任务处理;
所述主控节点任务预处理和任务分派包括以下步骤:
步骤S1、源代码编译到中间代码:主控节点利用C代码编译前端将源代码编译到中间代码;
步骤S2、静态分析出疑似漏洞点:主控节点对源代码做静态分析,给出疑似漏洞点p1,p2,…pn,各漏洞点分别对应中间代码中的一条指令;
步骤S3、建立程序依赖图:主控节点分析中间代码,依次建立程序依赖图G<Entry>,其中Entry为程序依赖图G的入口;
步骤S4、图算法遍历程序依赖图G:主控节点使用图算法遍历程序依赖图G,分别针对p1,p2,…pn,得到子图G1、G2、…Gn,对于Gi,i∈[1,2,3…,n],入口为Entry,出口为pi
步骤S5、将子图置入队列:主控节点将子图G1、G2、…Gn置入队列ListTask;
步骤S6、记录计算节点的状态:主控节点使用状态向量StateVecter记录各计算节点的状态,状态向量StateVecter的每个单元为一个元组NS<ID,IP,PORT,IdleCoreNumber,WORKSTATE>;
步骤S7、初始化计算节点:分布式计算系统启动时,主控节点进入初始状态,完成步骤S1~S5后,根据预先设定的计算节点相关信息,分别为每个计算节点i设置对应的元组NSi进行初始化,并进入等待状态,接收各计算节点的注册请求;
步骤S8、中间代码的分配:各计算节点向主控节点注册,提交其ID、IP地址、端口PORT、空闲CPU核心数IdleCoreNumber,主控节点填充状态向量StateVecter中相应信息,并将编译后的中间代码分发至各计算节点;
步骤S9、遍历队列ListTask:主控节点遍历队列ListTask,取出第一个子图G0,遍历状态向量StateVecter各元素Statei(i∈[1,2,3…,n]),对于Statei,若其IdleCoreNumber>0,则将G0分配给Statei标识的计算节点;若ListTask为空,且状态向量StateVecter中各State的WORKSTATE均为IDLE,表示全部任务处理完毕,执行步骤S12;
步骤S10、各计算节点开始计算任务;
步骤S11、更新元组NS:计算节点i处理计算任务结束后,向主控节点发起通知,主控节点收到通知后,将状态向量StateVecter中该节点对应状态的元组NS更新,设置IdleCoreNumber+1,执行步骤S9;
步骤S12、主控节点通知各计算节点结束,收取并汇总各计算节点所提交的处理结果;
步骤S13、结束。
在本发明提供的面向C程序缺陷检测的靶向式并行符号执行方法的一种较佳实施例中,所述步骤S10中,计算节点计算任务的处理过程具体包括以下步骤:
步骤S101、将中间代码逐一放至FIFO队列InstructionList,当遇到分支指令时,分支指令入队,执行步骤102;
步骤S102、Taski利用动态符号执行引擎E从队列InstructionList中取出第一条指令I:
a、若预先给定时间等指标达到阈值,或队列InstructionList为空,执行步骤S105,否则执行步骤S102.b;
b、若当前指令I为靶标指令pi,则符号化执行pi,并执行步骤103,否则执行步骤S102.c;
c、对于当前指令I,若I Gi,则略过I,执行步骤S102.a,否则执行步骤S102.d;
d、若指令I不是分支指令,则符号化执行指令I,执行步骤S102,否则转至步骤S102.e;
e、对于分支指令,将左右分支跳转目标指令放至InstructionList队尾,执行步骤S102.a;
步骤S103、在靶标指令pi处根据其对应的符号状态检验程序安全约束,若安全约束被破坏,执行步骤S104,否则转至步骤S105;
步骤S104、利用SMT求解器对路径约束进行求解,若求解成功,则求解结果即为验证缺陷的执行用例;
步骤S105、通知主控节点计算任务处理完毕,及任务处理结果;
步骤S106、结束。
在本发明提供的面向C程序缺陷检测的靶向式并行符号执行方法的一种较佳实施例中,所述步骤S3具体为:主控节点分析中间代码,依次建立其分析过程间的控制依赖图、数据依赖图,合并建立程序依赖图G<Entry>,其中Entry为程序依赖图G的入口。
在本发明提供的面向C程序缺陷检测的靶向式并行符号执行方法的一种较佳实施例中,所述步骤S6中的所述元组NS<ID,IP,PORT,IdleCoreNumber,WORKSTATE>分别表示:ID、IP地址,端口PORT,空闲CPU核心数IdleCoreNumber,WORKSTATE表示该节点工作状态是否空闲,取值为BUSY/IDLE。
与现有技术相比,本发明提供的面向C程序缺陷检测的靶向式并行符号执行方法的有益效果是:本发明利用静态分析手段获取疑似目标缺陷点和相关信息,建立分析靶标;分析目标源代码的数据依赖和控制依赖关系,建立程序依赖图,以各分析靶标为目标,从程序依赖图中分别抽取各靶标对应的依赖关系子图;利用以上信息,在符号执行过程中,指导路径选择算法,使符号执行引擎遍历各个子图的路径空间,并在靶标指令处检验程序安全约束,产生验证缺陷的执行用例,通过在每条路径的可疑位置添加性质约束,并使用SMT求解器对约束表达式进行求解,推断在该位置是否存在可能的程序缺陷。有机结合静态分析“快”和符号执行“准”的优点,在利用静态分析的优势保证高效率的同时,利用符号执行的精度优势,实现对源代码缺陷分析目标的快速精准定位和验证。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图,其中:
图1是本发明提供的面向C程序缺陷检测的靶向式并行符号执行方法的所述主控节点任务预处理和任务分派的流程图;
图2是本发明提供的面向C程序缺陷检测的靶向式并行符号执行方法的所述计算节点计算任务的处理流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
请参阅图1,所述面向C程序缺陷检测的靶向式并行符号执行方法包括分布式计算系统,所述分布式计算系统包括一个主控节点和多个计算节点,所述主控节点负责任务的预处理和任务的分派,所述计算节点负责任务处理;
所述主控节点任务预处理和任务分派包括以下步骤:
步骤S1、源代码编译到中间代码:主控节点利用C代码编译前端将源代码编译到中间代码;
步骤S2、静态分析出疑似漏洞点:主控节点对源代码做静态分析,给出疑似漏洞点p1,p2,…pn,各漏洞点分别对应中间代码中的一条指令;
步骤S3、建立程序依赖图:主控节点分析中间代码,依次建立其分析过程间的控制依赖图、数据依赖图,合并建立程序依赖图G<Entry>,其中Entry为程序依赖图G的入口;
步骤S4、图算法遍历程序依赖图G:主控节点使用图算法遍历程序依赖图G,分别针对p1,p2,…pn,得到子图G1、G2、…Gn,对于Gi,i∈[1,2,3…,n],入口为Entry,出口为pi
步骤S5、将子图置入队列:主控节点将子图G1、G2、…Gn置入队列ListTask;
步骤S6、记录计算节点的状态:主控节点使用状态向量StateVecter记录各计算节点的状态,状态向量StateVecter的每个单元为一个元组NS<ID,IP,PORT,IdleCoreNumber,WORKSTATE>,分别表示:ID、IP地址,端口PORT,空闲CPU核心数IdleCoreNumber,WORKSTATE表示该节点工作状态是否空闲,取值为BUSY/IDLE;
步骤S7、初始化计算节点:分布式计算系统启动时,主控节点进入初始状态,完成步骤S1~S5后,根据预先设定的计算节点相关信息,分别为每个计算节点i设置对应的元组NSi进行初始化,并进入等待状态,接收各计算节点的注册请求;
步骤S8、中间代码的分配:各计算节点向主控节点注册,提交其ID、IP地址、端口PORT、空闲CPU核心数IdleCoreNumber,主控节点填充状态向量StateVecter中相应信息,并将编译后的中间代码分发至各计算节点;
步骤S9、遍历队列ListTask:主控节点遍历队列ListTask,取出第一个子图G0,遍历状态向量StateVecter各元素Statei(i∈[1,2,3…,n]),对于Statei,若其IdleCoreNumber>0,则将G0分配给Statei标识的计算节点;若ListTask为空,且状态向量StateVecter中各State的WORKSTATE均为IDLE,表示全部任务处理完毕,执行步骤S12;
步骤S10、各计算节点开始计算任务;
请参阅图2,所述计算节点计算任务的处理过程具体包括以下步骤:
步骤S101、将中间代码逐一放至FIFO队列InstructionList,当遇到分支指令时,分支指令入队,执行步骤102;
步骤S102、Taski利用动态符号执行引擎E从队列InstructionList中取出第一条指令I:
a、若预先给定时间等指标达到阈值,或队列InstructionList为空,执行步骤S105,否则执行步骤S102.b;
b、若当前指令I为靶标指令pi,则符号化执行pi,并执行步骤103,否则执行步骤S102.c;
c、对于当前指令I,若I Gi,则略过I,执行步骤S102.a,否则执行步骤S102.d;
d、若指令I不是分支指令,则符号化执行指令I,执行步骤S102,否则转至步骤S102.e;
e、对于分支指令,将左右分支跳转目标指令放至InstructionList队尾,执行步骤S102.a;
步骤S103、在靶标指令pi处根据其对应的符号状态检验程序安全约束,若安全约束被破坏,执行步骤S104,否则转至步骤S105;
步骤S104、利用SMT求解器对路径约束进行求解,若求解成功,则求解结果即为验证缺陷的执行用例;
步骤S105、通知主控节点计算任务处理完毕,及任务处理结果;
步骤S106、结束。
步骤S11、更新元组NS:计算节点i处理计算任务结束后,向主控节点发起通知,主控节点收到通知后,将状态向量StateVecter中该节点对应状态的元组NS更新,设置IdleCoreNumber+1,执行步骤S9;
步骤S12、主控节点通知各计算节点结束,收取并汇总各计算节点所提交的处理结果;
步骤S13、结束。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书内容所作的等效结构或等效流程变换,或直接或间接运用在其它相关的技术领域,均同理包括在本发明的专利保护范围之内。

Claims (4)

1.一种面向C程序缺陷检测的靶向式并行符号执行方法,其特征在于:包括分布式计算系统,所述分布式计算系统包括一个主控节点和多个计算节点,所述主控节点负责任务的预处理和任务的分派,所述计算节点负责任务处理;
所述主控节点任务预处理和任务分派包括以下步骤:
步骤S1、源代码编译到中间代码:主控节点利用C代码编译前端将源代码编译到中间代码;
步骤S2、静态分析出疑似漏洞点:主控节点对源代码做静态分析,给出疑似漏洞点p1,p2,…pn,各漏洞点分别对应中间代码中的一条指令;
步骤S3、建立程序依赖图:主控节点分析中间代码,依次建立程序依赖图G<Entry>,其中Entry为程序依赖图G的入口;
步骤S4、图算法遍历程序依赖图G:主控节点使用图算法遍历程序依赖图G,分别针对p1,p2,…pn,得到子图G1、G2、…Gn,对于Gi,i∈[1,2,3…,n],入口为Entry,出口为pi
步骤S5、将子图置入队列:主控节点将子图G1、G2、…Gn置入队列ListTask;
步骤S6、记录计算节点的状态:主控节点使用状态向量StateVecter记录各计算节点的状态,状态向量StateVecter的每个单元为一个元组NS<ID,IP,PORT,IdleCoreNumber,WORKSTATE>;
步骤S7、初始化计算节点:分布式计算系统启动时,主控节点进入初始状态,完成步骤S1~S5后,根据预先设定的计算节点相关信息,分别为每个计算节点i设置对应的元组NSi进行初始化,并进入等待状态,接收各计算节点的注册请求;
步骤S8、中间代码的分配:各计算节点向主控节点注册,提交其ID、IP地址、端口PORT、空闲CPU核心数IdleCoreNumber,主控节点填充状态向量StateVecter中相应信息,并将编译后的中间代码分发至各计算节点;
步骤S9、遍历队列ListTask:主控节点遍历队列ListTask,取出第一个子图G0,遍历状态向量StateVecter各元素Statei(i∈[1,2,3…,n]),对于Statei,若其IdleCoreNumber>0,则将G0分配给Statei标识的计算节点;若ListTask为空,且状态向量StateVecter中各State的WORKSTATE均为IDLE,表示全部任务处理完毕,执行步骤S12;
步骤S10、各计算节点开始计算任务;
步骤S11、更新元组NS:计算节点i处理计算任务结束后,向主控节点发起通知,主控节点收到通知后,将状态向量StateVecter中该节点对应状态的元组NS更新,设置IdleCoreNumber+1,执行步骤S9;
步骤S12、主控节点通知各计算节点结束,收取并汇总各计算节点所提交的处理结果;
步骤S13、结束。
2.根据权利要求1所述的面向C程序缺陷检测的靶向式并行符号执行方法,其特征在于:所述步骤S10中,计算节点计算任务的处理过程具体包括以下步骤:
步骤S101、将中间代码逐一放至FIFO队列InstructionList,当遇到分支指令时,分支指令入队,执行步骤102;
步骤S102、Taski利用动态符号执行引擎E从队列InstructionList中取出第一条指令I:
a、若预先给定时间等指标达到阈值,或队列InstructionList为空,执行步骤S105,否则执行步骤S102.b;
b、若当前指令I为靶标指令pi,则符号化执行pi,并执行步骤103,否则执行步骤S102.c;
c、对于当前指令I,若I Gi,则略过I,执行步骤S102.a,否则执行步骤S102.d;
d、若指令I不是分支指令,则符号化执行指令I,执行步骤S102,否则转至步骤S102.e;
e、对于分支指令,将左右分支跳转目标指令放至InstructionList队尾,执行步骤S102.a;
步骤S103、在靶标指令pi处根据其对应的符号状态检验程序安全约束,若安全约束被破坏,执行步骤S104,否则转至步骤S105;
步骤S104、利用SMT求解器对路径约束进行求解,若求解成功,则求解结果即为验证缺陷的执行用例;
步骤S105、通知主控节点计算任务处理完毕,及任务处理结果;
步骤S106、结束。
3.根据权利要求1所述的面向C程序缺陷检测的靶向式并行符号执行方法,其特征在于:所述步骤S3具体为:主控节点分析中间代码,依次建立其分析过程间的控制依赖图、数据依赖图,合并建立程序依赖图G<Entry>,其中Entry为程序依赖图G的入口。
4.根据权利要求1所述的面向C程序缺陷检测的靶向式并行符号执行方法,其特征在于:所述步骤S6中的所述元组NS<ID,IP,PORT,IdleCoreNumber,WORKSTATE>分别表示:ID、IP地址,端口PORT,空闲CPU核心数IdleCoreNumber,WORKSTATE表示该节点工作状态是否空闲,取值为BUSY/IDLE。
CN201910428120.4A 2019-05-22 2019-05-22 面向c程序缺陷检测的靶向式并行符号执行方法 Active CN110221973B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910428120.4A CN110221973B (zh) 2019-05-22 2019-05-22 面向c程序缺陷检测的靶向式并行符号执行方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910428120.4A CN110221973B (zh) 2019-05-22 2019-05-22 面向c程序缺陷检测的靶向式并行符号执行方法

Publications (2)

Publication Number Publication Date
CN110221973A CN110221973A (zh) 2019-09-10
CN110221973B true CN110221973B (zh) 2022-12-16

Family

ID=67821612

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910428120.4A Active CN110221973B (zh) 2019-05-22 2019-05-22 面向c程序缺陷检测的靶向式并行符号执行方法

Country Status (1)

Country Link
CN (1) CN110221973B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111857811B (zh) * 2020-07-29 2023-09-22 湖南泛联新安信息科技有限公司 一种资源流图的构建方法
CN114581221B (zh) * 2022-05-05 2022-07-29 支付宝(杭州)信息技术有限公司 分布式计算系统以及计算机设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008047351A2 (en) * 2006-10-19 2008-04-24 Checkmarx Ltd. Locating security vulnerabilities in source code
CN101937388A (zh) * 2009-12-17 2011-01-05 北京测腾信息技术有限公司 一种高可扩展性和可维护性的源代码缺陷检测方法及装置
CN106354630A (zh) * 2016-08-23 2017-01-25 电子科技大学 一种基于动态符号执行的软件缺陷检测方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008047351A2 (en) * 2006-10-19 2008-04-24 Checkmarx Ltd. Locating security vulnerabilities in source code
CN101937388A (zh) * 2009-12-17 2011-01-05 北京测腾信息技术有限公司 一种高可扩展性和可维护性的源代码缺陷检测方法及装置
CN106354630A (zh) * 2016-08-23 2017-01-25 电子科技大学 一种基于动态符号执行的软件缺陷检测方法

Also Published As

Publication number Publication date
CN110221973A (zh) 2019-09-10

Similar Documents

Publication Publication Date Title
Agha et al. A survey of statistical model checking
Chiang et al. Efficient search for inputs causing high floating-point errors
Inverso et al. Parallel and distributed bounded model checking of multi-threaded programs
Abdulla et al. The best of both worlds: Trading efficiency and optimality in fence insertion for TSO
CN110221973B (zh) 面向c程序缺陷检测的靶向式并行符号执行方法
JP2017045446A (ja) ソフトウェアプログラムを修復する方法、記憶媒体及びシステム
Li et al. Practical symbolic race checking of GPU programs
EP0523232B1 (en) Method for testing and debugging computer programs
US9396095B2 (en) Software verification
CN104407968B (zh) 一种通过静态分析测算代码指令最长运行时间的方法
JP6528465B2 (ja) ソフトウェアテストのためのシンボリック実行における状態パラメータ化
CN110321458A (zh) 一种基于控制流图的数据流分析方法及装置
KR20110080073A (ko) 멀티쓰레드 환경을 테스트하는 커버리지 장치 및 방법
CN112631925A (zh) 一种单变量原子违背缺陷的检测方法
KR102090229B1 (ko) 바이너리에 대한 보안 취약점 및 그 원인 위치의 식별 방법 및 그 장치
Xie et al. Loopster: Static loop termination analysis
Binder et al. The role of causality in a formal definition of timing anomalies
Zhou et al. Hunting garbage collection related concurrency bugs through critical condition restoration
Brandner et al. Criticality: static profiling for real-time programs
Krautz et al. Automatic verification of floating point units
Anbunathan et al. Basis path based test suite minimization using genetic algorithm
Lv et al. Wcet analysis of the mc/os-ii real-time kernel
CN108415836B (zh) 利用应用程序检测计算机系统性能变化的方法和系统
Bhat et al. Towards automatic parallelization of “for” loops
CN115878440B (zh) 用于静态分析npu指令性能的方法、电子设备、介质和程序

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant