-
公开(公告)号:CN118567653A
公开(公告)日:2024-08-30
申请号:CN202410651915.2
申请日:2024-05-24
Applicant: 南京大学
Abstract: 本发明公开了一种以太坊智能合约字节码优化方法、装置、介质及设备。该方法通过首先从字节码指令集中找出函数及函数所包含的基本块,然后在函数体内找出其中表示源代码非循环连续性条件判断语句的连续性条件跳转的基本块及其跳转目标基本块,通过符号执行获得条件变量判定项和跳转目标基本块之间的约束关系,然后基于该约束关系对条件变量判定项排序,而后构建二元决策树并优化,最终根据优化的二元决策树重构字节码指令。本发明的优化方法在以太坊中大大减少资源消耗。
-
公开(公告)号:CN118094540A
公开(公告)日:2024-05-28
申请号:CN202410214319.8
申请日:2024-02-27
Applicant: 南京大学
IPC: G06F21/56
Abstract: 本发明公开一种大规模程序增量静态分析方法,该方法首先利用进行变更分析得到变化的行号匹配出变化的指令同时构造新旧代码之间的映射;然后基于得到的变化指令和映射关系,更新指向集中的编号;在基于得到的指向集变更,更新静态单赋值中的指向集信息;最后基于得到的静态单赋值信息,连接各个变量的定义点和使用点,形成值流图。本发明可以精确识别源代码和指令的变更,最大程度减少增量静态分析需要处理的数据量,同时本发明最后以值流图的形式,直观地展示了各个变量和对象在程序模块之间的传递关系。
-
公开(公告)号:CN116610441A
公开(公告)日:2023-08-18
申请号:CN202310354501.9
申请日:2023-04-06
Applicant: 南京大学
Abstract: 本发明公开了一种针对基于分解的多面体抽象域的并行加速方法。具体包括以下技术要点:主要由针对Chernikova算法的并行加速方法与针对基于分解的多面体域操作的并行加速方法两个部分组成,提供了一种并行计算射线的方法来加速Chernikova算法的方法,并且为并行计算产生的读写冲突提供了解决方法。多面体抽象域最主要的域操作有交操作、接合操作、加宽操作、包含测试、条件操作和赋值操作,本发明为这六种基于分解的域操作提供了并行加速方法。静态程序分析中,在基于分解的多面体抽象域表现不佳的某些场景下,本方法达到了显著缩短多面体抽象域的计算时间、且内存仅略微增加的技术效果。
-
公开(公告)号:CN116340183A
公开(公告)日:2023-06-27
申请号:CN202310357127.8
申请日:2023-04-06
Applicant: 南京大学
IPC: G06F11/36
Abstract: 本发明公开了一种基于路径遍历的代码验证方法、装置、介质及设备。该方法通过对循环体步进分解的方式,在控制流图中找出所有从程序入口至所述目标语句的路径长度不超过K的路径,组成路径集合;然后遍历路径,对所遍历的路径进行可达验证;在对路径进行可达验证时,通过对表达式简化计算将数组变量简化成数组元素,结合变量的约束替换,将关于数组变量的操作展开成关于数组元素的SMT约束表达式,从而使得SMT约束求解能够处理数组相关的变量,同时也降低了SMT约束求解的复杂度,免去了不可达路径片段的求解分析,从而提高了分析效率。
-
公开(公告)号:CN116224971A
公开(公告)日:2023-06-06
申请号:CN202310357080.5
申请日:2023-04-06
Applicant: 南京大学
IPC: G05B23/02
Abstract: 本发明公开了一种驾驶控制系统的场景测试方法、装置、介质及设备。该方法输入状态迁移图,然后基于状态迁移图通过场景样本的循环迭代变异的方式,逐步对状态迁移图中的各个状态迁移实现其测试覆盖。在进行循环迭代变异时以场景样本的仿真输出为参照,使得迭代过程中能够快速收敛于其对应状态迁移完成覆盖测试的目标。本发明能够很直观地测试出驾驶控制系统的对驾驶环境的处理能力和水平,测试效率高。
-
公开(公告)号:CN115269393A
公开(公告)日:2022-11-01
申请号:CN202210858974.8
申请日:2022-07-21
Applicant: 南京大学
Abstract: 本发明公开了一种基于硬件的程序动态函数调用序列追踪方法和装置。该方法在执行硬件跟踪前对目标程序进行插桩形成插桩程序,通过插桩构建函数调用跳转跟踪块,使得目标程序的各目标函数的入口和出口跳转至函数调用跳转跟踪块内再返回,然后在执行硬件跟踪时,仅对函数调用跳转跟踪块的程序块进行跟踪,由此,根据硬件跟踪所输出的追踪数据即可分析出目标程序执行的函数调用关系和调用序列。本发明通过将追踪粒度由原始的程序基本块扩大至函数,从而降低处理器硬件追踪所产生的追踪数据的速度,使得所产生的追踪数据能够与追踪数据存储的速度匹配,减少追踪数据的丢失。
-
公开(公告)号:CN108804332B
公开(公告)日:2021-12-17
申请号:CN201810613423.9
申请日:2018-06-14
Applicant: 南京大学
IPC: G06F11/36
Abstract: 本发明公开一种基于机器学习的C程序内存泄漏智能化检测方法,分为三个阶段:模型构建阶段,根据已有的内存泄漏构建两个数据集,分别从两个数据中提取内存泄漏特征,将内存泄漏特征输入机器学习的分类器进行训练,交叉验证,修改分类器类型及参数,选取分类准确率最高的作为分类器模型来检测内存泄漏。程序分析与特征获取阶段,对源程序进行预分析,获取所有的内存分配点o,然后进行指针分析,构建从o开始的VFG(ValueFlowGraph),提取VFG中每条路径对应的内存泄漏特征。缺陷检测与报告阶段,将程序分析与特征获取阶段的内存泄漏特征输入到模型构建阶段的分类器模型中进行检测,判断从o开始的路径中是否存在内存泄漏,得到内存泄漏报告。
-
公开(公告)号:CN110532300B
公开(公告)日:2021-11-05
申请号:CN201910811776.4
申请日:2019-08-30
Applicant: 南京大学
IPC: G06F16/2458 , G06F16/248 , G06F16/54 , G06F16/55 , G16H10/60
Abstract: 本发明公开了一种用于人工智能数据分析的大数据高保真可视化方法。针对大数据量、高维度的向量型数据集提供可视化高保真展示,在人工智能领域中用于分析数据的内部规律与数据特征。为了保证分析效果的准确性,本发明引入了高保真可视化技术,该技术在保留了原始数据可视化特征的基础上缩减了实际可视化的操作数据规模,使可视化平台既能易于操作、高效运行,又能准确还原原始数据效果。本发明通过引入基于频数分布的高保真双向抽样算法来实现这样的可视化技术,从而使高维度大数据的可视化在较低配置的通用硬件平台上得以有效实施。本发明属于人工智能和数据科学领域。
-
公开(公告)号:CN113296394A
公开(公告)日:2021-08-24
申请号:CN202110526125.8
申请日:2021-05-14
Applicant: 南京大学
Abstract: 本发明公开了一种混成系统最优控制生成方法和装置。该方法首先遍历控制流图,提取出节点路径组成控制模式序列,然后,为每个控制模式序列构建不满足度计算表达式,然后每个控制模式序列找出其最优的控制配置序列,根据每个控制模式序列所对应的最优的控制配置序列的目标控制值,后选取目标控制值最小所对应的控制模式序列作为输出。其中,找出最优的控制配置序列时,通过对各个控制量的取值范围进行迭代采样评估得到。本发明为一般的混成系统最优控制生成问题提供了通用的解决方案,不需要使用者具有针对性的专业知识,普通用户也可按照工具说明进行使用。并且本发明对含有大量约束的复杂控制问题具有良好的可行性。
-
公开(公告)号:CN112905474A
公开(公告)日:2021-06-04
申请号:CN202110253236.6
申请日:2021-03-09
Applicant: 南京大学
Abstract: 本发明公开了一种基于硬件的高级程序动态控制流追踪方法和装置。该方法对待追踪程序静态分析,生成控制流图、类继承图和调用图,通过虚拟机执行待追踪程序收集字节码指令模版、执行信息和追踪数据。然后按照线程对追踪数据进行解码匹配,对照控制流图生成相应的执行流图,最后判断是否存在执行流数据是否存在缺失,如果是,则尽可能还原出执行流图,恢复其中缺失的部分,最终输出执行流图。本发明实现了利用硬件追踪模块对高级语言程序的控制流追踪,并且通过执行流数据的补缺分析处理,解决硬件输出追踪数据和磁盘存储速度不一致的问题。
-
-
-
-
-
-
-
-
-