一种基于有限状态机的操作系统需求层形式化建模方法及装置制造方法及图纸

技术编号:21891319 阅读:20 留言:0更新日期:2019-08-17 14:17
本发明专利技术提供了一种基于有限状态机的操作系统需求层形式化建模方法及装置,属于嵌入式操作系统领域。该方法响应于对操作系统需求层进行建模的请求,从操作系统功能模块数据库中,获取操作系统对应的多个功能模块、各功能模块对应的至少两种子状态及引起各功能模块子状态发生变化的至少一种操作,从而确定操作系统的系统状态及引起系统状态变化的触发事件;根据确定的系统状态及引起系统状态变化的触发事件,建立基于有限状态机的操作系统需求层形式化模型。本发明专利技术具有良好的复用性、适应性和灵活性,可以准确地描述操作系统的运行过程,为下一步形式化验证奠定基础,以便更早地发现是否有潜在的错误,有助于完成整个操作系统的形式化验证。

A Formal Modeling Method and Device for Operating System Requirement Layer Based on Finite State Machine

【技术实现步骤摘要】
一种基于有限状态机的操作系统需求层形式化建模方法及装置
本专利技术涉及一种基于有限状态机的操作系统需求层形式化建模方法及装置,属于嵌入式操作系统领域。
技术介绍
随着航天事业的迅猛发展,空间任务的规模及复杂度上升,空间飞行器上的软件规模也随之增加。这就对硬件提出更高的要求,但是空间计算机硬件资源有限,如何使计算机硬件资源得到更有效地利用就成为一个关键难题。因此,引入空间操作系统就成为了必然趋势。操作系统是紧靠硬件的第一层软件,是所有高层应用软件运行的支撑和基础,是计算机系统里最重要的软件。操作系统中的任何一个微小的错误都可能导致整个系统的崩溃,因此操作系统应该是一个高可靠、高可信的软件系统,这是保证所有应用软件能可靠运行的基础。传统软件开发方法为了避免错误的出现,采用软件测试的方法来检测软件中可能存在的隐患。测试要依靠测试人员设计测试用例,经过长时间的大量测试来检测系统是否有错误,可靠性和可信性只能靠堆积测试时间和测试量来加强。然而软件测试只能发现问题,不能确保测试用例涵盖所有情况,因此不能保证系统没有问题。形式化方法是建立在严格数学基础上的用以对软硬件系统进行说明、设计和验证的语言、技术和工具的总称,形式化验证是使用逻辑推理来保证计算机程序正确性的方法之一,可以通过形式化的程序逻辑来验证一个程序是否满足已给定的规范。对于空间飞行器来说,安全性是第一要素。操作系统是管理飞行器系统的基础核心,决定了硬件系统是否能够正常运行,应用软件是否能够完成预定任务。因此空间操作系统的形式化验证具有重大的理论和实际意义。目前,针对操作系统的形式化验证,主要针对边设计边验证的方法,构建的控制访问模型缺乏详细的需求层模型,无法完成从需求层开始的自顶向下的验证。
技术实现思路
本专利技术解决的技术问题是:克服现有技术的不足,提供了一种基于有限状态机的操作系统需求层形式化建模方法,确保准确地描述操作系统的运行过程,为下一步形式化验证奠定基础,以便更早地发现是否有潜在的错误,有助于完成整个操作系统的形式化验证。本专利技术的技术解决方案是:一种基于有限状态机的操作系统需求层形式化建模方法,包括:响应于对操作系统需求层进行建模的请求,从操作系统功能模块数据库中,获取操作系统对应的多个功能模块、各功能模块对应的至少两种子状态及引起各功能模块子状态发生变化的至少一种操作,其中所述操作系统功能模块数据库中存储有操作系统、功能模块、功能模块子状态及引起子状态发生变化的操作之间的对应关系;根据各所述功能子模块的子状态确定操作系统的系统状态,根据各所述子模块对应的引起子状态发生变化的操作,确定引起系统状态变化的触发事件;根据确定的系统状态及引起系统状态变化的触发事件,建立基于有限状态机的操作系统需求层形式化模型。在一可选实施例中,所述操作系统功能模块数据库的建立方法包括:根据操作系统需求文档,确定操作系统各功能模块及其对应的自然语言需求;根据所述各功能模块的自然语言需求确定各功能模块的子状态及引起各功能模块子状态变化的至少一种操作;建立操作系统、功能模块、功能模块子状态及引起子状态发生变化的操作之间的对应关系,得到操作系统功能模块数据库。在一可选实施例中,所述操作系统对应的多个功能模块包括任务管理模块、中断管理模块和时间管理模块。在一可选实施例中,所述任务管理模块的子状态包括运行态、就绪态和挂起态三种任务状态;所述中断管理模块的子状态包括控制周期中断和时间片中断两种状态;所述时间管理模块的子状态包括累计计数时间和任务启动点两种状态。在一可选实施例中,引起各功能模块子状态发生变化的至少一种操作,包括:引起任务管理模块子状态发生变化的操作包括任务挂起、任务调度、任务创建、任务重启动或任务恢复;引起中断管理模块子状态发生变化的操作包括开中断或关中断;引起时间管理模块子状态发生变化的操作包括累计计数或清零。在一可选实施例中,所述根据各所述功能子模块的子状态确定操作系统的系统状态,包括:根据所述任务管理模块的子状态确定操作系统的任务列表,所述任务列表中包含所述任务管理模块中各类任务的任务状态;根据所述中断管理模块和时间管理模块的子状态确定操作系统的时间片中断信息,所述时间片中断信息中包含时间片中断开关状态及累计计数的时间t;根据所述任务列表及时间片中断信息确定操作系统的系统状态。在一可选实施例中,所述引起系统状态变化的触发事件,包括:控制周期中断、时间片中断和任务提前结束。在一可选实施例中,根据确定的系统状态及引起系统状态变化的触发事件,建立基于有限状态机的操作系统需求层形式化模型,包括:操作系统初始化之后处于初始状态S0,所述操作系统中包括系统任务、N个应用任务和1个空闲任务,N≥3,此时初始任务列表中只有空闲任务处于运行态,其他任务处于挂起态;并且,时间片中断信息中时间片中断关、未开启累计计数;当控制周期中断发生,且时间片中断开、开始累计计数为0,则第1个应用任务的状态由挂起态变为运行态,空闲任务的状态由运行态变为就绪态,系统状态由初始状态S0转换到状态S1;在第1个应用任务运行,且时间片中断发生、累计计数的时间t为新任务启动点时,第1个应用任务的状态由运行态变为挂起态,第n个应用任务的状态由挂起态变为运行态,系统状态由状态S1转换为状态Sn,其中,2≤n≤N-1;在第1个应用任务提前结束,且时间片中断开时,第1个应用任务的状态由运行态变为挂起态,空闲任务的状态由就绪态变为运行态,系统状态由状态S1转换到状态M;在第n个应用任务运行,且时间片中断发生、累计计数的时间t不是新任务启动点时,第n个应用任务继续运行,其他任务状态保持不变,系统状态保持状态Sn;在第n个应用任务运行,且时间片中断发生、累计计数的时间t是新任务启动点时,第n个应用任务的状态由运行态变为挂起态,第n+1个应用任务的状态由挂起态变为运行态,系统状态由状态Sn变为Sn+1;空闲任务在运行,且时间片中断发生、累计计数的时间t不是新任务启动点时,空闲任务继续运行,其他任务状态保持不变,系统状态保持状态M;空闲任务在运行时,且时间片中断发生、累计计数的时间t是新任务启动点时,空闲任务状态由运行态变为就绪态,第n个应用任务或第n+1个应用任务由挂起态变为运行态,系统状态由状态M变为Sn或Sn+1;第n个应用任务提前结束时,第n个应用任务的状态由运行态变为挂起态,空闲任务的状态由就绪态变为运行态,系统状态由状态Sn转化为状态M;第n+1个应用任务提前结束时,第n+1个应用任务的状态由运行态变为挂起态,空闲任务的状态由就绪态变为运行态,系统状态由状态Sn+1转化为状态M;进入状态SN后,时间片中断关,第N个应用任务提前结束时,第N个应用任务的状态由运行态变为挂起态,空闲任务的状态由就绪态变为运行态,系统状态由状态SN转换到状态S0。在一可选实施例中,所述操作系统功能模块数据库中还包括操作系统全局性质,所述方法还包括:判断所述模型是否满足全局性质,若满足,则所述操作系统需求层可靠,若否,则所述操作系统需求层不可靠。本专利技术实施例还提供了一种基于有限状态机的操作系统需求层形式化建模装置,包括:获取模块,用于响应于对操作系统需求层进行建模的请求,从操作系统功能模块数据库中,获取操作系统对应的多个功能模块本文档来自技高网
...

