首页 | 本学科首页   官方微博 | 高级检索  
     

可信编译器L2C的核心翻译步骤及其设计与实现
引用本文:尚书,甘元科,石刚,王生原,董渊.可信编译器L2C的核心翻译步骤及其设计与实现[J].软件学报,2017,28(5):1233-1246.
作者姓名:尚书  甘元科  石刚  王生原  董渊
作者单位:清华大学计算机科学与技术系, 北京 海淀区 100084,清华大学计算机科学与技术系, 北京 海淀区 100084,清华大学计算机科学与技术系, 北京 海淀区 100084,清华大学计算机科学与技术系, 北京 海淀区 100084,清华大学计算机科学与技术系, 北京 海淀区 100084
基金项目:国家自然科学基金(90818019,61462086);国家科技重大专项(MJ-2015-D-066);Sino-European Laboratory of Informatics,Automation and Applied Mathematics资助项目
摘    要:同步数据流语言(如Lustre)近年来在航空、高铁、核电等安全攸关领域得到广泛应用.这些领域对相关开发工具本身的安全性有着相当高的要求.为尽力解决好”误编译”问题,近期人们借助reliable-by-construction辅助定理证明器实现常规命令式语言编译器的构造和验证取得了很大的成功,如CompCert C编译器.L2C是基于这种方法开发的可信编译器,它以扩展的Lustre语言为源语言,以Clight (CompCert中的C语言子集)为目标语言.就我们所知,L2C是同类工作中唯一面向实际工业应用的同步数据流语言编译器.本文重点介绍L2C编译器的核心翻译步骤及其设计与实现过程中考虑的主要问题和相关经验.

关 键 词:经过验证的编译器  同步数据流语言  L2C  Coq  证明辅助器  核心翻译过程
收稿时间:2016/7/15 0:00:00
修稿时间:2016/9/25 0:00:00

Key Translations of the Trustworthy Compiler L2C and Its Design and Implementation
SHANG Shu,GAN Yuan-Ke,SHI Gang,WANG Sheng-Yuan and DONG Yuan.Key Translations of the Trustworthy Compiler L2C and Its Design and Implementation[J].Journal of Software,2017,28(5):1233-1246.
Authors:SHANG Shu  GAN Yuan-Ke  SHI Gang  WANG Sheng-Yuan and DONG Yuan
Affiliation:Department of Computer Science and Technology, Tsinghua University, Beijing 100084, China,Department of Computer Science and Technology, Tsinghua University, Beijing 100084, China,Department of Computer Science and Technology, Tsinghua University, Beijing 100084, China,Department of Computer Science and Technology, Tsinghua University, Beijing 100084, China and Department of Computer Science and Technology, Tsinghua University, Beijing 100084, China
Abstract:Synchronous data-flow languages, such as Lustre, have been widely used in safety-critical industrial areas, such as airplanes, high-speed railways, nuclear power plants, and so on.The safety of development tools themselves for these kinds of areas has been highly required.To solve the"miscompilation"problem as well as possible, it has proved to be very successful recently to implement the construction and verification of a conventional imperative language compiler, such as the CompCert C compiler, by using reliable-by-construction proof assistants.L2C is a trustworthy compiler developed based on such an approach, with an extended Lustre language as its source, and Clight, a C subset used in ComperCert, as its target.As far as we know, L2C is the only industry-level synchronous data-flow language compiler developed by using the same technique.The paper focuses on the key translations of L2C and the main issues and experience in its design and implementation.
Keywords:Certified compiler  Synchronous data-flow languages  L2C  Coq proof assistant  Key translations
点击此处可从《软件学报》浏览原始摘要信息
点击此处可从《软件学报》下载全文
设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号