CN106293986A - 一种基于虚拟中断的故障监控处理装置与方法 - Google Patents

一种基于虚拟中断的故障监控处理装置与方法 Download PDF

Info

Publication number
CN106293986A
CN106293986A CN201610664051.3A CN201610664051A CN106293986A CN 106293986 A CN106293986 A CN 106293986A CN 201610664051 A CN201610664051 A CN 201610664051A CN 106293986 A CN106293986 A CN 106293986A
Authority
CN
China
Prior art keywords
subregion
fault
task
module
processing module
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201610664051.3A
Other languages
English (en)
Other versions
CN106293986B (zh
Inventor
颜纪迅
宋科璞
武方方
徐建军
朱立平
郑小宁
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xian Flight Automatic Control Research Institute of AVIC
Original Assignee
Xian Flight Automatic Control Research Institute of AVIC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Xian Flight Automatic Control Research Institute of AVIC filed Critical Xian Flight Automatic Control Research Institute of AVIC
Priority to CN201610664051.3A priority Critical patent/CN106293986B/zh
Publication of CN106293986A publication Critical patent/CN106293986A/zh
Application granted granted Critical
Publication of CN106293986B publication Critical patent/CN106293986B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明涉及一种基于虚拟中断的故障监控处理装置与方法,对于安全关键***,为了让计算机使用者能够在处理器的用户态进行处理器异常后的故障处理,本发明提出了一种基于虚拟中断的故障监控处理装置,包括:故障监控上报模块,***级故障调度模块,***级缺省故障处理模块,分区虚拟中断控制器模块,分区故障处理表,分区缺省故障处理模块,任务故障处理表,任务故障处理模块,用户级故障调度模块。当***运行出现故障,在确定为用户故障的情况下,通过查询任务故障处理表与分区故障处理表,确定使用的故障处理模块,并将该故障处理模块作为分区的虚拟中断处理函数,进入处理器用户态进行相应的故障处理。

Description

一种基于虚拟中断的故障监控处理装置与方法
技术领域
本发明属于嵌入式计算机的使用技术,具体涉及一种基于虚拟中断的故障监控处理装置与方法。
背景技术
对于安全关键***,操作***的一个重要作用,是进行故障的隔离和恢复,让用户应用的任务,在发生故障的情况下,故障不会蔓延以致对***造成影响,同时为用户提供故障恢复的手段。
故障的隔离,可以由操作***的时间确定性和空间隔离性来实现。时间确定性保证了任务运行超时不会影响其它任务;空间隔离性则保证任务操作非法地址不会影响其它任务的空间。
以上两个特性,其着眼点仅在于隔绝任务故障的蔓延,将其控制在一定的范围内,对发生故障的任务本身并没有进行处理。故障的处理,则是在发现故障的基础上,让用户可以有机会对***进行部分重启和重新部署,从而恢复***的功能,或者使***降级使用。
操作***的健康监控功能,就是操作***针对***运行中发生的各种异常,提供的各种处理及恢复机制。通常的异常处理,对于某一种硬件异常,仅具有唯一的处理方式。而通过操作***对任务的时间和空间都进行了隔离后,就可以分层次,分任务地进行相应异常处理。
对于安全关键***,其健康监控应该达到以下几个目标:
1.)异常的处理可分层级来完成,若内核态运行代码导致异常,应该由在内核态下的***级处理来完成;而如果是用户任务引发的异常,可以在用户态下由用户挂接响应函数进行处理;
2.)任务级的异常处理不会影响***按照时间规划的正常调度,如果异常的发生仅影响某个任务,则应该在不影响其它任务的情况下对此任务故障进行处理和恢复;
3.)***级的故障处理方式可以根据具体要求,进行***重启、关闭或降级重构处理,而对任务级异常,可能的处理方式包括:忽略、记录、重启、挂起及任务替换。
针对以上的需求,需要提出一种方法,能够实现操作***的任务级和***级健康监控功能,达到安全关键***对于任务故障恢复功能的要求,最终提升***的整体性能。
发明内容
本发明的目的是:对于安全关键***,为了让计算机使用者能够在处理器的用户态进行处理器异常后的故障处理,提出了一种基于虚拟中断的用户级故障处理技术。
本发明的技术方案:
一种基于虚拟中断的故障监控处理装置,其特征在于,包括:故障监控上报模块,***级故障调度模块,***级缺省故障处理模块,分区虚拟中断控制器模块,分区故障处理表,分区缺省故障处理模块,任务故障处理表,任务故障处理模块,用户级故障调度模块;
所述的故障监控上报模块,是在***运行过程中,能够发现***发生的故障,并上报***级故障调度模块;
所述的***级故障调度模块,是***发生了故障后,用来判断当前故障是***级故障还是用户级故障;
所述的***级缺省故障处理模块用于处理***故障;
所述的分区虚拟中断控制器模块,用于在发生用户级故障时,产生分区内虚拟中断,使得用户能够在用户态进行故障处理;
所述的分区故障处理表,每一个表项对应分区虚拟中断控制器的一个分区内虚拟中断的处理函数;
所述的分区缺省故障处理模块,根据分区故障处理表的定义,执行分区缺省的故障处理程序;
所述的任务故障处理表,当任务运行过程中出现故障后,由该表决定需要的任务故障处理模块;
所述的任务故障处理模块,根据任务模块处理表的定义,执行任务故障处理程序;
所述的用户级故障调度模块,在发生用户级故障时,根据分区故障处理表以及任务故障处理表,对故障处理模块进行选择。
一种基于虚拟中断的故障监控处理方法,其特征在于,包括以下步骤:
步骤一:在***运行分区初始化过程中,分区级用户定义缺省的分区级故障处理模块,由分区级用户选择适当的分区级故障处理模块,将分区级故障处理模块地址填入到分区故障处理表中;任务级用户定义任务的故障处理模块,并在任务初始化过程中,填入到任务故障处理表中;
步骤二:在用户级任务运行过程中发生故障后,由故障监控上报模块中断当前的***运行过程,进入***级故障调度模块;
步骤三:***级故障调度模块判断当前发生的故障是否为用户级故障,若是,则进入步骤四,若否进入步骤八;
步骤四:用户级故障调度模块检查发生故障的任务所处分区是否具备有效的分区虚拟中断控制器模块,若存在,则进入步骤五,否则进入步骤八;
步骤五 用户级故障调度模块检查发生故障任务是否具备有效的任务故障处理表,若具备,则将任务故障处理表中的所存储的任务故障处理模块地址,填充在分区内虚拟中断控制器相应的分区虚拟中断响应函数地址上,并转入步骤七,否则进入步骤六;
步骤六:用户级故障调度模块检查发生故障任务所在的分区是否具备有效的分区故障处理表,若具备,则将分区故障处理表中所存储的分区缺省故障处理模块地址,填充在分区内虚拟中断控制器相应的分区虚拟中断响应函数地址上,并转入步骤七,否则转入步骤八;
步骤七:用户级故障调度模块正常返回,转入处理器用户态使用分区内虚拟中断控制器相应分区虚拟中断响应函数中,进行相应的用户级故障处理;
步骤八:使用***级缺省故障处理模块进行故障处理。
本发明的有益效果:用户可以安全的在处理器的用户态,进行用户级故障后的处理,而不会因为用户级故障中的缺陷,而导致整个***运行的失效,提高了整个***的可靠性,同时基于虚拟中断的方式,用户级故障处理的设计易于实现,且处理过程对整个***的调度影响较小,减少了***的复杂度。
附图说明
图1为一种基于虚拟中断的故障监控处理装置的示意图;
图2为一种基于虚拟中断的故障监控处理方法的流程图。
具体实施方式
如图1所示,提出一种基于虚拟中断的故障监控处理装置,其特征在于,包括:故障监控上报模块,***级故障调度模块,***级缺省故障处理模块,分区虚拟中断控制器模块,分区故障处理表,分区缺省故障处理模块,任务故障处理表,任务故障处理模块,用户级故障调度模块;
所述的故障监控上报模块,是在***运行过程中,能够发现***发生的故障,并上报***级故障调度模块;在本实施例中,故障发现的机制可以包括处理器硬件中断和内部异常、操作***中的***运行检测模块,以及用户应用的故障检测模块;
所述的***级故障调度模块,是***发生了故障后,用来判断当前故障是***级故障还是用户级故障;
所述的***级缺省故障处理模块用于处理***故障;
所述的分区虚拟中断控制器模块,用于在发生用户级故障时,产生分区内虚拟中断,使得用户能够在用户态进行故障处理;
所述的分区故障处理表,每一个表项对应分区虚拟中断控制器的一个分区内虚拟中断的处理函数;
所述的分区缺省故障处理模块,根据分区故障处理表的定义,执行分区缺省的故障处理程序;在本实施例中,分区缺省故障处理模块的处理方式可为忽略本次故障,仅记录故障,分区重启等方式;
所述的任务故障处理表,当任务运行过程中出现故障后,由该表决定需要的任务故障处理模块;
所述的任务故障处理模块,根据任务模块处理表的定义,执行任务故障处理程序;在本实施例中,任务故障处理模块的处理方式可为忽略本次故障,仅记录故障,任务重启,任务挂起,分区重启等方式;
所述的用户级故障调度模块,在发生用户级故障时,根据分区故障处理表以及任务故障处理表,对故障处理模块进行选择。
如图2所示,提出一种基于虚拟中断的故障监控处理方法,其特征在于,包括以下步骤:
步骤一:在***运行分区初始化过程中,分区级用户定义缺省的分区级故障处理模块,由分区级用户选择适当的分区级故障处理模块,将分区级故障处理模块地址填入到分区故障处理表中;任务级用户定义任务的故障处理模块,并在任务初始化过程中,填入到任务故障处理表中;
步骤二:在用户级任务运行过程中发生故障后,由故障监控上报模块中断当前的***运行过程,进入***级故障调度模块;
步骤三:***级故障调度模块判断当前发生的故障是否为用户级故障,若是,则进入步骤四,若否进入步骤八;
步骤四:用户级故障调度模块检查发生故障的任务所处分区是否具备有效的分区虚拟中断控制器模块,若存在,则进入步骤五,否则进入步骤八;
步骤五 用户级故障调度模块检查发生故障任务是否具备有效的任务故障处理表,若具备,则将任务故障处理表中的所存储的任务故障处理模块地址,填充在分区内虚拟中断控制器相应的分区虚拟中断响应函数地址上,并转入步骤七,否则进入步骤六;
步骤六:用户级故障调度模块检查发生故障任务所在的分区是否具备有效的分区故障处理表,若具备,则将分区故障处理表中所存储的分区缺省故障处理模块地址,填充在分区内虚拟中断控制器相应的分区虚拟中断响应函数地址上,并转入步骤七,否则转入步骤八;
步骤七:用户级故障调度模块正常返回,转入处理器用户态使用分区内虚拟中断控制器相应分区虚拟中断响应函数中,进行相应的用户级故障处理;
步骤八:使用***级缺省故障处理模块进行故障处理。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。