【技术保护点】
1.一种基于有限状态机的操作系统需求层形式化建模方法,其特征在于,包括:响应于对操作系统需求层进行建模的请求,从操作系统功能模块数据库中,获取操作系统对应的多个功能模块、各功能模块对应的至少两种子状态及引起各功能模块子状态发生变化的至少一种操作,其中所述操作系统功能模块数据库中存储有操作系统、功能模块、功能模块子状态及引起子状态发生变化的操作之间的对应关系;根据各所述功能子模块的子状态确定操作系统的系统状态,根据各所述子模块对应的引起子状态发生变化的操作,确定引起系统状态变化的触发事件;根据确定的系统状态及引起系统状态变化的触发事件,建立基于有限状态机的操作系统需求层形式化模型。

【技术特征摘要】
1.一种基于有限状态机的操作系统需求层形式化建模方法,其特征在于,包括:响应于对操作系统需求层进行建模的请求,从操作系统功能模块数据库中,获取操作系统对应的多个功能模块、各功能模块对应的至少两种子状态及引起各功能模块子状态发生变化的至少一种操作,其中所述操作系统功能模块数据库中存储有操作系统、功能模块、功能模块子状态及引起子状态发生变化的操作之间的对应关系;根据各所述功能子模块的子状态确定操作系统的系统状态,根据各所述子模块对应的引起子状态发生变化的操作,确定引起系统状态变化的触发事件;根据确定的系统状态及引起系统状态变化的触发事件,建立基于有限状态机的操作系统需求层形式化模型。2.根据权利要求1所述的基于有限状态机的操作系统需求层形式化建模方法,其特征在于,所述操作系统功能模块数据库的建立方法包括:根据操作系统需求文档,确定操作系统各功能模块及其对应的自然语言需求;根据所述各功能模块的自然语言需求确定各功能模块的子状态及引起各功能模块子状态变化的至少一种操作;建立操作系统、功能模块、功能模块子状态及引起子状态发生变化的操作之间的对应关系,得到操作系统功能模块数据库。3.根据权利要求1或2所述的基于有限状态机的操作系统需求层形式化建模方法,其特征在于,所述操作系统对应的多个功能模块包括任务管理模块、中断管理模块和时间管理模块。4.根据权利要求3所述的基于有限状态机的操作系统需求层形式化建模方法,其特征在于:所述任务管理模块的子状态包括运行态、就绪态和挂起态三种任务状态;所述中断管理模块的子状态包括控制周期中断和时间片中断两种状态;所述时间管理模块的子状态包括累计计数时间和任务启动点两种状态。5.根据权利要求4所述的基于有限状态机的操作系统需求层形式化建模方法,其特征在于,引起各功能模块子状态发生变化的至少一种操作,包括:引起任务管理模块子状态发生变化的操作包括任务挂起、任务调度、任务创建、任务重启动或任务恢复;引起中断管理模块子状态发生变化的操作包括开中断或关中断;引起时间管理模块子状态发生变化的操作包括累计计数或清零。6.根据权利要求5所述的基于有限状态机的操作系统需求层形式化建模方法,其特征在于,所述根据各所述功能子模块的子状态确定操作系统的系统状态,包括:根据所述任务管理模块的子状态确定操作系统的任务列表,所述任务列表中包含所述任务管理模块中各类任务的任务状态;根据所述中断管理模块和时间管理模块的子状态确定操作系统的时间片中断信息,所述时间片中断信息中包含时间片中断开关状态及累计计数的时间t;根据所述任务列表及时间片中断信息确定操作系统的系统状态。7.根据权利要求6所述的基于有限状态机的操作系统需求层形式化建模方法,其特征在于,所述引起系统状态变化的触发事件,包括:控制周期中断、时间片中断和任务提前结束。8.根据权利要求7所述的基于有限状态机的操作系统需求层形式化建模方法,其特征在于,根据确定的系统状态及引起系统状态变化的触发事件,建立基于有限状态机的操作系统需求层形式化模型,包括:操作系统初始化之后处于初始状态S0,所述操作系统中包括系统任务、N个应用任务...

【专利技术属性】
技术研发人员:乔磊张锦坤杨孟飞徐建杨桦刘鸿瑾刘波
申请(专利权)人:北京控制工程研究所
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1