• 中国计算机学会会刊
  • 中国科技核心期刊
  • 中文核心期刊

计算机工程与科学

• 软件工程 • 上一篇    下一篇

#br# 一种面向枚举类型的配置约束提取方法

曾广福,何浩辰,周书林   

  1. (国防科技大学计算机学院,湖南 长沙 410073)
  • 收稿日期:2019-08-27 修回日期:2019-12-11 出版日期:2020-04-25 发布日期:2020-04-25
  • 基金资助:

    国家自然科学基金(61402496)

A configuration constraint extraction
method for enumeration type

ZENG Guang-fu,HE Hao-chen,ZHOU Shu-lin   

  1. (School of Computer,National University of Defense Technology,Changsha 410073,China)
  • Received:2019-08-27 Revised:2019-12-11 Online:2020-04-25 Published:2020-04-25

摘要:

有研究表明软件配置故障已成为导致计算机系统异常和崩溃的一个重要因素。配置故障是由于用户无法充分地获取配置约束的信息进行误配置造成的,由于用户缺乏软件领域知识,配置故障难以避免。因此,如何对软件配置项的约束条件进行精确的分析和提取,从而为软件配置的故障诊断与修复提供依据,具有重要的研究意义。具体而言,枚举类型作为软件系统的常用类型,其取值空间的限制经常导致系统软件配置故障。基于此系统调研了6款常用的 C/C++ 开源软件,包括 Apache Httpd、Nginx、Postfix、MySQL、Redis 和 PostgreSQL的枚举类型配置约束特性,并针对已有方法存在枚举类型配置项取值空间漏报的问题,基于程序分析的方法设计和实现了面向枚举类型配置的自动化配置约束提取方法,大幅提高了针对以上开源软件的配置约束提取准确率,提升了软件配置的可用性和配置故障诊断能力。
 

关键词: 配置故障诊断, 配置约束, 枚举类型配置

Abstract:

It is reported that software configuration failure has become an important factor causing computer system anomalies and crashes. Configuration failures are caused by users' misconfigurations due to their inability to adequately obtain configuration constraint information. Because users lack software domain knowledge, configuration failures are difficult to avoid. Therefore, how to accurately analyze and extract the constraints of software configuration items to provide a basis for software configuration fault diagnosis and repair has important research significance. Specifically, enumeration is a common type of software systems, and the limitation of its value space often causes the system software configuration failure. This paper systematically investigates the enumeration type configuration constraints of six commonly used C/C++ open source software including Apache Httpd, Nginx, Postfix, MySQL, Redis, and PostgreSQL. Aiming at the problem that the value spaces of enumeration type configuration items are underreported in the previous methods, based on the program analysis method, an automatic configuration constraint extraction method for enumeration type configuration is designed and implemented. This method greatly improves the accuracy of the configuration constraint extraction of the above open source software, and improves the availability of the software configuration, and the diagnosibility of configuration failure.
 

Key words: configuration failure diagnosis, configuration constraint, enumeration-type configuration