Claims (2)

1.一种基于虚拟中断的故障监控处理装置,其特征在于,包括:故障监控上报模块,***级故障调度模块,***级缺省故障处理模块,分区虚拟中断控制器模块,分区故障处理表,分区缺省故障处理模块,任务故障处理表,任务故障处理模块,用户级故障调度模块;
所述的故障监控上报模块,是在***运行过程中,能够发现***发生的故障,并上报***级故障调度模块;
所述的***级故障调度模块,是***发生了故障后,用来判断当前故障是***级故障还是用户级故障;
所述的***级缺省故障处理模块用于处理***故障;
所述的分区虚拟中断控制器模块,用于在发生用户级故障时,产生分区内虚拟中断,使得用户能够在用户态进行故障处理;
所述的分区故障处理表,每一个表项对应分区虚拟中断控制器的一个分区内虚拟中断的处理函数;
所述的分区缺省故障处理模块,根据分区故障处理表的定义,执行分区缺省的故障处理程序;
所述的任务故障处理表,当任务运行过程中出现故障后,由该表决定需要的任务故障处理模块;
所述的任务故障处理模块,根据任务模块处理表的定义,执行任务故障处理程序;
所述的用户级故障调度模块,在发生用户级故障时,根据分区故障处理表以及任务故障处理表,对故障处理模块进行选择。
2.一种基于虚拟中断的故障监控处理方法,其特征在于,包括以下步骤:
步骤一:在***运行分区初始化过程中,分区级用户定义缺省的分区级故障处理模块,由分区级用户选择适当的分区级故障处理模块,将分区级故障处理模块地址填入到分区故障处理表中;任务级用户定义任务的故障处理模块,并在任务初始化过程中,填入到任务故障处理表中;
步骤二:在用户级任务运行过程中发生故障后,由故障监控上报模块中断当前的***运行过程,进入***级故障调度模块;
步骤三:***级故障调度模块判断当前发生的故障是否为用户级故障,若是,则进入步骤四,若否进入步骤八;
步骤四:用户级故障调度模块检查发生故障的任务所处分区是否具备有效的分区虚拟中断控制器模块,若存在,则进入步骤五,否则进入步骤八;
步骤五用户级故障调度模块检查发生故障任务是否具备有效的任务故障处理表,若具备,则将任务故障处理表中的所存储的任务故障处理模块地址,填充在分区内虚拟中断控制器相应的分区虚拟中断响应函数地址上,并转入步骤七,否则进入步骤六;
步骤六:用户级故障调度模块检查发生故障任务所在的分区是否具备有效的分区故障处理表,若具备,则将分区故障处理表中所存储的分区缺省故障处理模块地址,填充在分区内虚拟中断控制器相应的分区虚拟中断响应函数地址上,并转入步骤七,否则转入步骤八;
步骤七:用户级故障调度模块正常返回,转入处理器用户态使用分区内虚拟中断控制器相应分区虚拟中断响应函数中,进行相应的用户级故障处理;
步骤八:使用***级缺省故障处理模块进行故障处理。
CN201610664051.3A 2016-08-12 2016-08-12 一种基于虚拟中断的故障监控处理装置与方法 Active CN106293986B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610664051.3A CN106293986B (zh) 2016-08-12 2016-08-12 一种基于虚拟中断的故障监控处理装置与方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610664051.3A CN106293986B (zh) 2016-08-12 2016-08-12 一种基于虚拟中断的故障监控处理装置与方法

