论文部分内容阅读
随着应用的发展,计算机系统的一致性和可靠性变得越来越重要。操作系统是计算机最重要的软件系统,是高层应用软件运行的支撑和基础,所以操作系统必须是一个安全可靠的软件系统。而采用传统的软件开发方法开发的操作系统,系统的安全性和可靠性得不到很好的保证。形式化方法以精确的数学语义为基础,能够清晰、精确、抽象地描述和验证软件系统及其性质,能够帮助开发者在早期发现软件设计中的缺陷,因此可能极大提高软件的安全性和可靠性。形式化方法已经成为保证软件开发过程正确性和一致性的一种重要方法。B方法是目前国际上最受欢迎的软件形式化方法之一,它支持从规范说明到代码生成的整个软件开发周期。B方法以精确的数学语义为基础,支持严格化的软件开发过程。通过从高层到底层的严格描述和证明,开发者可能把软件设计错误消灭在设计的前期,从而更好地保证最终开发出的软件的一致性和可靠性。本文采用B方法开发了一个类似于嵌入式实时操作系统μC/OS-Ⅱ的形式化操作系统模型fmC/OS,主要工作内容如下:1.对B方法的基础知识和形式化开发的思想进行了深入的学习和研究,包括B方法的规约机制、精化过程、证明义务的生成与证明、机器组成机制和B方法的软件开发过程等。2.本文以嵌入式实时操作系统μC/OS-Ⅱ为蓝本,采用B方法建立了一个操作系统的形式化模型fmC/OS。设计的操作系统主要功能有:任务管理、内存管理和任务间的同步与通信。通过对系统功能的分析,我们把这样一个操作系统划分为几个子系统,利用B方法对各个了系统进行模型设计,并通过B工具对该阶段生成的证明义务进行正确性证明。3.根据B方法分层卡勾造的思想对上一阶段得到的抽象规范模型进行精化,并对精化过程中生成的“精化关系定理”进行证明,保证了新的精化模型与原抽象模型的一致性。最后,得到一个可以直接对应到实现的操作系统模型。采用B方法形式化开发的实时操作系统有可能更好地保证了系统的正确性和可靠性。