CN116010173A - 基于主从操作系统的异常响应方法、装置及电子设备 - Google Patents
基于主从操作系统的异常响应方法、装置及电子设备 Download PDFInfo
- Publication number
- CN116010173A CN116010173A CN202211667884.7A CN202211667884A CN116010173A CN 116010173 A CN116010173 A CN 116010173A CN 202211667884 A CN202211667884 A CN 202211667884A CN 116010173 A CN116010173 A CN 116010173A
- Authority
- CN
- China
- Prior art keywords
- sdei
- operating system
- client
- interrupt
- master
- 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.)
- Pending
Links
Images
Classifications
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Hardware Redundancy (AREA)
Abstract
本申请实施例提供了一种基于主从操作系统的异常响应方法、装置及电子设备,涉及操作系统技术领域。该方法包括:响应于基于SDEI机制获得预先绑定的异常指示消息,所述异常指示消息用于指示主操作系统出现故障,则执行基于所述SDEI机制预先注册的处理程序,所述处理程序用于执行主从切换操作并获得原主操作系统在发生故障时执行的线程;在切换为新的主操作系统后,恢复执行所述线程。本申请实施例实现了当主操作系统出现故障时,利用SDEI机制使从操作系统第一时间响应并接管,确保终端等电子设备的服务能一直正常使用,提升了用户的体验感。
Description
技术领域
本申请涉及操作系统技术领域,具体而言,本申请涉及一种基于主从操作系统的异常响应方法、装置及电子设备。
背景技术
随着互联网技术的飞速发展,终端等电子设备上的操作系统的硬件环境和运行的业务程序日趋复杂。在实际中经常会遇到操作系统死机等异常情况,导致操作系统失去响应,影响用户的正常使用。为此,现有技术在终端中加入一个影子系统,操作系统正常运行时,影子系统监测操作系统的状态,当操作系统出现异常情况时,由影子系统进行接管以保证能持续向用户提供服务。具体地,往往是通过设置虚拟中断来告知影子系统操作系统出现异常,然而由于影子系统中往往存在屏蔽中断的机制,这导致操作系统出现异常时,影子系统无法第一时间响应并接管,造成终端无法正常提供服务,影响用户的体验感。
发明内容
本申请实施例提供了一种基于主从操作系统的异常响应方法、装置、电子设备及计算机可读存储介质,可以解决操作系统出现异常时影子系统无法第一时间响应并接管的问题。所述技术方案如下:
根据本申请实施例的一个方面,提供了一种基于主从操作系统的异常响应方法,该方法包括:
响应于基于SDEI机制获得预先绑定的异常指示消息,所述异常指示消息用于指示主操作系统出现故障,则执行基于所述SDEI机制预先注册的处理程序,所述处理程序用于执行主从切换操作并获得原主操作系统在发生故障时执行的线程;
在切换为新的主操作系统后,恢复执行所述线程。
作为一种可选实施例,还包括:
基于所述SDEI机制在所述从操作系统中配置SDEI客户端;
在中断管理器创建非安全中断,所述非安全中断用于指示所述主操作系统出现硬件故障;
在所述SDEI客户端绑定所述非安全中断;
所述基于SDEI机制获得预先绑定的异常指示消息,包括:
响应于通过所述SDEI客户端获得来自于所述中断管理器的所述非安全中断,将所述非安全中断作为所述异常指示信息。
作为一种可选实施例,所述在中断管理器创建非安全中断,还包括:在所述中断管理器注册与该非安全中断对应的动态事件,并确定所述动态事件的标识;所述动态事件用于描述对应的非安全中断所指示的硬件故障的类型;
所述方法还包括在所述中断管理器中配置SDEI服务端;
所述在所述SDEI客户端绑定所述非安全中断,还包括:
所述SDEI服务端发送所述动态事件的标识给所述SDEI客户端;
由所述SDEI客户端指示所述中断管理器启用所述动态事件的标识对应的动态事件;
所述恢复执行所述线程,之前还包括:
由所述SDEI客户端指示所述中断管理器结束所述动态事件的标识对应的动态事件。
作为一种可选实施例,所述执行基于所述SDEI机制预先注册的处理程序,之前包括:
在所述SDEI客户端注册所述处理程序;
所述执行基于所述SDEI机制预先注册的处理程序,包括:
由所述SDEI客户端指示所述SDEI服务端调用所述处理程序。
作为一种可选实施例,还包括:基于SDEI机制在所述从操作系统中配置SDEI客户端;
在所述虚拟机监视器中注册安全事件,所述安全事件用于指示所述主操作系统出现软件故障;
在所述SDEI客户端绑定所述安全事件;
所述基于SDEI机制获得预先绑定的异常指示消息,包括:
响应于通过所述SDEI客户端获得来自于所述虚拟机监视器触发的所述安全事件,将所述安全事件作为所述异常指示信息。
作为一种可选实施例,所述安全事件被触发的方式包括:
所述虚拟机监视器获得来自于所述主操作系统的异常运行消息;或者
检测到所述主操作系统异常运行。
作为一种可选实施例,还包括在所述虚拟机监视器中配置SDEI服务端;
所述在所述虚拟机监视器中注册安全事件还包括:确定所述安全事件对应的标识;
在所述SDEI客户端绑定所述安全事件,之后还包括:
所述SDEI服务端发送所述安全事件的标识给所述SDEI客户端;
由所述SDEI客户端指示所述虚拟机监视器启用所述安全事件的标识对应的安全事件;
所述恢复执行所述线程,之前还包括:
由所述SDEI客户端指示所述虚拟机监视器结束所述安全事件的标识对应的安全事件。
根据本申请实施例的另一个方面,提供了一种基于主从操作系统的异常响应装置,该装置包括:
响应模块,响应于基于SDEI机制获得预先绑定的异常指示消息,所述异常指示消息用于指示主操作系统出现故障,则执行基于所述SDEI机制预先注册的处理程序,所述处理程序用于执行主从切换操作并获得原主操作系统在发生故障时执行的线程;
执行模块,在切换为新的主操作系统后,恢复执行所述线程。
根据本申请实施例的另一个方面,提供了一种电子设备,该电子设备包括存储器、处理器及存储在存储器上的计算机程序,所述处理器执行所述计算机程序以实现上述的基于主从操作系统的异常响应方法的步骤。
根据本申请实施例的再一个方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的基于主从操作系统的异常响应方法的步骤。
本申请实施例提供的技术方案带来的有益效果是:本申请实施例提供了一种基于主从操作系统的异常响应方法、装置及电子设备,利用SDEI机制提供的高优先级的事件传递机制,能第一时间获得指示主操作系统出现故障的异常指示信息并响应,执行预先注册的处理程序,使原从操作系统切换成为新的主操作系统并继续执行原主操作系统发生故障时执行的线程。从而保证了主操作系统出现故障时,即使从操作系统设置有屏蔽中断的机制,也能利用SDEI机制使从操作系统第一时间响应并接管,确保终端等电子设备的服务能一直正常使用,提升了用户的体验感。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对本申请实施例描述中所需要使用的附图作简单地介绍。
图1为本申请实施例提供的实现基于主从操作系统的异常响应方法的系统架构示意图;
图2为本申请实施例提供的一种AP在运行状态下的内部架构图;
图3为本申请实施例提供的一种基于主从操作系统的异常响应方法的流程示意图;
图4为本申请实施例提供的一种基于主从操作系统的异常响应装置的结构示意图;
图5为本申请实施例提供的一种实现基于主从操作系统的异常响应方法的电子设备的结构示意图。
具体实施方式
下面结合本申请中的附图描述本申请的实施例。应理解,下面结合附图所阐述的实施方式,是用于解释本申请实施例的技术方案的示例性描述,对本申请实施例的技术方案不构成限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”和“该”也可包括复数形式。应该进一步理解的是,本申请实施例所使用的术语“包括”以及“包含”是指相应特征可以实现为所呈现的特征、信息、数据、步骤、操作、元件和/或组件,但不排除实现为本技术领域所支持其他特征、信息、数据、步骤、操作、元件、组件和/或它们的组合等。应该理解,当我们称一个元件被“连接”或“耦接”到另一元件时,该一个元件可以直接连接或耦接到另一元件,也可以指该一个元件和另一元件通过中间元件建立连接关系。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的术语“和/或”指示该术语所限定的项目中的至少一个,例如“A和/或B”可以实现为“A”,或者实现为“B”,或者实现为“A和B”。
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
本申请提供的基于主从操作系统的异常响应方法、装置、电子设备、计算机可读存储介质以及计算机程序产品,旨在解决现有技术的如上技术问题。
下面通过对几个示例性实施方式的描述,对本申请实施例的技术方案以及本申请的技术方案产生的技术效果进行说明。需要指出的是,下述实施方式之间可以相互参考、借鉴或结合,对于不同实施方式中相同的术语、相似的特征以及相似的实施步骤等,不再重复描述。
图1为本申请实施例提供的实现基于主从操作系统的异常响应方法的系统架构示意图,该系统包括终端设备110,终端设备110包括中央处理器CPU和显示器,CPU用于执行用户的指令以获得用户所需的信息等用途,显示器用于展示用户所需的信息等用途,其中CPU包括应用处理器(Application Process,AP)和通信处理器(Communication Processer,CP),主操作系统和从操作系统、虚拟机监视器(Hypervisor)和中断管理器都在AP上运行。一般情况下,主操作系统获得终端设备的控制权以便向用户提供各种用户所需的服务,这些服务通常由运行在主操作系统上的应用程序向用户提供;从操作系统用于监测主操作系统的状态;虚拟机监视器通过虚拟处理元件(Virtual Processing Element,VPE)向主操作系统提供实现其功能所需的底层软硬件资源,以及向从操作系统提供监测主操作系统状态所需的底层软硬件资源;中断管理器用于检测与管理终端设备各硬件产生的中断信号,并将中断信号发送给从操作系统,以使得从操作系统及时响应。
其中,AP可以基于ARM的架构,如图2所示,其示例性地示出了一种AP在运行状态下的内部架构图,包括EL0~EL3这4个执行级别,应用程序APP位于EL0执行级别,OS(即主操作系统和从操作系统)位于EL1执行级别,Hypervisor位于EL2执行级别,中断管理器位于EL3执行级别,EL0到EL3其执行级别逐级变高,执行特权也相应逐级提高。
上述的系统架构示意图只是一个实例,并不对本申请实现基于主从操作系统的异常响应方法的系统架构示意图进行限制。在其他系统中,系统可以包括服务器。
可选地,终端设备110的设备类型包括:智能手机、平板电脑、电子书阅读器、动态影像专家压缩标准音频层面3(Moving Picture Experts Group Audio Layer III,MP3)播放器、动态影像专家压缩标准音频层面4(Moving Picture Experts Group Audio LayerIV,MP4)播放器、膝上型便携计算机和台式计算机中的至少一种;服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、云通信、网络服务、中间件服务、域名服务、安全服务、内容分发网络(Content Delivery Network,CDN)以及大数据和人工智能平台等基础云计算服务的云服务器。
本申请实施例中提供了一种从操作系统响应的方法,如图3所示,该方法包括:
S200、响应于基于SDEI机制获得预先绑定的异常指示消息,异常指示消息用于指示主操作系统出现故障,则执行基于SDEI机制预先注册的处理程序,处理程序用于执行主从切换操作并获得原主操作系统在发生故障时执行的线程。
其中,SDEI(Software Delegated Exception Interface)机制是ARM(一种处理器架构)提供的一种system events(系统事件)的通知方式,是可以抢占其它异常的独占机制,可以用来把特殊系统事件(即异常指示消息)传递给从操作系统或hypervisor。可以将SDEI事件处理函数(SDEI服务端)可以设置在EL2或EL3,异常处理函数(SDEI客户端)设置在EL0。EL2或EL3获取异常指示消息并响应至SDEI服务端,由SDEI服务端跳转至EL0中的SDEI客户端,再通过SDEI客户端执行预先注册的处理程序实现对于主操作系统的故障响应和处理,无需经过EL1层从操作系统的处理,避免了从操作系统中屏蔽机制对异常指示消息传递到影响。
本申请实施例对主操作系统出现故障的类型不进行限制,可以是硬件故障、软件故障等。
S201、在切换为新的主操作系统后,恢复执行线程。
示例性地,若终端设备是手机,原主操作系统出现故障前执行的线程正在向用户播放音乐,原主操作系统出现故障后会出现停止播放音乐的情况。当从操作系统切换为新的主操作系统后,恢复执行线程,即会继续播放之前被打断的音乐。
可以理解的是,利用SDEI机制提供的高优先级的事件传递机制,能第一时间获得指示主操作系统出现故障的异常指示信息并响应,执行预先注册的处理程序,使原从操作系统切换成为新的主操作系统并继续执行原主操作系统发生故障时执行的线程。从而保证了主操作系统出现故障时,即使从操作系统设置有屏蔽中断的机制,也能利用SDEI机制使从操作系统第一时间响应并接管,确保终端等电子设备的服务能一直正常使用,提升了用户的体验感。
在上述各实施例的基础上,作为一种可选实施例,还包括:
基于SDEI机制在从操作系统中配置SDEI客户端;
在中断管理器创建非安全中断,非安全中断用于指示主操作系统出现硬件故障;
在SDEI客户端绑定非安全中断;
基于SDEI机制获得预先绑定的异常指示消息,包括:
响应于通过SDEI客户端获得来自于中断管理器的非安全中断,将非安全中断作为异常指示信息。
可以理解的是,考虑到主操作系统出现故障的情况包括出现硬件故障,硬件故障通常对应电平的高低,而故障硬件的访问属于以非安全身份发起的访问,故在ARM体系中硬件故障被划分为非安全中断。
具体地,本实施例中从操作系统中配置SDEI客户端,SDEI客户端位于EL0级别,中断管理器位于EL3级别,当主操作系统出现硬件故障时,SDEI客户端获得中断管理器预先创建的非安全中断,响应于非安全中断执行预先注册在EL0中的处理程序。
在上述各实施例的基础上,作为一种可选实施例,在中断管理器创建非安全中断,还包括:在中断管理器注册与该非安全中断对应的动态事件,并确定动态事件的标识;动态事件用于描述对应的非安全中断所指示的硬件故障的类型;
还包括在中断管理器中配置SDEI服务端;
在SDEI客户端绑定非安全中断,还包括:
SDEI服务端发送动态事件的标识给SDEI客户端;
由SDEI客户端指示中断管理器启用动态事件的标识对应的动态事件。
恢复执行线程,之前还包括:
由SDEI客户端指示中断管理器结束动态事件的标识对应的动态事件。
其中,在中断管理器中配置SDEI服务端,由于中断管理器在EL3,故对应的SDEI服务端也在EL3。
可以理解的是,考虑到硬件有很多,对应的故障类型也很多,比如电源故障、内存出错以及CPU温度过高等,动态事件可以使SDEI客户端获得异常指示消息时能清楚知道硬件故障的类型。
其中,结束动态事件的标识对应的动态事件,包括SDEI客户端调用SDEI_EVENT_COMPLETE接口结束动态事件的标识对应的动态事件。
在上述各实施例的基础上,作为一种可选实施例,执行基于SDEI机制预先注册的处理程序,之前包括:
在SDEI客户端注册处理程序;
执行基于SDEI机制预先注册的处理程序,包括:
由SDEI客户端指示SDEI服务端调用处理程序。
具体地,基于SDEI机制在从操作系统中配置SDEI客户端,在中断管理器中配置SDEI服务端,整个基于主从操作系统的异常响应方法包括:
在中断管理器创建非安全中断以及注册与该非安全中断对应的动态事件,并确定动态事件的标识;非安全中断用于指示主操作系统出现硬件故障;动态事件用于描述对应的非安全中断所指示的硬件故障的类型;
在SDEI客户端绑定非安全中断;
SDEI服务端发送动态事件的标识给SDEI客户端;
由SDEI客户端指示中断管理器启用动态事件的标识对应的动态事件;
在SDEI客户端注册处理程序,处理程序用于执行主从切换操作并获得原主操作系统在发生故障时执行的线程;
响应于通过SDEI客户端获得来自于中断管理器的非安全中断,则由SDEI客户端指示SDEI服务端调用处理程序;
在切换为新的主操作系统后,由SDEI客户端指示中断管理器结束动态事件的标识对应的动态事件,并恢复执行线程。
在上述各实施例的基础上,作为一种可选实施例,还包括:基于SDEI机制在从操作系统中配置SDEI客户端;
在虚拟机监视器中注册安全事件,安全事件用于指示主操作系统出现软件故障;
在SDEI客户端绑定安全事件;
基于SDEI机制获得预先绑定的异常指示消息,包括:
响应于通过SDEI客户端获得来自于虚拟机监视器触发的安全事件,将安全事件作为异常指示信息。
可以理解的是,软件故障可以包括因不正确使用计算机软件而引起的故障、因软件参数的设置不当而出现的故障以及因软件内部缺陷而导致的故障,比如软件不能运行、主操作系统出现死机、文件丢失或被改动等。
具体地,本实施例中从操作系统中配置SDEI客户端,SDEI客户端位于EL0,虚拟机监视器在EL2。当主操作系统出现软件故障时,SDEI客户端获得SDEI客户端预先注册在虚拟机监视器的安全事件,响应于触发的安全事件从而执行预先注册在EL0中的处理程序。
在上述各实施例的基础上,作为一种可选实施例,安全事件被触发的方式包括:
虚拟机监视器获得来自于主操作系统的异常运行消息;或者检测到主操作系统异常运行。
其中,当软件出现故障时一般会造成主操作系统出现data abort这类异常,ARM会自动跳转到异常向量表中,并通过Hypercall(超调用)通知虚拟机监视器主操作系统的异常运行消息,从而使虚拟机监视器获得该异常运行消息;也可能出现Hypercall还未通知虚拟机监视器时,虚拟机监视器自身已经检测到主操作系统异常运行,从而使安全事件被虚拟机监视器触发。安全事件被触发后,设备的控制权暂时转移到虚拟机监视器。
在上述各实施例的基础上,作为一种可选实施例,还包括在虚拟机监视器中配置SDEI服务端;
在虚拟机监视器中注册安全事件还包括:确定安全事件对应的标识;
在SDEI客户端绑定安全事件,之后还包括:
SDEI服务端发送安全事件的标识给SDEI客户端;
由SDEI客户端指示虚拟机监视器启用安全事件的标识对应的安全事件;
恢复执行线程,之前还包括:
由SDEI客户端指示虚拟机监视器结束安全事件的标识对应的安全事件。
其中,在虚拟机监视器中配置SDEI服务端,由于虚拟机监视器在EL2,故对应的SDEI服务端也在EL2。
其中,结束安全事件的标识对应的动态事件,包括SDEI客户端调用SDEI_EVENT_COMPLETE接口结束动态事件的标识对应的动态事件。
在上述各实施例的基础上,作为一种可选实施例,执行基于SDEI机制预先注册的处理程序,之前包括:
在SDEI客户端注册处理程序;
执行基于SDEI机制预先注册的处理程序,包括:
由SDEI客户端指示SDEI服务端调用处理程序。
具体地,当基于SDEI机制在从操作系统中配置SDEI客户端,在虚拟机监视器中配置SDEI服务端,整个基于主从操作系统的异常响应方法包括:
在虚拟机监视器中注册安全事件,确定安全事件对应的标识;安全事件用于指示主操作系统出现软件故障;
在SDEI客户端绑定安全事件;
SDEI服务端发送安全事件的标识给SDEI客户端;
在SDEI客户端注册处理程序;处理程序用于执行主从切换操作并获得原主操作系统在发生故障时执行的线程;
由SDEI客户端指示虚拟机监视器启用安全事件的标识对应的安全事件;
响应于通过SDEI客户端获得来自于虚拟机监视器触发的安全事件,由SDEI客户端指示SDEI服务端调用处理程序,
在切换为新的主操作系统后,由SDEI客户端指示虚拟机监视器结束安全事件的标识对应的安全事件,并恢复执行线程。
本申请实施例提供了一种基于主从操作系统的异常响应装置,如图4所示,该从操作系统响应装置可以包括:响应模块601以及执行模块602,其中,响应模块601,响应于基于SDEI机制获得预先绑定的异常指示消息,异常指示消息用于指示主操作系统出现故障,则执行基于SDEI机制预先注册的处理程序,处理程序用于执行主从切换操作并获得原主操作系统在发生故障时执行的线程;执行模块602在切换为新的主操作系统后,恢复执行线程。
可以理解的是,本装置利用SDEI机制提供的高优先级的事件传递机制,能第一时间获得指示主操作系统出现故障的异常指示信息并响应,执行预先注册的处理程序,使原从操作系统切换成为新的主操作系统并继续执行原主操作系统发生故障时执行的线程。从而保证了主操作系统出现故障时,即使从操作系统设置有屏蔽中断的机制,也能利用SDEI机制使从操作系统第一时间响应并接管,确保终端等电子设备的服务能一直正常使用,提升了用户的体验感。
在上述各实施例的基础上,作为一种可选实施例,基于主从操作系统的异常响应装置还包括配置模块,用于:
基于SDEI机制在从操作系统中配置SDEI客户端;
在中断管理器创建非安全中断,非安全中断用于指示主操作系统出现硬件故障;
在SDEI客户端绑定非安全中断;
响应模块用于基于SDEI机制获得预先绑定的异常指示消息,具体包括:
响应于通过SDEI客户端获得来自于中断管理器的非安全中断,将非安全中断作为异常指示信息。
在上述各实施例的基础上,作为一种可选实施例,配置模块用于在中断管理器创建非安全中断,还包括:在中断管理器注册与该非安全中断对应的动态事件,并确定动态事件的标识;动态事件用于描述对应的非安全中断所指示的硬件故障的类型;
方法还包括在中断管理器中配置SDEI服务端;
在SDEI客户端绑定非安全中断,还包括:
SDEI服务端发送动态事件的标识给SDEI客户端;
由SDEI客户端指示中断管理器启用动态事件的标识对应的动态事件;
执行模块用于恢复执行线程,之前还用于:
由SDEI客户端指示中断管理器结束动态事件的标识对应的动态事件。
在上述各实施例的基础上,作为一种可选实施例,配置模块还用于在SDEI客户端注册处理程序;
执行模块用于执行基于SDEI机制预先注册的处理程序,具体包括:
由SDEI客户端指示SDEI服务端调用处理程序。
在上述各实施例的基础上,作为一种可选实施例,配置模块还用于:基于SDEI机制在从操作系统中配置SDEI客户端;
在虚拟机监视器中注册安全事件,安全事件用于指示主操作系统出现软件故障;
在SDEI客户端绑定安全事件;
响应模块用于基于SDEI机制获得预先绑定的异常指示消息,具体包括:
响应于通过SDEI客户端获得来自于虚拟机监视器触发的安全事件,将安全事件作为异常指示信息。
在上述各实施例的基础上,作为一种可选实施例,安全事件被触发的方式包括:
虚拟机监视器获得来自于主操作系统的异常运行消息;或者
检测到主操作系统异常运行。
在上述各实施例的基础上,作为一种可选实施例,配置模块还用于在虚拟机监视器中配置SDEI服务端;
在虚拟机监视器中注册安全事件还包括:确定安全事件对应的标识;
在SDEI客户端绑定安全事件,之后还包括:
SDEI服务端发送安全事件的标识给SDEI客户端;
由SDEI客户端指示虚拟机监视器启用安全事件的标识对应的安全事件;
执行模块用于恢复执行线程,之前还用于:
由SDEI客户端指示虚拟机监视器结束安全事件的标识对应的安全事件。
本申请实施例的装置可执行本申请实施例所提供的方法,其实现原理相类似,本申请各实施例的装置中的各模块所执行的动作是与本申请各实施例的方法中的步骤相对应的,对于装置的各模块的详细功能描述具体可以参见前文中所示的对应方法中的描述,此处不再赘述。
本申请实施例中提供了一种电子设备,包括存储器、处理器及存储在存储器上的计算机程序,该处理器执行上述计算机程序以实现基于主从操作系统的异常响应方法的步骤,与相关技术相比可实现:利用SDEI机制提供的高优先级的事件传递机制,能第一时间获得指示主操作系统出现故障的异常指示信息后并响应,从而执行预先注册的处理程序,从而使原从操作系统切换成为新的主操作系统并继续执行原主操作系统发生故障时执行的线程。保证了主操作系统出现故障时,即使从操作系统设置有屏蔽中断的机制,也能利用SDEI机制使从操作系统第一时间响应并接管,确保服务能一直正常使用,保障了用户的体验感。
在一个可选实施例中提供了一种电子设备,如图5所示,图5所示的电子设备4000包括:处理器4001和存储器4003。其中,处理器4001和存储器4003相连,如通过总线4002相连。可选地,电子设备4000还可以包括收发器4004,收发器4004可以用于该电子设备与其他电子设备之间的数据交互,如数据的发送和/或数据的接收等。需要说明的是,实际应用中收发器4004不限于一个,该电子设备4000的结构并不构成对本申请实施例的限定。
处理器4001可以是CPU(Central Processing Unit,中央处理器),通用处理器,DSP(Digital Signal Processor,数据信号处理器),ASIC(Application SpecificIntegrated Circuit,专用集成电路),FPGA(Field Programmable Gate Array,现场可编程门阵列)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器4001也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等。
总线4002可包括一通路,在上述组件之间传送信息。总线4002可以是PCI(Peripheral Component Interconnect,外设部件互连标准)总线或EISA(ExtendedIndustry Standard Architecture,扩展工业标准结构)总线等。总线4002可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器4003可以是ROM(Read Only Memory,只读存储器)或可存储静态信息和指令的其他类型的静态存储设备,RAM(Random Access Memory,随机存取存储器)或者可存储信息和指令的其他类型的动态存储设备,也可以是EEPROM(Electrically ErasableProgrammable Read Only Memory,电可擦可编程只读存储器)、CD-ROM(Compact DiscRead Only Memory,只读光盘)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质、其他磁存储设备、或者能够用于携带或存储计算机程序并能够由计算机读取的任何其他介质,在此不做限定。
存储器4003用于存储执行本申请实施例的计算机程序,并由处理器4001来控制执行。处理器4001用于执行存储器4003中存储的计算机程序,以实现前述方法实施例所示的步骤。
本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时可实现前述方法实施例的步骤及相应内容。
本申请实施例还提供了一种计算机程序产品,包括计算机程序,计算机程序被处理器执行时可实现前述方法实施例的步骤及相应内容。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”、“1”、“2”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除图示或文字描述以外的顺序实施。
应该理解的是,虽然本申请实施例的流程图中通过箭头指示各个操作步骤,但是这些步骤的实施顺序并不受限于箭头所指示的顺序。除非本文中有明确的说明,否则在本申请实施例的一些实施场景中,各流程图中的实施步骤可以按照需求以其他的顺序执行。此外,各流程图中的部分或全部步骤基于实际的实施场景,可以包括多个子步骤或者多个阶段。这些子步骤或者阶段中的部分或全部可以在同一时刻被执行,这些子步骤或者阶段中的每个子步骤或者阶段也可以分别在不同的时刻被执行。在执行时刻不同的场景下,这些子步骤或者阶段的执行顺序可以根据需求灵活配置,本申请实施例对此不限制。
以上所述仅是本申请部分实施场景的可选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请的方案技术构思的前提下,采用基于本申请技术思想的其他类似实施手段,同样属于本申请实施例的保护范畴。
Claims (10)
1.一种基于主从操作系统的异常响应方法,其特征在于,所述方法包括:
响应于基于SDEI机制获得预先绑定的异常指示消息,所述异常指示消息用于指示主操作系统出现故障,则执行基于所述SDEI机制预先注册的处理程序,所述处理程序用于执行主从切换操作并获得原主操作系统在发生故障时执行的线程;
在切换为新的主操作系统后,恢复执行所述线程。
2.根据权利要求1所述的基于主从操作系统的异常响应方法,其特征在于,还包括:
基于所述SDEI机制在所述从操作系统中配置SDEI客户端;
在中断管理器创建非安全中断,所述非安全中断用于指示所述主操作系统出现硬件故障;
在所述SDEI客户端绑定所述非安全中断;
所述基于SDEI机制获得预先绑定的异常指示消息,包括:
响应于通过所述SDEI客户端获得来自于所述中断管理器的所述非安全中断,将所述非安全中断作为所述异常指示信息。
3.根据权利要求2所述的基于主从操作系统的异常响应方法,其特征在于,所述在中断管理器创建非安全中断,还包括:在所述中断管理器注册与该非安全中断对应的动态事件,并确定所述动态事件的标识;所述动态事件用于描述对应的非安全中断所指示的硬件故障的类型;
所述方法还包括在所述中断管理器中配置SDEI服务端;
所述在所述SDEI客户端绑定所述非安全中断,还包括:
所述SDEI服务端发送所述动态事件的标识给所述SDEI客户端;
由所述SDEI客户端指示所述中断管理器启用所述动态事件的标识对应的动态事件;
所述恢复执行所述线程,之前还包括:
由所述SDEI客户端指示所述中断管理器结束所述动态事件的标识对5应的动态事件。
4.根据权利要求3所述的基于主从操作系统的异常响应方法,其特征在于,所述执行基于所述SDEI机制预先注册的处理程序,之前包括:
在所述SDEI客户端注册所述处理程序;
0所述执行基于所述SDEI机制预先注册的处理程序,包括:
由所述SDEI客户端指示所述SDEI服务端调用所述处理程序。
5.根据权利要求1所述的基于主从操作系统的异常响应方法,其特征在于,还包括:基于SDEI机制在所述从操作系统中配置SDEI客户端;5在所述虚拟机监视器中注册安全事件,所述安全事件用于指示所述主操作系统出现软件故障;
在所述SDEI客户端绑定所述安全事件;
所述基于SDEI机制获得预先绑定的异常指示消息,包括:
响应于通过所述SDEI客户端获得来自于所述虚拟机监视器触发的所0述安全事件,将所述安全事件作为所述异常指示信息。
6.根据权利要求5所述的基于主从操作系统的异常响应方法,其特征在于,所述安全事件被触发的方式包括:
所述虚拟机监视器获得来自于所述主操作系统的异常运行消息;或者5检测到所述主操作系统异常运行。
7.根据权利要求5所述的基于主从操作系统的异常响应方法,其特征在于,还包括在所述虚拟机监视器中配置SDEI服务端;
所述在所述虚拟机监视器中注册安全事件还包括:确定所述安全事件对应的标识;
在所述SDEI客户端绑定所述安全事件,之后还包括:
所述SDEI服务端发送所述安全事件的标识给所述SDEI客户端;
由所述SDEI客户端指示所述虚拟机监视器启用所述安全事件的标识对应的安全事件;
所述恢复执行所述线程,之前还包括:
由所述SDEI客户端指示所述虚拟机监视器结束所述安全事件的标识对应的安全事件。
8.一种基于主从操作系统的异常响应装置,其特征在于,
响应模块,响应于基于SDEI机制获得预先绑定的异常指示消息,所述异常指示消息用于指示主操作系统出现故障,则执行基于所述SDEI机制预先注册的处理程序,所述处理程序用于执行主从切换操作并获得原主操作系统在发生故障时执行的线程;
执行模块,在切换为新的主操作系统后,恢复执行所述线程。
9.一种电子设备,包括存储器、处理器及存储在存储器上的计算机程序,其特征在于,所述处理器执行所述计算机程序以实现权利要求1-7任一项所述的基于主从操作系统的异常响应方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-7任一项所述的基于主从操作系统的异常响应方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211667884.7A CN116010173A (zh) | 2022-12-23 | 2022-12-23 | 基于主从操作系统的异常响应方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211667884.7A CN116010173A (zh) | 2022-12-23 | 2022-12-23 | 基于主从操作系统的异常响应方法、装置及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116010173A true CN116010173A (zh) | 2023-04-25 |
Family
ID=86036603
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211667884.7A Pending CN116010173A (zh) | 2022-12-23 | 2022-12-23 | 基于主从操作系统的异常响应方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116010173A (zh) |
-
2022
- 2022-12-23 CN CN202211667884.7A patent/CN116010173A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2871553B1 (en) | Systems and methods for protecting virtualized assets | |
US7426661B2 (en) | Method and system for minimizing loss in a computer application | |
US9037899B2 (en) | Automated node fencing integrated within a quorum service of a cluster infrastructure | |
US10445197B1 (en) | Detecting failover events at secondary nodes | |
Guo et al. | Failure recovery: When the cure is worse than the disease | |
US10146653B2 (en) | Automated system-level failure and recovery | |
US11582083B2 (en) | Multi-tenant event sourcing and audit logging in a cloud-based computing infrastructure | |
US10120779B1 (en) | Debugging of hosted computer programs | |
US8015432B1 (en) | Method and apparatus for providing computer failover to a virtualized environment | |
CN111858007A (zh) | 一种基于消息中间件的任务调度方法方法和装置 | |
WO2020211362A1 (zh) | 提高集群系统可用性的方法、装置和计算机设备 | |
WO2021213171A1 (zh) | 一种服务器切换方法、装置、管理节点及存储介质 | |
CN116010173A (zh) | 基于主从操作系统的异常响应方法、装置及电子设备 | |
US9836342B1 (en) | Application alerting system and method for a computing infrastructure | |
JP2017194729A (ja) | 計算機システムおよびシステム状態再現方法 | |
CN113157392B (zh) | 镜像仓库高可用方法及设备 | |
US20230289203A1 (en) | Server maintenance control device, server maintenance system, server maintenance control method, and program | |
CN115617263A (zh) | 块设备的自动发现及实时复制变化数据的方法及存储介质 | |
JP2015114952A (ja) | ネットワークシステム、監視制御装置およびソフトウェア検証方法 | |
EP4193625A1 (en) | Techniques for device to device authentication | |
CN107783855B (zh) | 虚拟网元的故障自愈控制装置及方法 | |
US8533331B1 (en) | Method and apparatus for preventing concurrency violation among resources | |
CN115858222B (zh) | 一种虚拟机故障处理方法、系统及电子设备 | |
US10289691B2 (en) | Dynamic replication of networked files | |
CN118101482A (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 |