Publications (2)

Publication Number Publication Date
CN106293986A true CN106293986A (zh) 2017-01-04
CN106293986B CN106293986B (zh) 2019-01-25

Family

ID=57670019

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610664051.3A Active CN106293986B (zh) 2016-08-12 2016-08-12 一种基于虚拟中断的故障监控处理装置与方法

Country Status (1)

Country Link
CN (1) CN106293986B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108255591A (zh) * 2017-12-07 2018-07-06 中国航空工业集团公司西安航空计算技术研究所 一种分区操作***的统一异常处理方法
CN111176869A (zh) * 2019-08-01 2020-05-19 腾讯科技(深圳)有限公司 超时检测方法、装置、设备及存储介质
CN112379977A (zh) * 2020-07-10 2021-02-19 中国航空工业集团公司西安飞行自动控制研究所 一种基于时间触发的任务级故障处理方法
CN112380108A (zh) * 2020-07-10 2021-02-19 中国航空工业集团公司西安飞行自动控制研究所 一种面向分区空间隔离的全自动测试方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020178397A1 (en) * 2001-05-23 2002-11-28 Hitoshi Ueno System for managing layered network
CN103049318A (zh) * 2011-10-11 2013-04-17 北京科银京成技术有限公司 分区操作***的虚拟中断算法
CN103605581A (zh) * 2013-11-29 2014-02-26 中国航空工业集团公司第六三一研究所 一种分布式计算机***故障处理流程
CN104360868A (zh) * 2014-11-29 2015-02-18 中国航空工业集团公司第六三一研究所 一种大型飞机综合处理平台中的多级故障管理方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020178397A1 (en) * 2001-05-23 2002-11-28 Hitoshi Ueno System for managing layered network
CN103049318A (zh) * 2011-10-11 2013-04-17 北京科银京成技术有限公司 分区操作***的虚拟中断算法
CN103605581A (zh) * 2013-11-29 2014-02-26 中国航空工业集团公司第六三一研究所 一种分布式计算机***故障处理流程
CN104360868A (zh) * 2014-11-29 2015-02-18 中国航空工业集团公司第六三一研究所 一种大型飞机综合处理平台中的多级故障管理方法

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108255591A (zh) * 2017-12-07 2018-07-06 中国航空工业集团公司西安航空计算技术研究所 一种分区操作***的统一异常处理方法
CN108255591B (zh) * 2017-12-07 2021-10-15 中国航空工业集团公司西安航空计算技术研究所 一种分区操作***的统一异常处理方法
CN111176869A (zh) * 2019-08-01 2020-05-19 腾讯科技(深圳)有限公司 超时检测方法、装置、设备及存储介质
CN112379977A (zh) * 2020-07-10 2021-02-19 中国航空工业集团公司西安飞行自动控制研究所 一种基于时间触发的任务级故障处理方法
CN112380108A (zh) * 2020-07-10 2021-02-19 中国航空工业集团公司西安飞行自动控制研究所 一种面向分区空间隔离的全自动测试方法
CN112380108B (zh) * 2020-07-10 2023-03-14 中国航空工业集团公司西安飞行自动控制研究所 一种面向分区空间隔离的全自动测试方法

