当前位置: X-MOL 学术Int. J. Syst. Assur. Eng. Manag. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Software reliability enhancement against hardware transient errors using inherently reliable data structures
International Journal of System Assurance Engineering and Management Pub Date : 2020-06-26 , DOI: 10.1007/s13198-020-01011-9
Bahman Arasteh , Saideh Khosroshahizadeh

Decreasing the scale of transistors and their voltages and exponential increase in the transistor counts have made the nowadays digital integrated circuits more susceptible to transient hardware errors (soft errors). One of the interesting features of software systems is that a considerable number of soft errors are inherently masked at software level. The likelihood of error masking (error deration) in the software may be influenced by the Algorithm, data structures and programming paradigms used in the software. One of the main research questions in this field of study is that how can software reliability be improved against soft errors without external redundancy and only by selecting appropriate software structures. This paper investigates the inherent effects of the underlying data structures on the rate of error deration and program reliability. To attain this goal, five different benchmark programs were implemented by four different data structures, i.e. Array, Binary-search Tree, One-way linked list and Two-way linked list; profiling experiments were performed on the benchmarks to identify those features of the data structures which affect the rate of error-deration. Then, in order to quantify and examine the inherent reliability of the data structures, about 5,600,000 faults were injected into the benchmark programs. The results show that about 53.95% of faults in the Array based programs are masked; this figure for Binary-search tree, One-way linked list and Two-way linked list are 40.16%, 44.02% and 42.73%, respectively. We found that Array and BST as two different data structures have the highest and lowest inherent reliability respectively. These findings enable the software developers to select the most reliable data structures for developing reliable programs without external redundancy.



中文翻译:

使用固有可靠的数据结构来增强针对硬件瞬态错误的软件可靠性

晶体管规模及其电压的减小以及晶体管数量的指数增加使得当今的数字集成电路更容易受到瞬态硬件错误(软错误)的影响。软件系统的有趣特征之一是,在软件级别固有地掩盖了大量软错误。软件中错误屏蔽(错误降级)的可能性可能会受到软件中使用的算法,数据结构和编程范例的影响。该研究领域的主要研究问题之一是,如何在没有外部冗余的情况下,仅通过选择适当的软件结构来提高针对软错误的软件可靠性。本文研究了底层数据结构对错误降低率和程序可靠性的内在影响。为了实现这一目标,通过四个不同的数据结构实施了五个不同的基准程序,即 阵列二进制-搜索树-单向链表-单向链表; 在基准上进行了性能分析实验,以识别影响误差降低率的数据结构特征。然后,为了量化和检查数据结构的固有可靠性,将大约560万个故障注入到基准程序中。结果表明,基于Array的程序中约有53.95%的故障被屏蔽;二叉搜索树,单向链表和双向链表的这个数字分别为40.16%,44.02%和42.73%。我们发现作为两个不同数据结构的Array和BST分别具有最高和最低的固有可靠性。这些发现使软件开发人员可以选择最可靠的数据结构来开发可靠的程序,而无需外部冗余。

更新日期:2020-06-27
down
wechat
bug