TY - JOUR
T1 - 基于 PROMELA 模型的安全关键软件形式化验证技术
AU - Xing, Liang
AU - Ding, Chengjun
AU - Du, Hupeng
AU - Ma, Chunyan
N1 - Publisher Copyright:
©2022 Journal of Northwestern Polytechnical University.
PY - 2022/10
Y1 - 2022/10
N2 - Based on the PROMELA formal model, this paper studies the techniques for verifying the five types of fault in the C program: assertion violation, array out-of-bound, null pointer dereference, deadlock and starvation. Firstly, it establishes two types of mapping rules from the abstract syntax tree nodes of the C program to the PROMELA model and verifies the attribute-related functions of the PROMELA model. Secondly, according to the mapping rules, the algorithm for automatically generating the PROMELA formal model from the C program is proposed and theoretically analyzed. Then, based on the PROMELA model, the formal verification technique for the five types of fault in the C program respectively is given. Finally, the verification scope of the five types of fault is analyzed. For each type of fault, 12 cases of the C programs are studied. The experimental results demonstrate the effectiveness of the technique.
AB - Based on the PROMELA formal model, this paper studies the techniques for verifying the five types of fault in the C program: assertion violation, array out-of-bound, null pointer dereference, deadlock and starvation. Firstly, it establishes two types of mapping rules from the abstract syntax tree nodes of the C program to the PROMELA model and verifies the attribute-related functions of the PROMELA model. Secondly, according to the mapping rules, the algorithm for automatically generating the PROMELA formal model from the C program is proposed and theoretically analyzed. Then, based on the PROMELA model, the formal verification technique for the five types of fault in the C program respectively is given. Finally, the verification scope of the five types of fault is analyzed. For each type of fault, 12 cases of the C programs are studied. The experimental results demonstrate the effectiveness of the technique.
KW - C program
KW - formal verification
KW - PROMELA model
KW - software failure
UR - http://www.scopus.com/inward/record.url?scp=85143893838&partnerID=8YFLogxK
U2 - 10.1051/jnwpu/20224051180
DO - 10.1051/jnwpu/20224051180
M3 - 文章
AN - SCOPUS:85143893838
SN - 1000-2758
VL - 40
SP - 1180
EP - 1187
JO - Xibei Gongye Daxue Xuebao/Journal of Northwestern Polytechnical University
JF - Xibei Gongye Daxue Xuebao/Journal of Northwestern Polytechnical University
IS - 5
ER -