Also Published As

Publication number Publication date
CN106293986B (zh) 2019-01-25

Similar Documents

Publication Publication Date Title
TWI746512B (zh) 實體機器故障分類處理方法、裝置和虛擬機器恢復方法、系統
CN106293986A (zh) 一种基于虚拟中断的故障监控处理装置与方法
CN106789306B (zh) 通信设备软件故障检测收集恢复方法和***
CN103544092B (zh) 一种基于arinc653标准机载电子设备健康监控***
US8806278B2 (en) Method and device for autonomously diagnosing and remotely controlling a computer or computer-aided system
US7917811B2 (en) Virtual computer system
CN102681909B (zh) 一种基于内存错误的服务器预警方法
CN105095001A (zh) 分布式环境下虚拟机异常恢复方法
CN104199753B (zh) 一种虚拟机应用服务故障恢复***及其故障恢复方法
CN107357671A (zh) 一种故障处理方法、相关装置及计算机
CN103324565B (zh) 日志监控方法
CN103455395A (zh) 一种硬盘故障的检测方法及装置
CN102619684B (zh) 故障诊断方法及***
CN105024879A (zh) 虚拟机故障检测、恢复***及虚拟机检测、恢复、启动方法
CN102779094A (zh) 终端和软件异常测试方法
CN110955571B (zh) 面向车规级芯片功能安全的故障管理***
CN103559108A (zh) 一种基于虚拟化实现主备故障自动恢复的方法及***
CN109023835B (zh) 一种洗衣机控制方法、装置、存储介质及洗衣机
CN103365267B (zh) 一种具有自恢复功能的变电站间隔层设备及其实现方法
CN103605581A (zh) 一种分布式计算机***故障处理流程
CN102945197B (zh) 一种控制模块与显示模块之间的通信方法及工控显示装置
CN103178977A (zh) 计算机***及计算机***的开机管理方法
CN103902401B (zh) 基于监控的虚拟机容错方法及装置
CN107528705B (zh) 故障处理方法及装置
CN103995759B (zh) 基于核内外协同的高可用计算机***故障处理方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant