| 摘要: |
| 同步数据流语言(如Lustre、Signal)在航空、高铁、核电等安全关键领域得到广泛应用.例如,适合这些领域实时控制系统建模和开发的Scade工具就是基于一种类Lustre语言.这类语言相关开发工具,特别是编译器的安全性问题也自然受到高度关注.近年来,基于形式化验证实现可信编译器构造成为程序设计语言领域的研究焦点之一,也取得了瞩目的成果,如CompCert项目实现了产品级的可信C编译器.同样,人们也采用这种方法开展了同步数据流语言可信编译器的研发工作.主要关注从事这一工作的两个长线项目,二者均研发面向基于Lustre的同步数据流语言编译器,分别以Vélus和L2C代称.对Vélus和L2C从多个重要的角度进行较为深入的分析与比较. |
| 关键词: 同步数据流语言 形式化验证的编译器 Lustre语言 |
| DOI:10.13328/j.cnki.jos.005755 |
| 分类号:TP314 |
| 基金项目:国家科技重大专项(MJ-2015-D-066) |
|
| Comparison of Two Trustworthy Compilers Vélus and L2C for Synchronous Languages |
|
KANG Yue-Xin, GAN Yuan-Ke, WANG Sheng-Yuan
|
|
Department of Computer Science and Technology, Tsinghua University, Beijing 100084, China
|
| Abstract: |
| Synchronous data-flow languages, such as Lustre and Signal, have been widely used in safety-critical industrial areas, such as airplane, high-speed railways, nuclear power plants, and so on, for example, Scade, a tool suitable for modeling and developing a real-time control systems in those areas, is based on a Lustre-like language. Naturally, the safety of development tools, especially compilers, for such languages, has been paid highly attentions. In recent years, the construction of a trustworthy compiler based on formal verification has become one of the research focuses in the field of programming language, and remarkable achievements have also been achieved, for example, a product level trustworthy C compiler has been developed in the CompCert project. Similarly, this method has been used to develop the trustworthy compilers of a synchronous data flow language. Two long term projects for such research work, called Vélus and L2C respectively in this study, are focused here. Either of them has been developing a compiler for a Lustre-like synchronous data-flow language. The analysis and comparison are deeply carried out in terms of various points between Vélus and L2C. |
| Key words: synchronous data-flow language formally certified compiler Lustre language |