[发明专利]一种系统状态管理方法及装置在审
申请号: | 202110582436.6 | 申请日: | 2021-05-27 |
公开(公告)号: | CN113051294A | 公开(公告)日: | 2021-06-29 |
发明(设计)人: | 杨帆;杨名 | 申请(专利权)人: | 南京甄视智能科技有限公司 |
主分类号: | G06F16/245 | 分类号: | G06F16/245;G06F16/23 |
代理公司: | 北京德崇智捷知识产权代理有限公司 11467 | 代理人: | 杨楠 |
地址: | 210000 江苏省*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 系统 状态 管理 方法 装置 | ||
本发明公开了一种系统状态管理方法,用一个初始状态值为0的属性字段来记录系统的多个状态,并用2的不同正整数次幂分别作为所述多个状态的定义值;当某个状态产生/消失时,用该状态的定义值与所述属性字段的当前值进行或/异或运算,并用运算结果对所述属性字段的当前值进行更新。本发明还公开了一种系统状态管理装置。相比现有技术,本发明利用一个属性字段就可以标识多种不同类别的状态,无需增加额外的属性字段进行标识,同时还可以做到不同类别状态值发生改变时,相互之间不影响,此外还兼顾多种条件查询。
技术领域
本发明涉及一种系统状态管理方法。
背景技术
在某些业务场景中,一个系统需要同时记录多种类别的状态,同时还要求不同类别状态的值不能相互影响,而且方便搜索,不影响对某种状态的记录的查询效率。例如:一个设备的异常状态类别分为火警、电量不足、传感器故障、温度报警、指示灯故障等,设备可以同时处于电量不足和温度报警两种状态,而当温度报警解除时,仅温度报警该状态的值会恢复正常,电量不足的状态值不发生变化。又如,某个航空器飞行控制系统的需要实时记录燃油泄漏、起落架机械故障、高度仪表失灵等多种不同类型故障产生及排除。
常规的解决办法为,将这些状态分别定义属性字段来标识,每次增加状态类别,需要增加新的属性字段来标识,当状态类别增多时,标识状态类别的属性字段会跟着变多,无法做到动态扩展。
发明内容
本发明所要解决的技术问题在于克服现有技术不足,提供一种系统状态管理方法,利用一个属性字段就可以标识多种不同类别的状态,无需增加额外的属性字段进行标识,同时还可以做到不同类别状态值发生改变时,相互之间不影响,此外还兼顾多种条件查询。
本发明具体采用以下技术方案解决上述技术问题:
一种系统状态管理方法,用一个初始状态值为0的属性字段来记录系统的多个状态,并用2的不同正整数次幂分别作为所述多个状态的定义值;当某个状态产生/消失时,用该状态的定义值与所述属性字段的当前值进行或/异或运算,并用运算结果对所述属性字段的当前值进行更新。
进一步地,通过将某一状态的定义值与所述属性字段的当前值进行与运算来进行所述状态的查询:如运算结果大于0,则系统处于所述状态中,否则,系统不处于所述状态中。
优选地,所述系统为设备,所述多个状态为设备的多个不同类别的异常状态。
根据同一发明构思还可以得到以下技术方案:
一种系统状态管理装置,包括:
一个属性字段,用来记录系统的多个状态,其初始状态值为0;
定义值存储模块,存储有所述多个状态的定义值,所述多个状态的定义值分别为2的不同正整数次幂;
状态记录模块,用于当某个状态产生/消失时,用该状态的定义值与所述属性字段的当前值进行或/异或运算,并用运算结果对所述属性字段的当前值进行更新。
进一步地,该装置还包括:
状态查询模块,用于通过将某一状态的定义值与所述属性字段的当前值进行与运算来进行所述状态的查询:如运算结果大于0,则系统处于所述状态中,否则,系统不处于所述状态中。
优选地,所述系统为设备,所述多个状态为设备的多个不同类别的异常状态。
相比现有技术,本发明技术方案具有以下有益效果:
本发明采用了一种特殊的状态编码方式,用一个初始状态值为0的属性字段来记录系统的多个状态,用2的不同正整数次幂分别作为所述多个状态的定义值,并通过最简单的逻辑运算进行状态记录的更新和查询,从而可实现利用一个属性字段就可以标识多种不同类别的状态,无需增加额外的属性字段进行标识,同时还可以做到不同类别状态值发生改变时,相互之间不影响,此外还兼顾多种条件查询。
具体实施方式
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京甄视智能科技有限公司,未经南京甄视智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110582436.6/2.html,转载请声明来源钻瓜专利网。