收藏本站
收藏 | 手机打开
二维码
手机客户端打开本文

抢占式操作系统内核验证框架的设计和实现

许峰唯  
【摘要】:计算机系统被广泛应用于国防、通讯、金融等关键领域,构建高可信的计算机系统已成为世界范围的重要课题。操作系统内核作为计算机系统中的底层核心软件,其安全可靠性是构建高可信计算机系统的关键。防崩溃代码(crash proof code),即用形式化验证技术严格保证底层操作系统的正确性,被2011年MIT出版的《技术评论》评选为十大新兴技术之一,成为了一个新的研究热点。而操作系统本身的一些特征使得形式化验证变得困难,譬如很多操作系统通常由C语言和内嵌汇编实现、代码规模较大、支持多任务并发、中断和抢占等,在这些特征中由于抢占和中断导致内核代码的高度并发使得操作系统的验证变得尤其困难。操作系统的正确性通常使用应用程序编程接口(API)的具体实现与其高层抽象之间的精化关系来刻画,这使得操作系统正确性验证需要基于程序精化验证技术,而并发系统内核的验证需要同时结合并发验证和精化验证,这使得并发内核的验证变得十分困难。一方面,由于抢占和中断请求导致任务执行的不确定性使得并发内核的验证需要可组合的并发精化验证,而相关理论问题直到最近几年才被解决,因此之前的操作系统内核验证项目都通过避免抢占和中断来简化操作系统内核验证,它们验证的内核代码是串行的。另一方面,现有的可组合的并发精化验证技术和中断验证方法都是基于简化的理论模型,不能直接将其应用于商业化的抢占式操作系统内核验证工作中,需要进行调整和扩展。本文探索如何将可组合的并发精化验证技术和中断验证方法应用于验证商业化的抢占式内核,并做出了如下贡献:·本文设计并实现了第一个实用的抢占式操作系统内核验证框架。验证框架以验证操作系统内核功能正确性为目标,这里操作系统内核的功能正确性被定义为应用程序编程接口(API)的实现及其抽象规约之间的上下文精化关系。整个验证框架由三个部分构成:(1)操作系统内核的形式化建模;(2)一个支持多级中断的并发精化程序逻辑CSL-R用于验证内核代码的正确性;(3)以及一些自动证明策略来提高验证效率。·本文首次完成了一个商业抢占式实时操作系统内核μC/OS-Ⅱ的关键功能模块的正确性验证,包括任务调度程序,时钟中断程序,时钟管理,以及四种同步通信机制:消息队列、互斥锁、消息邮箱和信号量,总计约3450行C代码,覆盖了68%左右的常用API。同时在高层模型上证明了互斥锁满足无优先级反转的性质(priority-inversion-freedom, PIF)。值得一提的是,本文验证的是第三方开发的商用内核,而不是为了验证自己开发的内核。·本文所描述的操作系统内核验证框架和μC/OS-II的验证都已在定理证明工具Coq中实现,生成了机器可检查的证明。证明脚本的代码量总计约225000行,这是第一个商业化实时操作系统内核的核心功能模块的机器可检查证明。


知网文化
【相似文献】
中国期刊全文数据库 前20条
1 凌明,郑凯东,胡晨,时龙兴;嵌入式操作系统内核的实现[J];电子器件;1999年04期
2 谢钧,张韬,张士庚,黄皓;一个分层隔离的操作系统内核[J];计算机应用;2005年06期
3 汪黎;杨学军;王戟;罗宇;;操作系统内核程序函数执行上下文的自动检验[J];软件学报;2007年04期
4 赵跃华;马祥顺;;一个安全嵌入式操作系统内核设计与实现[J];微计算机信息;2008年35期
5 施军,朱鲁华,尤晋元,沈昌祥;可定制的安全操作系统内核 [J];计算机工程;2001年08期
6 陈曦;吕伟杰;刘鲁源;;事件/时间触发嵌入式操作系统内核的设计[J];计算机工程与应用;2008年16期
7 李建国;;757计算机操作系统内核的设计与实现[J];计算机研究与发展;1985年01期
8 汪杭军,祁亨年,张广群,叶肖惠;操作系统内核的比较与研究[J];湖州师范学院学报;2005年01期
9 朱瑾,许占文,辛义忠;Linux操作系统内核的升级[J];计算机与现代化;2005年04期
10 黄义文;;Linux操作系统内核裁剪的分析[J];中国民航飞行学院学报;2010年03期
11 袁辉;;嵌入式操作系统内核程序的设计与实现[J];价值工程;2011年17期
12 辛思远;赵勇;廖建华;王婷;;操作系统内核的动态可信度量模型[J];计算机应用;2012年04期
13 张琼声;吴明泉;;一种基于属性的操作系统内核自动验证方法[J];小型微型计算机系统;2013年07期
14 金卫民;Linux操作系统内核的升级[J];计算机与现代化;2003年11期
15 焦振;何继伟;孙永胜;;嵌入式操作系统内核级调用的能量模拟[J];安阳师范学院学报;2006年05期
16 朱岩;;关于服务体模型与操作系统内核设计技术的研究[J];数字技术与应用;2012年01期
17 ;Linux帮你选[J];每周电脑报;1999年11期
18 赵霞;嵌入式操作系统内核机制研究与蓝牙软件设计[J];北京工商大学学报(自然科学版);2004年06期
19 李宏,陈香兰,吴明桥,龚育昌,赵振西;服务体模型与操作系统内核设计技术[J];计算机研究与发展;2005年07期
20 李瑜;赵勇;林莉;姜伟;詹静;辛思远;;一种操作系统内核完整性度量方法[J];小型微型计算机系统;2013年05期
中国博士学位论文全文数据库 前1条
1 许峰唯;抢占式操作系统内核验证框架的设计和实现[D];中国科学技术大学;2016年
中国硕士学位论文全文数据库 前10条
1 程芳;轻量级操作系统内核研究[D];重庆大学;2010年
2 曹文浩;一种嵌入式操作系统内核的设计与实现[D];吉林大学;2009年
3 孔军;一种新型嵌入式操作系统内核设计[D];安徽理工大学;2008年
4 郑园宏;嵌入式Linux操作系统内核移植的研究与实践[D];大连理工大学;2004年
5 丁帅;面向C8051F的嵌入式操作系统内核设计[D];山东理工大学;2010年
6 田令平;小型嵌入式操作系统内核设计与实现策略研究[D];华东师范大学;2006年
7 刘磊;基于IA32操作系统内核的设计与实现[D];西北工业大学;2007年
8 刘璧怡;Linux操作系统内核可靠性评测方法研究[D];哈尔滨工业大学;2011年
9 张荣亮;Linux操作系统内核分析与研究[D];江西师范大学;2007年
10 陈昌洲;基于MultiTask!操作系统内核的嵌入式AP设备的研究与实现[D];苏州大学;2005年
中国重要报纸全文数据库 前1条
1 本报记者 胡英;解剖NGFW4000[N];计算机世界;2002年
 快捷付款方式  订购知网充值卡  订购热线  帮助中心
  • 400-819-9993
  • 010-62982499
  • 010-62783978