CN114780280B - 一种ecmo故障快速恢复方法及系统 - Google Patents

一种ecmo故障快速恢复方法及系统 Download PDF

Info

Publication number
CN114780280B
CN114780280B CN202210524608.9A CN202210524608A CN114780280B CN 114780280 B CN114780280 B CN 114780280B CN 202210524608 A CN202210524608 A CN 202210524608A CN 114780280 B CN114780280 B CN 114780280B
Authority
CN
China
Prior art keywords
snapshot
watchdog
feeding
period
thread
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.)
Active
Application number
CN202210524608.9A
Other languages
English (en)
Other versions
CN114780280A (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.)
Henan Provincial Peoples Hospital
Original Assignee
Henan Provincial Peoples Hospital
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 Henan Provincial Peoples Hospital filed Critical Henan Provincial Peoples Hospital
Priority to CN202210524608.9A priority Critical patent/CN114780280B/zh
Publication of CN114780280A publication Critical patent/CN114780280A/zh
Application granted granted Critical
Publication of CN114780280B publication Critical patent/CN114780280B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/0757Error or fault detection not based on redundancy by exceeding limits by exceeding a time limit, i.e. time-out, e.g. watchdogs
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61MDEVICES FOR INTRODUCING MEDIA INTO, OR ONTO, THE BODY; DEVICES FOR TRANSDUCING BODY MEDIA OR FOR TAKING MEDIA FROM THE BODY; DEVICES FOR PRODUCING OR ENDING SLEEP OR STUPOR
    • A61M1/00Suction or pumping devices for medical purposes; Devices for carrying-off, for treatment of, or for carrying-over, body-liquids; Drainage systems
    • A61M1/14Dialysis systems; Artificial kidneys; Blood oxygenators ; Reciprocating systems for treatment of body fluids, e.g. single needle systems for hemofiltration or pheresis
    • A61M1/16Dialysis systems; Artificial kidneys; Blood oxygenators ; Reciprocating systems for treatment of body fluids, e.g. single needle systems for hemofiltration or pheresis with membranes
    • A61M1/1698Blood oxygenators with or without heat-exchangers
    • 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/0793Remedial or corrective actions
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H40/00ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices
    • G16H40/60ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the operation of medical equipment or devices
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Theoretical Computer Science (AREA)
  • Biomedical Technology (AREA)
  • Public Health (AREA)
  • Quality & Reliability (AREA)
  • Emergency Medicine (AREA)
  • Heart & Thoracic Surgery (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Urology & Nephrology (AREA)
  • Animal Behavior & Ethology (AREA)
  • Veterinary Medicine (AREA)
  • Vascular Medicine (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Hematology (AREA)
  • Anesthesiology (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Epidemiology (AREA)
  • Medical Informatics (AREA)
  • Primary Health Care (AREA)
  • Debugging And Monitoring (AREA)
  • Retry When Errors Occur (AREA)

Abstract

本发明提供了一种ECMO故障快速恢复方法及系统,设置软件看门狗和硬件看门狗,其中软件看门狗用于监测每个进程,当进程中的喂狗线程没有向软件看门狗发送喂狗信号时,利用快照对进程恢复,硬件看门狗用于监测整个ECMO设备,当没有向硬件看门狗发送喂狗信号,硬件看门狗触发复位信号,使得整个ECMO设备复位。此外,本发明是针对每个处于非运行态的进程的内存打快照,当ECMO中某个进程出现问题,能及时利用进程快照恢复。本发明采用快照结合软件看门狗以及硬件看门狗的方式,在非整个系统故障时,对进程恢复,当整个系统故障时,对整个系统进行复位,提高了ECMO设备的稳定性,以及在发生故障恢复的速度。

Description

一种ECMO故障快速恢复方法及系统
技术领域
本发明涉及故障恢复领域,尤其涉及ECMO故障快速恢复方法及系统。
背景技术
呼吸是人体存活的重要指标之一,短暂的呼吸停止也会给人体带来很多伤害,甚至是不可逆的伤害,体外膜肺氧合(Extracorporeal Membrane Oxygenation,ECMO)是采用膜肺和血泵,将人体的血液在膜肺中和氧气结合,暂时替代人体肺的功能,是体外辅助设备之一,已经在急性呼吸功能衰竭、心脏骤停等疾病的治疗中发挥重要作用。ECMO系统除了核心部件体外膜肺和血泵外,还包括内插管、供养设备、监测系统等,从而保障整个ECMO正常运行。ECMO实际是模拟人体肺部呼吸的过程,将血液和氧气结合,并排除二氧化碳。
但是任何系统都有BUG,都有发生故障的几率,而且芯片、存储器等受到外界的干扰也会发生错误,程序跑飞就是一种常见的故障类型。当发生故障时,对于一些实时性要求不高的系统,可以通过人工重启的方式恢复系统,对于实时性要求高的系统,可以通过看门狗等技术及时重启系统。ECMO系统作为重要的呼吸辅助设备,即使是短暂的故障也会产生严重的后果,而且ECMO是精确控制设备,如何保障ECMO设备稳定运行,以及能够快速的从故障中恢复是本领域亟待解决的问题。
发明内容
为了保障ECMO设备稳定运行,且在发生故障时能尽快从故障中恢复,第一个方面,本发明提供了一种ECMO故障快速恢复方法,所述方法包括以下步骤:
S1,当ECMO嵌入式操作系统中进程启动时向软件看门狗注册,在进程中开启一个喂狗线程,根据进程中线程的优先级和操作系统的时间片确定喂狗线程向软件看门狗发送喂狗信号的周期;
S2,当满足打快照的条件时,获取处于运行态的线程所在的进程,对非所述进程的其他进程占用的内存进行快照得到第一快照,当所述进程中的所有线程都处于非运行态时,对所述进程占用的内存进行快照得到第二快照,将第一快照和第二快照合并生成以第一快照生成时间命名的快照文件;
S3,当超过所述周期没有喂狗时,判断所述喂狗线程所在的进程中是否有处于运行态的线程,若是,则待所述喂狗线程所在的进程中线程都处于非运行态时,利用所述快照文件对所述进程进行快照恢复,否则,强制停止所述喂狗线程所在的进程,利用所述快照文件对所述进程进行快照恢复。
优选地,所述根据进程中线程的优先级和操作系统的时间片确定喂狗线程向软件看门狗发送喂狗信号的周期,具体为:
获取所述操作系统线程优先级等级的中间值,根据公式
Figure BDA0003643636650000021
得到所述周期,其中
Figure BDA0003643636650000022
表示进程中所有线程的优先级平均值,Mpriority表示所述中间值,Slice表示所述时间片,A为系数。
优选地,所述方法还包括步骤S4,所述S4为:
计算所有向软件看门狗中注册的进程发送喂狗信号的周期的平均值,根据灌注流量和周期平均值得到喂硬件看门狗的周期,若超过喂硬件看门狗的周期没有向硬件看门狗发送喂狗信号,则采用所述快照文件进行恢复。
优选地,所述根据灌注流量和周期平均值得到喂硬件看门狗的周期,具体为:
计算灌注流量与全流量的比值,根据公式
Figure BDA0003643636650000023
计算得到喂硬件看门狗的周期Thard,其中rperfusion表示灌注流量与全流量的比值,
Figure BDA0003643636650000024
表示所有向软件看门狗中注册的进程发送喂狗信号的周期的平均值,B为系数。
优选地,所述利用所述快照文件对所述进程进行快照恢复,具体为:
从所述快照文件中找到与所述进程的进程号对应的区域,将所述区域恢复到内存中的空闲区域,等待线程调度。
优选地,所述打快照的条件为:
ECMO设备的参数被手动调整并运行第一预设时间,或者距离上次打快照的时间等于打快照周期。
另外,本发明还提供了一种ECMO故障快速恢复系统,所述系统包括以下模块:
软件看门狗模块,用于当ECMO嵌入式操作系统中进程启动时向软件看门狗注册,在进程中开启一个喂狗线程,根据进程中线程的优先级和操作系统的时间片确定喂狗线程向软件看门狗发送喂狗信号的周期;
快照模块,用于当满足打快照的条件时,获取处于运行态的线程所在的进程,对非所述进程的其他进程占用的内存进行快照得到第一快照,当所述进程中的所有线程都处于非运行态时,对所述进程占用的内存进行快照得到第二快照,将第一快照和第二快照合并生成以第一快照生成时间命名的快照文件;
恢复模块,用于当超过所述周期没有喂狗时,判断所述喂狗线程所在的进程中是否有处于运行态的线程,若是,则待所述喂狗线程所在的进程中线程都处于非运行态时,利用所述快照文件对所述进程进行快照恢复,否则,强制停止所述喂狗线程所在的进程,利用所述快照文件对所述进程进行快照恢复。
优选地,所述根据进程中线程的优先级和操作系统的时间片确定喂狗线程向软件看门狗发送喂狗信号的周期,具体为:
获取所述操作系统线程优先级等级的中间值,根据公式
Figure BDA0003643636650000031
得到所述周期,其中
Figure BDA0003643636650000032
表示进程中所有线程的优先级平均值,Mpriority表示所述中间值,Slice表示所述时间片,A为系数。
优选地,所述系统还包括硬件看门狗模块,
所述硬件看门狗模块,用于计算所有向软件看门狗中注册的进程发送喂狗信号的周期的平均值,根据灌注流量和周期平均值得到喂硬件看门狗的周期,若超过喂硬件看门狗的周期没有向硬件看门狗发送喂狗信号,则采用所述快照文件进行恢复;
优选地,所述根据灌注流量和周期平均值得到喂硬件看门狗的周期,具体为:
计算灌注流量与全流量的比值,根据公式
Figure BDA0003643636650000033
计算得到喂硬件看门狗的周期Thard,其中rperfusion表示灌注流量与全流量的比值,
Figure BDA0003643636650000034
表示所有向软件看门狗中注册的进程发送喂狗信号的周期的平均值,B为系数。
优选地,所述利用所述快照文件对所述进程进行快照恢复,具体为:
从所述快照文件中找到与所述进程的进程号对应的区域,将所述区域恢复到内存中的空闲区域,等待线程调度。
优选地,所述打快照的条件为:
ECMO设备的参数被手动调整并运行第一预设时间,或者距离上次打快照的时间等于打快照周期。
最后,本发明还提供了一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器实现如上所述的方法。
本发明根据进程中线程的状态对内存进行快照,并根据进程中线程的优先级和操作系统的时间片确定喂狗线程向软件看门狗发送喂狗信号的周期,当软件看门狗没有接收到进程发生的喂狗信号,则利用快照对进程进行恢复,避免了由于单个进程死锁或者程序跑飞导致对整个内存的快照恢复;此外,计算所有向软件看门狗中注册的进程发送喂狗信号的周期的平均值,根据灌注流量和周期平均值得到喂硬件看门狗的周期,当灌注流量大时,喂硬件看门狗的周期小,保障ECMO设备能在发生软件看门狗无法恢复的故障时,及时对ECMO设备进行复位。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为实施例1的流程图;
图2为实施例3的流程图;
图3为实施例9的结构图。
具体实施方式
在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1
本发明提供了一种ECMO故障快速恢复方法,如图1所示,所述方法包括以下步骤:
S1,当ECMO嵌入式操作系统中进程启动时向软件看门狗注册,在进程中开启一个喂狗线程,根据进程中线程的优先级和操作系统的时间片确定喂狗线程向软件看门狗发送喂狗信号的周期;
进程是资源分配的最小单元,线程是调度的最小单元,一个进程包括多个线程,在进程中开启一个喂狗线程,该喂狗线程对软件看门狗发出喂狗信号。而且不同进程中线程的优先级不同,喂狗的周期不同,优先级越高,线程越重要,喂狗的周期越小。
在本发明中,如无特殊说明,优先级是大于0的整数,而且优先级越高,线程越优先被调度。应当理解的是,如果嵌入式操作系统的优先级为负值到正值之间,则可以将其转换为正整数,同样地,如果嵌入式操作系统采用优先级越小,线程越优先被调度,可以将其转换为优先级越大,线程越优先被调度。一个示例为,嵌入式操作系统中线程的优先级为-20到20,而且优先级为-20比优先级为20的线程优先被调度,则可将其转换为1-40,其中40的优先级最高。
时间片(Slice)是操作系统调度一个周期,当到达时间片时,操作系统会切换正在运行的线程,将运行态的线程转为就绪态,当就绪态的线程获得时间片后,则会转变为运行态。
S2,当满足打快照的条件时,获取处于运行态的线程所在的进程,对非所述进程的其他进程占用的内存进行快照得到第一快照,当所述进程中的所有线程都处于非运行态时,对所述进程占用的内存进行快照得到第二快照,将第一快照和第二快照合并生成以第一快照生成时间命名的快照文件;
进程中的线程会共享进程中的一些资源,例如全局变量等,本发明以进程为快照的基本单位,在进行快照恢复时,也以进程为基本单位。而且对于每个处理器核心,同一时刻有一个线程运行,由于运行中的线程会涉及到线程中进程内存区域数据的变化,而其他状态的线程不会运行,在打快照时,避开处于运行的线程所在的进程,只对所有线程都处于非运行态的进程进行快照。快照分为全量快照、增量快照等,快照生成时间和进程分配的内存大小以及处理器性能有关,但是时间片时间比较短,在一个具体实施例中,打快照的线程和要进行快照的进程不在同一个核心,例如ECMO设备的处理器有两个核心,利用核心1中的线程,对核心2中的进程打快照。避免了核心1中线程都处于暂停状态,或者频繁的切换到打快照线程对核心1中的线程的影响。在另外一个实施例中,如果检测到到达打快照时间,则操作系统只在同一个进程中进行线程切换,这样防止了在不同进程间切换导致快照紊乱。
S3,当超过所述周期没有喂狗时,判断所述喂狗线程所在的进程中是否有处于运行态的线程,若是,则待所述喂狗线程所在的进程中线程都处于非运行态时,利用所述快照文件对所述进程进行快照恢复,否则,强制停止所述喂狗线程所在的进程,利用所述快照文件对所述进程进行快照恢复。
当超过喂软件看门狗的周期时,表明进程进入死锁、程序跑飞、OOM或者等待IO异常等异常情况,此时利用快照对该进程进行恢复。对进程恢复时,首先判断进程中的线程是否都处于非运行态,如果是则直接利用快照进行恢复,否则需要强制停止进程,然后进程快照恢复。进行快照恢复后,进程恢复到快照时间点,即可继续被系统调用,也即操作系统可以切换该进程的线程到运行态。在一个具体的实施例中,操作系统为嵌入式Linux,ECMO设备采用ARM处理器。
实施例2
线程的优先级越高,说明线程越重要,则需要对线程所在的进程进行重点监控。在一个实施例中,所述根据进程中线程的优先级和操作系统的时间片确定喂狗线程向软件看门狗发送喂狗信号的周期,具体为:
获取所述操作系统线程优先级等级的中间值,根据公式
Figure BDA0003643636650000061
得到所述周期,其中
Figure BDA0003643636650000062
表示进程中所有线程的优先级平均值,Mpriority表示所述中间值,Slice表示所述时间片,A为系数。在一个具体实施例中,若中间值有两个,则取两个的平均值作为中间值。
例如,操作系统的线程一共分为20个优先级,进程A有5个线程,这5个线程对应的优先级分别为3、9、3、10、15,则
Figure BDA0003643636650000071
为8,Mpriority为10.5,若A=1000,Slice=10ms,则进程A中喂狗线程喂狗的周期Tsoft为13.125s。
实施例3
灌注流量和患者的病情有关,在ECMO的开始阶段,灌注流量一般比较大,而当患者身体状态变好,可以适当减小灌注流量,最后当灌注流量减小到一定值时,可以考虑去除ECMO的辅助。当灌注流量大时,ECMO发挥的作用越关键,其稳定性和故障检测的频率要适当提高。在一个实施例中,如图2所示,所述方法还包括步骤S4,所述S4为:
计算所有向软件看门狗中注册的进程发送喂狗信号的周期的平均值,根据灌注流量和周期平均值得到喂硬件看门狗的周期,若超过喂硬件看门狗的周期没有向硬件看门狗发送喂狗信号,则采用所述快照文件进行恢复。
看门狗分为硬件看门狗和软件看门狗,当系统陷入死循环或者卡死等,软件看门狗无法正常运行,也就无法进行故障恢复。而硬件看门狗和软件看门狗不同,硬件看门狗为一个单独的硬件芯片,该芯片不受ECMO操作系统的影响,当ECMO设备卡死,硬件看门狗也能发送复位信号给处理器,促使ECMO设备复位。使用软硬看门狗结合的方式,在某个进程发生故障时,能够利用软件看门狗快速恢复,而当系统完全卡死或者崩溃,硬件看门狗亦然能使ECMO复位,并根据快照恢复到距离当前时间最近的快照点。
实施例4
在一个实施例中,所述根据灌注流量和周期平均值得到喂硬件看门狗的周期,具体为:
计算灌注流量与全流量的比值,根据公式
Figure BDA0003643636650000072
计算得到喂硬件看门狗的周期Thard,其中rperfusion表示灌注流量与全流量的比值,
Figure BDA0003643636650000073
表示所有向软件看门狗中注册的进程发送喂狗信号的周期的平均值,B为系数。
若ECMO的操作系统有3个进程,通过实施例2计算的软件看门狗的喂狗周期分别为13s、8s、27s,则
Figure BDA0003643636650000074
为16s,rperfusion为50%,B取10,则计算得到的硬件看门狗的喂狗周期Thard为113.1s。
实施例5
为了实现快照按进行恢复进程,在一个实施例中,建立进程和内存的对应关系,当对该进程进行快照时,则对进程对应的内存进行快照,在快照恢复时,找到进程对应的快照即可。所述利用所述快照文件对所述进程进行快照恢复,具体为:从所述快照文件中找到与所述进程的进程号对应的区域,将所述区域恢复到内存中的空闲区域,等待线程调度。在另外一个实施例中,以进程名字+进程好对不同进程的快照进行命名。
为了便于对进程快照的管理,建立每个进程快照的链表,链表的名字为进程名+进程号,这样软件看门狗可以根据情况将进程恢复到某一个快照点。而硬件看门狗可以根据实施例1中的快照文件进行恢复。
实施例6
ECMO设备在使用中,需要进行参数的设置,例如灌注流量、机械通气量、药物的剂量等,在每次调整参数后,且运行一定时间后,需要进行打快照操作,其中运行一定时间一方面是为了让医护人员有参数调整的时间,反之每调整一下就打一次快照,另外是为了让医护人员能确认参数调整后ECMO设备和患者生命体征正常,通常第一预设时间为10-60s不等。所述打快照的条件为:ECMO设备的参数被手动调整并运行第一预设时间,或者距离上次打快照的时间等于打快照周期。
实施例7
本发明还提供了一种ECMO故障快速恢复系统,所述系统包括以下模块:
软件看门狗模块,用于当ECMO嵌入式操作系统中进程启动时向软件看门狗注册,在进程中开启一个喂狗线程,根据进程中线程的优先级和操作系统的时间片确定喂狗线程向软件看门狗发送喂狗信号的周期;
快照模块,用于当满足打快照的条件时,获取处于运行态的线程所在的进程,对非所述进程的其他进程占用的内存进行快照得到第一快照,当所述进程中的所有线程都处于非运行态时,对所述进程占用的内存进行快照得到第二快照,将第一快照和第二快照合并生成以第一快照生成时间命名的快照文件;
恢复模块,用于当超过所述周期没有喂狗时,判断所述喂狗线程所在的进程中是否有处于运行态的线程,若是,则待所述喂狗线程所在的进程中线程都处于非运行态时,利用所述快照文件对所述进程进行快照恢复,否则,强制停止所述喂狗线程所在的进程,利用所述快照文件对所述进程进行快照恢复。
实施例8
所述根据进程中线程的优先级和操作系统的时间片确定喂狗线程向软件看门狗发送喂狗信号的周期,具体为:
获取所述操作系统线程优先级等级的中间值,根据公式
Figure BDA0003643636650000091
得到所述周期,其中
Figure BDA0003643636650000092
表示进程中所有线程的优先级平均值,Mpriority表示所述中间值,Slice表示所述时间片,A为系数。
实施例9
如图3所示,所述系统还包括硬件看门狗模块,
所述硬件看门狗模块,用于计算所有向软件看门狗中注册的进程发送喂狗信号的周期的平均值,根据灌注流量和周期平均值得到喂硬件看门狗的周期,若超过喂硬件看门狗的周期没有向硬件看门狗发送喂狗信号,则采用所述快照文件进行恢复;
实施例10
所述根据灌注流量和周期平均值得到喂硬件看门狗的周期,具体为:
计算灌注流量与全流量的比值,根据公式
Figure BDA0003643636650000093
计算得到喂硬件看门狗的周期Thard,其中rperfusion表示灌注流量与全流量的比值,
Figure BDA0003643636650000094
表示所有向软件看门狗中注册的进程发送喂狗信号的周期的平均值,B为系数。
实施例11
所述利用所述快照文件对所述进程进行快照恢复,具体为:
从所述快照文件中找到与所述进程的进程号对应的区域,将所述区域恢复到内存中的空闲区域,等待线程调度。
实施例12
所述打快照的条件为:
ECMO设备的参数被手动调整并运行第一预设时间,或者距离上次打快照的时间等于打快照周期。
实施例13
本发明还提供了一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器实现实施例1-6所述的方法。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助加必需的通用硬件平台的方式来实现,当然也可以通过硬件和软件结合的方式来实现。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以计算机产品的形式体现出来,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (8)

1.一种ECMO故障快速恢复方法,其特征在于,所述方法包括以下步骤:
S1,当ECMO嵌入式操作系统中进程启动时向软件看门狗注册,在进程中开启一个喂狗线程,根据进程中线程的优先级和操作系统的时间片确定喂狗线程向软件看门狗发送喂狗信号的周期;
S2,当满足打快照的条件时,获取处于运行态的线程所在的进程,对非所述进程的其他进程占用的内存进行快照得到第一快照,当所述进程中的所有线程都处于非运行态时,对所述进程占用的内存进行快照得到第二快照,将第一快照和第二快照合并生成以第一快照生成时间命名的快照文件;
S3,当超过所述周期没有喂狗时,判断喂狗线程所在的进程中的线程是否都处于非运行态,如果是则直接利用所述快照文件对喂狗线程所在的进程进行恢复,否则强制停止喂狗线程所在的进程,然后利用所述快照文件对喂狗线程所在的进程进行恢复;
所述根据进程中线程的优先级和操作系统的时间片确定喂狗线程向软件看门狗发送喂狗信号的周期,具体为:
获取所述操作系统线程优先级等级的中间值,根据公式
Figure FDA0004174597060000011
得到所述周期,其中
Figure FDA0004174597060000013
表示进程中所有线程的优先级平均值,Mpriority表示所述中间值,Slice表示所述时间片,A为系数。
2.如权利要求1所述的方法,其特征在于,所述方法还包括步骤S4,所述S4为:
计算所有向软件看门狗中注册的进程发送喂狗信号的周期的平均值,根据灌注流量和周期平均值得到喂硬件看门狗的周期,若超过喂硬件看门狗的周期没有向硬件看门狗发送喂狗信号,则采用所述快照文件进行恢复。
3.如权利要求2所述的方法,其特征在于,所述根据灌注流量和周期平均值得到喂硬件看门狗的周期,具体为:
计算灌注流量与全流量的比值,根据公式
Figure FDA0004174597060000012
计算得到喂硬件看门狗的周期Thard,其中rperfusion表示灌注流量与全流量的比值,
Figure FDA0004174597060000014
表示所有向软件看门狗中注册的进程发送喂狗信号的周期的平均值,B为系数。
4.如权利要求1所述的方法,其特征在于,所述利用所述快照文件对喂狗线程所在的进程进行恢复,具体为:
从所述快照文件中找到与所述进程的进程号对应的区域,将所述区域恢复到内存中的空闲区域,等待线程调度。
5.如权利要求1-4任一项所述的方法,其特征在于,所述打快照的条件为:
ECMO设备的参数被手动调整并运行第一预设时间,或者距离上次打快照的时间等于打快照周期。
6.一种ECMO故障快速恢复系统,其特征在于,所述系统包括以下模块:
软件看门狗模块,用于当ECMO嵌入式操作系统中进程启动时向软件看门狗注册,在进程中开启一个喂狗线程,根据进程中线程的优先级和操作系统的时间片确定喂狗线程向软件看门狗发送喂狗信号的周期;
快照模块,用于当满足打快照的条件时,获取处于运行态的线程所在的进程,对非所述进程的其他进程占用的内存进行快照得到第一快照,当所述进程中的所有线程都处于非运行态时,对所述进程占用的内存进行快照得到第二快照,将第一快照和第二快照合并生成以第一快照生成时间命名的快照文件;
恢复模块,用于当超过所述周期没有喂狗时,判断喂狗线程所在的进程中的线程是否都处于非运行态,如果是则直接利用所述快照文件对喂狗线程所在的进程进行恢复,否则强制停止喂狗线程所在的进程,然后利用所述快照文件对喂狗线程所在的进程进行恢复;
所述根据进程中线程的优先级和操作系统的时间片确定喂狗线程向软件看门狗发送喂狗信号的周期,具体为:
获取所述操作系统线程优先级等级的中间值,根据公式
Figure FDA0004174597060000021
得到所述周期,其中
Figure FDA0004174597060000022
表示进程中所有线程的优先级平均值,Mpriority表示所述中间值,Slice表示所述时间片,A为系数。
7.如权利要求6所述的系统,其特征在于,所述系统还包括硬件看门狗模块,
所述硬件看门狗模块,用于计算所有向软件看门狗中注册的进程发送喂狗信号的周期的平均值,根据灌注流量和周期平均值得到喂硬件看门狗的周期,若超过喂硬件看门狗的周期没有向硬件看门狗发送喂狗信号,则采用所述快照文件进行恢复;
所述根据灌注流量和周期平均值得到喂硬件看门狗的周期,具体为:
计算灌注流量与全流量的比值,根据公式
Figure FDA0004174597060000031
计算得到喂硬件看门狗的周期Thard,其中rperfusion表示灌注流量与全流量的比值,
Figure FDA0004174597060000032
表示所有向软件看门狗中注册的进程发送喂狗信号的周期的平均值,B为系数。
8.一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器实现权利要求1至5中任一项所述的方法。
CN202210524608.9A 2022-05-13 2022-05-13 一种ecmo故障快速恢复方法及系统 Active CN114780280B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210524608.9A CN114780280B (zh) 2022-05-13 2022-05-13 一种ecmo故障快速恢复方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210524608.9A CN114780280B (zh) 2022-05-13 2022-05-13 一种ecmo故障快速恢复方法及系统

Publications (2)

Publication Number Publication Date
CN114780280A CN114780280A (zh) 2022-07-22
CN114780280B true CN114780280B (zh) 2023-05-12

Family

ID=82436070

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210524608.9A Active CN114780280B (zh) 2022-05-13 2022-05-13 一种ecmo故障快速恢复方法及系统

Country Status (1)

Country Link
CN (1) CN114780280B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA1341568C (en) * 1988-11-02 2008-02-26 William Davy Method of memory and cpu time allocation for a multi-user computer system
JP2010009258A (ja) * 2008-06-26 2010-01-14 Mitsubishi Electric Corp ソフトウエアの異常検出装置
CN104636212A (zh) * 2014-12-29 2015-05-20 漳州科能电器有限公司 一种嵌入式操作系统看门狗实现方法
CN113672421A (zh) * 2021-08-16 2021-11-19 石家庄开发区天远科技有限公司 一种嵌入式系统全程喂狗策略及实现方法
CN114265724A (zh) * 2021-12-24 2022-04-01 深圳昆仑技创科技开发有限责任公司 一种进程监控自动恢复装置和方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7003775B2 (en) * 2001-08-17 2006-02-21 Hewlett-Packard Development Company, L.P. Hardware implementation of an application-level watchdog timer
US7483744B2 (en) * 2005-05-05 2009-01-27 Cardiac Pacemakers, Inc. System and method for recovering from transient faults in an implantable medical device
US20090140844A1 (en) * 2007-12-03 2009-06-04 Nokia Corporation Method and Apparatus for Timer Event Management

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA1341568C (en) * 1988-11-02 2008-02-26 William Davy Method of memory and cpu time allocation for a multi-user computer system
JP2010009258A (ja) * 2008-06-26 2010-01-14 Mitsubishi Electric Corp ソフトウエアの異常検出装置
CN104636212A (zh) * 2014-12-29 2015-05-20 漳州科能电器有限公司 一种嵌入式操作系统看门狗实现方法
CN113672421A (zh) * 2021-08-16 2021-11-19 石家庄开发区天远科技有限公司 一种嵌入式系统全程喂狗策略及实现方法
CN114265724A (zh) * 2021-12-24 2022-04-01 深圳昆仑技创科技开发有限责任公司 一种进程监控自动恢复装置和方法

Also Published As

Publication number Publication date
CN114780280A (zh) 2022-07-22

Similar Documents

Publication Publication Date Title
DE102006048115B4 (de) System und Verfahren zum Aufzeichnen von behebbaren Fehlern
US20070174690A1 (en) Restarting method using a snapshot
US9170888B2 (en) Methods and apparatus for virtual machine recovery
US7711991B2 (en) Error monitoring of partitions in a computer system using partition status indicators
JP2001154885A (ja) コンピュータシステムのロックアップ防止方法及びコンピュータシステムをモニターする方法
CN102902599A (zh) 虚拟机内部故障处理方法、装置及系统
CN114780280B (zh) 一种ecmo故障快速恢复方法及系统
CN115237644B (zh) 系统故障处理方法、中央运算单元以及车辆
WO2012119432A1 (zh) 提高计算机系统稳定性的方法及计算机系统
CN1794198A (zh) 容错双工计算机系统及其控制方法
JP2002251300A (ja) 障害監視方法及び装置
CN101862494B (zh) 一种用于呼吸机的控制方法及适用该控制方法的控制系统
JP2009129409A (ja) 障害回復方法、計算機、クラスタシステム、管理計算機及び障害回復プログラム
KR100246120B1 (ko) 컴퓨터 시스템
CN113467953B (zh) 服务状态的切换方法、装置、服务器及存储介质
CN117312092A (zh) 多核mcu的监控方法、装置、车辆及可读存储介质
CN116010140A (zh) 片上系统内核异常的处理方法、装置和计算可读存储介质
JP2001109635A (ja) 障害対処方法及びコンピュータシステム読み取り可能な記録媒体
CN112631863A (zh) 一种bmc健康状态检测方法、电子设备及存储介质
CN114090317B (zh) 一种高可用婴幼儿呼吸设备及系统
CA3123611A1 (en) Using natural language processing to find adverse events
JP5018140B2 (ja) マルチプロセッサシステム、タスクスケジューリング方法およびタスクスケジューリングプログラム
CN114546517B (zh) 一种软件健康管理方法、装置、设备及存储介质
JP2021069009A (ja) 情報処理システム、情報処理システムの制御方法、情報処理装置、及びプログラム
CN112799917B (zh) 一种数据处理方法、装置及设备

Legal Events

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