共查询到20条相似文献,搜索用时 187 毫秒
1.
2.
数据竞争是多线程程序最为常见的问题之一。由于线程交织导致状态空间爆炸,多线程程序数据竞争引起的错误检测难度大、成本高、精度低;此外,即使检测到数据竞争,由于线程调度难以控制、执行过程难以复现,错误难以复现和定位。提出了一种多线程程序数据竞争检测与证据生成方法,基于程序语义分析和执行过程监测,构建程序的执行路径约束模型和数据竞争条件,将多线程程序数据竞争检测问题转化为约束求解问题,降低检测难度,提高检测精度;利用SMT求解器计算可能的数据竞争,并生成触发该数据竞争的程序执行序列,协助程序员定位和验证错误。实验中对10个程序进行了测试,相比现有数据竞争检测工具threadsanitizer和helgrind,本方法检测出的数据竞争多出287.5%和264.7%,且没有误报,而其他方法平均误报率为10.5%和9.8%。 相似文献
3.
安卓系统在移动端操作系统始终占据主导地位,在增强用户体验和提高程序性能的同时,其特有的事件驱动模型和多线程模型也造成了并发缺陷.并发程序中,线程调度的不确定性和难以再现性是并发缺陷检测困难的原因.现有技术主要在动态生成执行路径的基础上进行发生序(happens-before)分析,进而检测安卓应用的并发缺陷,但仍然存在低覆盖率、误报、漏报等问题.结合共享变量分析和约束求解方法实现了安卓应用数据竞争的检测,并实现了检测工具RaceDetector.该工具首先根据安卓系统的特性和数据竞争的定义,通过静态分析抽取相关信息,并进一步使用安卓共享变量分析来提高准确性和性能,继而进行可疑数据竞争分析,得出可疑的数据竞争集合;接着根据每一个可疑的数据竞争候选者,通过约束求解的方法在所有事件调度和线程调度解空间下识别发生序关系,并最终检测出真正的数据竞争.实验部分是从Google Play等来源收集了15个流行的应用APK文件作为数据集,RaceDetector平均报告了340个数据竞争,误报率为13%(44/340).与现有工具EventRacer(默认产生300随机事件触发应用执行,平均检测2个有害数据竞争)相比,RaceDetector能够解析全部源码,覆盖了所有线程调度和事件调度,平均检测出15个有害数据竞争. 相似文献
4.
随着多核技术越来越普及,多线程程序的编程也越来越流行。但是多线程程序的正确性问题已经严重影响软件可靠性,且现有的测试技术不能很好地满足多线程程序的需求。本文重点研究多线程程序中最常见的一种bug,即数据竞争,提出一种基于线程调度顺序控制的测试方法。该方法混合静态方法和动态方法,能够有效地找到多线程程序中存在的数据竞争,且能够区分出哪些数据竞争是有害的,需要程序员优先修复。实验结果显示,对于数据竞争的触发概率,本文的方法使其平均从0.53%提高到79.2%,且本文所引入的运行时开销平均只有80%,与相关方法所引入370%的开销相比更优。 相似文献
5.
6.
7.
Android应用是一种事件驱动的并发程序。后台线程与异步事件执行顺序的不确定,导致数据竞争在Android应用中普遍存在。现有的针对Android应用的竞争检测工具会产生大量误报,且不能确定地重现竞争。针对以上问题,在现有的竞争检测结果的基础上,提出了一种基于测试用例生成的Android应用数据竞争验证方法。该方法首先构建应用的状态转化图,并基于状态转化图和现有竞争检测工具的检测结果自动生成包含潜在数据竞争的测试用例,然后在测试用例执行的过程中通过控制事件分发和线程的执行顺序来暴露竞争,观察竞争是否会引起程序异常。实验结果表明,该方法能有效地重现数据竞争引起的并发错误,并指出检测结果中的误报。 相似文献
8.
并发程序中时序的不确定性导致的错误很难被检测.本文介绍了一种基于并发错误模式的多线程动态测试方法,通过在并发事件处插入线程时序改变探针,发现并发错误.本文首先介绍了出现在并发程序中的几种常见的错误模式,接着根据错误模式介绍插装策略. 相似文献
9.
设计了基于工控机和高速模入板卡的数据采集系统,介绍了Windows多任务多线程环境下,高速同步采集数据、存储与处理数据的软件设计方法。根据系统的特点,采用半满中断方式实现数据采集传输;多线程技术使数据采集与数据处理相独立,提高了数据吞吐量和计算机的整体处理能力;缓冲队列实现了高速连续存盘而不丢点;动态虚拟技术实现线程高优先级工作。用这些方法开发出的软件已成功应用于风机的故障检测中,并取得了良好的效果。 相似文献
10.
Windows环境下高速数据采集系统软件设计 总被引:2,自引:0,他引:2
设计了基于工控机和高速模入板卡的数据采集系统,介绍了Windows多任务多线程环境下,高速同步采集数据、存储与处理数据的软件设计方法.根据系统的特点,采用半满中断方式实现数据采集传输;多线程技术使数据采集与数据处理相独立,提高了数据吞吐量和计算机的整体处理能力;缓冲队列实现了高速连续存盘而不丢点;动态虚拟技术实现线程高优先级工作.用这些方法开发出的软件已成功应用于风机的故障检测中,并取得了良好的效果. 相似文献
11.
This paper presents the optimization of a fuzzy edge detector based on the traditional Sobel technique combined with interval type-2 fuzzy logic. The goal of using interval type-2 fuzzy logic in edge detection methods is to provide them with the ability to handle uncertainty in processing real world images. However, the optimal design of fuzzy systems is a difficult task and for this reason the use of meta-heuristic optimization techniques is also considered in this paper. For the optimization of the fuzzy inference systems, the Cuckoo Search (CS) and Genetic Algorithms (GAs) are applied. Simulation results show that using an optimal interval type-2 fuzzy system in conjunction with the Sobel technique provides a powerful edge detection method that outperforms its type-1 counterparts and the pure original Sobel technique. 相似文献
12.
Evolutionary algorithms are one of the most common choices reported in the literature for the tuning of fuzzy logic controllers based on either type-1 or type-2 fuzzy systems. An alternative to evolutionary algorithms is the simple tuning algorithm (STA-FLC), which is a methodology designed to improve the response of type-1 fuzzy logic controllers in a practical, intuitive and simple ways. This paper presents an extension of the simple tuning algorithm for fuzzy logic controllers based on the theory of type-2 fuzzy systems by using a parallel model implementation, it also includes a mechanism to calculate the feedback gain, new integral criteria parameters, and the effect of the AND/OR operator combinations on the fuzzy rules to improve the algorithm applicability and performance. All these improvements are demonstrated with experiments applied to different types of plants. 相似文献
13.
In this paper, a hybrid approach for image recognition combining type-2 fuzzy logic, modular neural networks and the Sugeno integral is described. Interval type-2 fuzzy inference systems are used to perform edge detection and to calculate fuzzy densities for the decision process. A type-2 fuzzy system is used for edge detection, which is a pre-processing applied to the training data for better use in the neural networks. Another type-2 fuzzy system calculates the fuzzy densities necessary for the Sugeno integral, which is used to integrate results of the neural network modules. In this case, fuzzy logic is shown to be a good methodology to improve the results of a neural system facilitating the representation of the human perception. A comparative study is also made to verify that the proposed approach is better than existing approaches and improves the performance over type-1 fuzzy logic. 相似文献
14.
数据竞争是多线程程序的常见漏洞之一,传统的数据竞争分析方法在查全率和准确率方面难以两全,而且所生成检测报告难以定位漏洞的根源.鉴于Petri网在并发系统建模和分析方面具有行为描述精确、分析工具丰富的优点,提出一种基于Petri网展开的新型数据竞争检测方法.首先,对程序的某一运行轨迹进行分析和挖掘,构建程序的一个Petri网模型,它由单一轨迹挖掘得到,却可隐含程序的多个不同运行轨迹,由此可在保证效率的同时降低传统动态分析方法的漏报率;其次,提出基于Petri网展开的潜在数据竞争检测方法,相比静态分析方法在有效性上有较大提升,而且能明确给出数据竞争的产生路径;最后,对上一阶段检测到的潜在数据竞争,给出基于CalFuzzer平台的潜在死锁重演调度方法,可剔除误报,保证数据竞争检测结果的真实性.开发相应的原型系统,结合公开的程序实例验证了所提方法的有效性. 相似文献
15.
16.
Tufan Kumbasar Ibrahim EksinMujde Guzelkaya Engin Yesil 《Engineering Applications of Artificial Intelligence》2011,24(6):996-1005
In the recent years it has been demonstrated that type-2 fuzzy logic systems are more effective in modeling and control of complex nonlinear systems compared to type-1 fuzzy logic systems. An inverse controller based on type-2 fuzzy model can be proposed since inverse model controllers provide an efficient way to control nonlinear processes. Even though various fuzzy inversion methods have been devised for type-1 fuzzy logic systems up to now, there does not exist any method for type-2 fuzzy logic systems. In this study, a systematic method has been proposed to form the inverse of the interval type-2 Takagi-Sugeno fuzzy model based on a pure analytical method. The calculation of inverse model is done based on simple manipulations of the antecedent and consequence parts of the fuzzy model. Moreover, the type-2 fuzzy model and its inverse as the primary controller are embedded into a nonlinear internal model control structure to provide an effective and robust control performance. Finally, the proposed control scheme has been implemented on an experimental pH neutralization process where the beneficial sides are shown clearly. 相似文献
17.
广义二型模糊逻辑系统在近年来成为学术研究的热点问题,而降型是该系统中的核心模块。最近的研究证明了连续Nie-Tan(CNT)算法是计算区间二型模糊集质心的准确方法。发现了离散Nie-Tan(NT)算法中的求和运算和CNT算法中的求积分运算的内在联系,用2类算法完成基于广义二型模糊集α-平面表达理论的广义二型模糊逻辑系统质心降型。3个计算机仿真实验表明,当适当增加主变量采样点个数时,所提出的基于主变量采样的离散NT算法计算出的广义二型模糊逻辑系统质心降型集和解模糊化值结果可以精确地逼近基准的CNT算法,且采样离散NT算法的计算效率远远高于CNT算法的效率。 相似文献
18.
多线程并发程序的广泛使用引发了更多的数据竞争问题,竞争检测对于提高软件质量具有重要意义。将竞争静态检测和静态切片分析结合起来,提出了一种基于类的Java数据竞争静态检测算法,该算法利用函数调用层次获得函数调用链,对类域进行分析,找出可能数据竞争,通过静态切片缩小程序分析范围,并结合数据竞争的必要条件,去掉不可能数据竞争。实例表明,该算法可用于指导修复程序中的竞争缺陷。 相似文献
19.
20.
白国政 《计算机测量与控制》2023,31(9):90-94
针对传统电力变压器故障检测方法对电力系统中潜藏的故障问题检测水平不足,准确率较低,无法及时准确的发现异常隐患等问题,提出基于贝叶斯网络的变压器局部放电故障检测方法;首先通过传感器获取电力变压器不同状态下运行过程中的参数数据,对局部放电故障发生的概率和范围进行合理性评估,提取评估概率数据综合为样本数据集,构建贝叶斯网络故障树;根据逻辑规则转化为贝叶斯网络,推演计算故障节点之间的算例关系,利用贝叶斯原理抽取故障特征指标与异常概率之间的关联关系,利用模糊描述方法构建故障特征关联函数,计算可得故障特征模糊函数动态变化关系,实现对变压器故障发生的概率与位置信息的判断与确定;实验结果表明,利用贝叶斯网络对电力变压器局部放电故障检测准确率达到85%以上,最高可达96%,说明该方法具有较高的检测准确率,能够有效提高电力变压器放电故障检测的有效性。 相似文献