当前位置:主页 > 科技论文 > 计算机论文 >

面向国产处理器的编译检测技术研究

发布时间:2020-06-23 00:07
【摘要】:随着我国国防、航空等领域的飞速发展,高性能自主可控的软、硬件已经成为我国自主化信息产业发展的必备技术。对一个国家而言,自主可控的信息系统是非常重要的。国防、航天航空领域信息自主化必须构筑于安全关键系统之上,而国产龙芯处理器在国产信息化的道路上发挥着重要作用,其性能的发挥需要系统核心软件的全力配合。作为系统核心软件之一的编译器的重要性已提升至信息产业前列,是确保安全关键系统能否正常运行的关键。以国防科工委公布的《航天型号软件C语言安全子集》作为安全检测技术的标准,构造符合规范的测试用例,对LonGcc编译器进行改造、升级。最后实测表明,所构造的编译器符合《航天型号软件C语言安全子集》标准,并且没有增加执行时的开销。本文主要进行了以下的工作:(1)通过对比三种编译器Gcc,CompCert,Clang对《航天型号软件C语言安全子集》的支持程度选取了Gcc4.9.3作为基准编译器,在此基础上构造安全编译器LonGcc。分析《航天型号软件C语言安全子集》规则并结合LonGcc实际需求实现了安全子集的等级划分策略。(2)对词法分析、语法分析涉及到的主要函数和流程进行分析,并分析了Gcc中重要数据结构,对Gcc中重要树节点进行分析说明。(3)采取移植Gcc前端的方法,添加安全检测开关fsafe_c,扩展Gcc前端中的词法分析、语法语义分析部分实现了基于《航天型号软件C语言安全子集》的安全编译器LonGcc。(4)对LonGcc编译器进行安全性测试,根据《航天型号软件C语言安全子集》的规则要求,为每条规则编写了大量的测试用例来验证其正确性,通过与商业测试软件工具Testbed的对比,证明LonGcc编译器具有可靠性和实用性。
【学位授予单位】:西华师范大学
【学位级别】:硕士
【学位授予年份】:2018
【分类号】:TP332
【图文】:

人为失误,程序员,示例,语言操作


图 2-1 程序员人为失误示例Fig.2-1 Programmers think failure sample员误解编程语言。比如,尽管 C 语言操作符具有不作符的优先级不同,因此一些复杂表达式很容易引导-2 所示。

运行时错误,示例,动态内存分配,嵌入式平台


图 2-3 运行时错误示例Fig.2-3 Runtime error sample入式系统本身的原因和嵌入式平台的差异。比如,由于小的可用内存空间,因此过度使用动态内存分配可能会导

【参考文献】

相关期刊论文 前5条

1 赵伟;;代码规则检查工具评析[J];计算机技术与发展;2015年07期

2 石刚;王生原;董渊;嵇智源;甘元科;张玲波;张煜承;王蕾;杨斐;;同步数据流语言可信编译器的构造[J];软件学报;2014年02期

3 侯成杰;;航天器C语言软件常见编程错误分析及检测方法研究[J];空间控制技术与应用;2013年06期

4 王蕾;石刚;董渊;白晓颖;王生原;;一个C语言安全子集的可信编译器[J];计算机科学;2013年09期

5 何炎祥;吴伟;刘陶;李清安;陈勇;胡明昊;刘健博;石谦;;可信编译理论及其核心实现技术:研究综述[J];计算机科学与探索;2011年01期

相关硕士学位论文 前4条

1 曲长亮;一种面向安全关键软件的程序证明方法研究[D];南京航空航天大学;2014年

2 李锋;航天C程序安全规则检查技术研究[D];国防科学技术大学;2010年

3 申瑞芬;高可信安全编译器的设计与实现[D];国防科学技术大学;2007年

4 马文姣;航天型号软件的安全性测试技术研究[D];哈尔滨工业大学;2007年



本文编号:2726470

资料下载
论文发表

本文链接:https://www.wllwen.com/kejilunwen/jisuanjikexuelunwen/2726470.html


Copyright(c)文论论文网All Rights Reserved | 网站地图 |

版权申明:资料由用户3e2d0***提供,本站仅收录摘要或目录,作者需要删除请E-mail邮箱bigeng88@qq.com