CN111782442A - 设备异常处理方法、系统、电子设备及存储介质 - Google Patents
设备异常处理方法、系统、电子设备及存储介质 Download PDFInfo
- Publication number
- CN111782442A CN111782442A CN202010581677.4A CN202010581677A CN111782442A CN 111782442 A CN111782442 A CN 111782442A CN 202010581677 A CN202010581677 A CN 202010581677A CN 111782442 A CN111782442 A CN 111782442A
- Authority
- CN
- China
- Prior art keywords
- sub
- abnormal
- state
- source code
- equipment
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 39
- 230000002159 abnormal effect Effects 0.000 claims description 60
- 238000001514 detection method Methods 0.000 claims description 24
- 230000004044 response Effects 0.000 claims description 14
- 238000012423 maintenance Methods 0.000 abstract description 10
- 238000005516 engineering process Methods 0.000 abstract description 7
- 230000015654 memory Effects 0.000 description 15
- 230000002093 peripheral effect Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000005856 abnormality Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000009434 installation Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45591—Monitoring or debugging support
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/815—Virtual
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明提供了一种设备异常处理方法、系统、电子设备及存储介质,广泛应用于云技术领域领,其中设备异常处理方法包括第一子设备与第一父设备连接,获取第一子设备的异常状态,根据获取的异常状态切换第一子设备为第二子设备,其中第二子设备根据第一父设备生成,从而解决虚拟设备异常情况,方便快捷,降低运营难度,减少运维成本。
Description
技术领域
本发明涉及云技术领域,尤其是涉及一种设备异常处理方法、系统、电子设备及存储介质。
背景技术
随着云计算技术的成熟,云游戏的概念也被人们提出。在云游戏等相关云应用场景下,用户的键鼠、手柄和触屏等操控事件通过网络传递给服务端,服务端接收到操控事件后,通过虚拟设备模拟出操控事件,使得服务端的程序得到远端用户的输入,实现云端操控。而在Windows操作系统上,一般使用HID(Human Interface Device,人机交互设备)来实现人与设备之间的交互。
HID虚拟设备在这个交互的过程中承担了很重要的作用。但是由于虚拟设备自身设计的缺陷,以及操作系统存在的一些异常,都会造成虚拟设备发生异常,而反应到云应用场景下就是云端操作失效,服务端的程序不响应用户的操控。当虚拟设备出现异常时,不能卸载该虚拟设备,也不能创建新的虚拟设备,只能通过重启操作系统来恢复,导致加大对云游戏等云应用的运营难度,增加了运维成本。
发明内容
本发明旨在至少处理现有技术中存在的技术问题之一。为此,本发明提出一种设备异常处理方法,能够解决虚拟设备异常情况,方便快捷,降低运营难度,减少运维成本。
对应于一种设备异常处理方法,本发明还提出一种设备异常处理系统。
对应于一种设备异常处理方法,本发明还提出一种电子设备。
对应于一种设备异常处理方法,本发明还提出一种计算机可读存储介质。
第一方面,本发明的一个实施例提供了一种设备异常处理方法,包括获取所述第一子设备的异常状态;根据所述异常状态切换所述第一子设备为第二子设备,所述第二子设备根据所述第一父设备生成。
进一步地,所述获取第一子设备的异常状态,包括:所述异常状态包括:异常工作状态和异常响应状态。
进一步地,所述根据所述异常状态切换所述第一子设备为第二子设备,包括:根据所述第一父设备的第一源码生成第二源码;根据所述第二源码生成所述第二子设备。
进一步地,所述根据所述异常状态切换所述第一子设备为第二子设备,还包括:调用控制台工具执行禁用指令禁用所述第一子设备。
进一步地,所述根据所述异常状态切换所述第一子设备为第二子设备,还包括:调用控制台工具执行启用指令启用所述第二子设备。
第二方面,本发明的一个实施例提供了一种设备异常处理系统,包括:检测模块,用于获取第一子设备的异常状态;切换模块,用于切换所述第一子设备。
进一步地,所述检测模块包括:工作检测模块和响应检测模块;
所述工作检测模块,用于获取所述第一子设备的异常工作状态;
所述响应检测模块,用于获取所述第一子设备的异常响应状态。
进一步地,所述切换模块包括源码生成模块和设备生成模块;
所述源码生成模块,用于根据所述第一父设备的第一源码生成第二源码;
所述设备生成模块,用于根据所述第二源码生成所述第二子设备。
进一步地,所述切换模块还包括:禁用模块,用于禁用所述第一子设备。
进一步地,所述切换模块还包括:启用模块,用于启用所述第二子设备。
第三方面,本发明的一个实施例提供了一种电子设备,包括:至少一个处理器,以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行第一方面所述的设备异常处理方法。
第四方面,本发明的一个实施例提供了一种计算机可读存储介质,包括:所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行第一方面所述的设备异常处理方法。
本发明的有益效果是:
本发明提供了一种设备异常处理方法、系统、电子设备及存储介质,广泛应用于云技术领域,其中设备异常处理方法包括第一子设备与第一父设备连接,获取第一子设备的异常状态,根据获取的异常状态切换第一子设备为第二子设备,其中第二子设备根据第一父设备生成,从而解决虚拟设备异常情况,方便快捷,降低运营难度,减少运维成本。
附图说明
图1是本发明实施例中设备异常处理方法的一具体实施例流程示意图;
图2是图1中步骤S1100的一具体实施例流程示意图;
图3是图1中步骤S1200的一具体实施例流程示意图;
图4是本发明实施例中设备异常处理系统的一具体实施例模块框图;
图5是图4中检测模块的一具体实施例模块框图;
图6是图4中切换模块的一具体实施例模块框图。
具体实施方式
以下将结合实施例对本发明的构思及产生的技术效果进行清楚、完整地描述,以充分地理解本发明的目的、特征和效果。显然,所描述的实施例只是本发明的一部分实施例,而不是全部实施例,基于本发明的实施例,本领域的技术人员在不付出创造性劳动的前提下所获得的其他实施例,均属于本发明保护的范围。
在本发明实施例的描述中,如果涉及到“多个”,其含义是两个以上。如果涉及到“第一”、“第二”,应当理解为用于区分技术特征,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量或者隐含指明所指示的技术特征的先后关系。
随着云计算技术的成熟,云游戏的概念也被人们提出。在云游戏等相关云应用场景下,用户的键鼠、手柄和触屏等操控时间通过网络传递给服务端,服务端接收到操控事件后,通过虚拟设备模拟出操控事件,使得服务端的程序得到远端用户的输入,实现云端操控。而在Windows操作系统上,一般使用HID(Human Interface Device,物理设备对象)来实现人与设备之间的交互。
HID虚拟设备在这个交互的过程中承担了很重要的作用。但是由于虚拟设备自身设计的缺陷,以及操作系统存在的一些异常,都会造成虚拟设备发生异常,而反应到云应用场景下就是云端操作失效,服务端的程序不响应用户的操控。当虚拟设备出现异常时,不能卸载该虚拟设备,也不能创建新的虚拟设备,只能通过重启操作系统来恢复,导致加大对云游戏等云应用的运营难度,增加了运维成本。
当虚拟设备出现异常时,如果卸载当前发生异常的虚拟设备设备,总线驱动也会出现异常,导致后续对该总线驱动的操作都会无效,例如重新插入新的设备也无法正常工作;如果直接创建新的虚拟设备,操作系统会提示创建的HID设备的PDO(Physical DeviceObjects,物理设备对象)描述符已被占用,这是因为发生异常的虚拟设备没有被操作系统正常释放或解除导致一直在占用该PDO描述符,正常情况下Windows操作系统不容许具有相同PDO描述符的多个设备同时存在。
总线驱动是总线驱动是计算机总线的驱动程序。总线驱动程序是必须的驱动程序;在一个机器里,每一类总线有一个总线驱动程序。如果机器里有不止一个同类的总线,则一个总线驱动程序能服务不止一个总线。总线驱动程序代表其总线上的设备来执行一定的操作,包括访问设备寄存器来物理地改变设备的电源状态。例如,当设备休眠时,总线驱动程序设置设备寄存器来给设备适当的电源状态。
HID设备是直接与人交互的设备,例如键盘、鼠标与游戏手柄等,但HID设备不一定要有人机接口,只要符合HID类别规范的设备都是HID设备,操作系统根据HID设备的操控事件执行相关的行为。
PDO(Physical Device Objects)是设备程序创建的物理设备对象,每一个PDO描述符,代表了虚拟子设备与外设设备的实际连接,通过创建PDO描述符,可以实现虚拟子设备的插入与管理。
在实际应用时,当计算机终端插入外设设备时,总线驱动会创建一个PDO设备对象,系统会提示检测到新设备,从而安装驱动,该驱动负责创建功能设备对象(FDO),并附加在PDO上。当计算机终端预先创建好PDO后,用户再进行外设设备插入时,会自动根据插入的外设设备查找对应的驱动并进行加载,从而实现外设设备的即插即用。
基于此,本发明提供了一种设备异常处理方法、系统、电子设备及存储介质,广泛应用于云技术领域领,其中设备异常处理方法包括第一子设备与第一父设备连接,获取第一子设备的异常状态,根据获取的异常状态切换第一子设备为第二子设备,其中第二子设备根据第一父设备生成,从而解决虚拟设备异常情况,方便快捷,降低运营难度,减少运维成本。
第一方面,本发明实施例提供了一种设备异常处理方法,第一子设备与第一父设备连接,获取第一子设备的异常状态,根据获取的异常状态切换第一子设备为第二子设备,其中第二子设备根据第一父设备生成,从而解决虚拟设备异常情况,方便快捷,降低运营难度,减少运维成本。
其中,第一子设备可以是在云游戏等云应用场景中,接收用户的键盘、鼠标、手柄和触屏等操控事件后,在服务端进行操控事件的虚拟设备;第一父设备可以是用户通过USB(Universal Serial Bus,通用串行总线)接口进行连接的外设设备,例如键盘、鼠标和手柄等,用于在用户端执行操控事件的外设设备;第一父设备与第一子设备进行连接,并且一个父设备可与多个第一子设备进行连接,从而适应于多个云游戏等云应用场景。
参照图1,示出了本发明实施例中设备异常处理方法的流程示意图。其具体包括步骤:
S1100,获取第一子设备的异常状态;
S1200,根据异常状态切换第一子设备为第二子设备。
在步骤S1100中,需要获取正在运行的第一子设备的异常状态,根据获取的异常状态来检测该第一子设备是否异常和无法正常工作,若经过检测后发现该第一子设备发生异常,则执行步骤S1200,若该第一子设备未发生异常,则不执行其他操作。
在一些实施例中,如图2所示,步骤S1100还包括:
S1110,获取异常工作状态;
S1120,获取异常响应状态。
在步骤S1110中,需要获取第一子设备的异常工作状态,可以通过调用HID驱动I/O(Input/Output,输入/输出)接口获取第一子设备的工作状态,检测该第一子设备是否处于正常工作中,若第一子设备处于异常工作中,则获取第一子设备的异常工作状态。在实际应用中,通过调用I/O接口获取虚拟设备的异常工作状态,从而判断该虚拟设备是否发生异常,并且同时执行步骤S1120。
在步骤S1120中,需要获取第一子设备的异常响应状态,检测是否能够正常响应用户的输入数据,例如用户通过键盘、鼠标和手柄等第一父设备进行数据输入,即输入操控事件给服务端进行接收,第一子设备接收该输入数据后作出响应,在服务端执行相应的操控事件。在实际应用中,对于键盘和鼠标类设备可以通过调用系统API(ApplicationProgramming Interface,应用程序接口),使用SendInput函数模拟模拟鼠标键盘操作进行数据输入,以鼠标为例,点击鼠标左键,实际上分为鼠标左键按下和鼠标左键弹起,通过SendInput函数模拟该操作,则需要input2个操控事件,可以是key_down和key_up,具体关于SendInput函数的内容不再赘述;对于手柄类设备,可以通过调用虚拟手柄设备的接口进行实训。根据调用系统接口,从而检测第一子设备是否能够正常响应用户的输入数据,若检测到该第一子设备无法正常响应用户的输入数据,则执行步骤S1200。
在步骤S1200中,当获取到第一子设备的异常时,则根据异常状态切换第一子设备为第二子设备,使其能够正常运行。
在一些实施例中,如图3所示,步骤S1200包括:
S1210,调用控制台工具执行禁用指令禁用第一子设备;
在步骤S1210中,通过调用控制台工具执行禁用指令,通过该禁用指令禁用获取到异常状态的第一子设备。在实际应用中,可以以管理员身份运行devcon工具,并通过devcon工具执行禁用指令从而禁用发生异常的第一子设备。
其中devcon工具是设备控制台,是一个命令行工具,该工具显示有关运行Windows的计算机上设备的详细信息,可以通过使用devcon工具启用、禁用、重新启动、更新、删除和查询单个设备或一组设备,并且Devcon提供与开发人员有关但无法在设备管理器中看到的信息。
禁用指令可以是在devcon工具上执行的指令,例如执行devcon disabledeviceID进行禁用发生异常的第一子设备,其中deviceID是作为第一子设备的标识ID。在实际应用中,可以通过devcon工具查看到发生异常的第一子设备的标识ID,通过该标识ID确定异常设备。
在一些实施例中,第二子设备根据第一父设备生成,当禁用发生异常的第一子设备后,根据第一父设备生成第二子设备。由于Windows操作系统中HID设备对应于一个PDO描述符,若不进行释放,则该HID设备会继续占用该PDO描述符,因此需要创建一个新的PDO描述符,从而对应一个新的HID设备。
在一些实施例中,如图3所示,具体第二子设备生成过程包括:
S1220,根据第一父设备的第一源码生成第二源码;
S1230,根据第二源码生成第二子设备。
在步骤S1220中,根据第一父设备的第一源码生成第二源码,在实际应用中,第一父设备存在对应的设备源码,用于标识该第一父设备与第一子设备的连接关系,通过修改第一父设备的设备源码即第一源码的工程文件名,从而生成新的设备源码即为第二源码。示例1
以第一父设备的第一源码为例,第一父设备中的第一源码如下所述:
第一父设备的父设备标识为:
DEFINE_GUID(GUID_DEVINTERFACE_BUSENUM_VGAME,0x96E42B22,0xF5E9,0x42F8,0xB0,0x43,0xED,0x0F,0x93,0x2F,0x01,0x4F);
第一父设备的子设备标识为:
DEFINE_GUID(GUID_VGAME_INTERFACE_PDO,0xA77BC4D5,0x6AF7,0x4E69,0x8D,0xC4,0x6B,0x88,0xA6,0x02,0x8C,0xE7);
第一父设备的系统日志标识为:
WPP_DEFINE_CONTROL_GUID(VGAMEBusTraceGuid,(c5ce18fe,27bd,4049,b0b4,8a47cab1dcd0));
第一父设备的配置信息标识为:
#define DRIVERNAME"VirtualGamepad:"
[Standard.NTamd64]
%VGAME.DeviceDesc%=VGAME_Device,VRVIU\VGAME\Gen1
[Standard.NTx86]
%VGAME.DeviceDesc%=VGAME_Device,VRVIU\VGAME\Gen1
[VGAME_Service_Inst]
ServiceBinary=%12%\VGAME.sys
[VGAME_Device.NT.Wdf]
KmdfService=VGAME,VGAME_wdfsect
[Strings]
ManufacturerName="VRVIU Software Solutions"
DiskName="VGAME Installation Disk"
VGAME.DeviceDesc="Virtual Gamepad Emulation Bus"
VGAME.SVCDESC="Virtual Gamepad Emulation Service"
对上述第一父设备的第一源码进行修改从而得到第二源码,具体应用实例如下:
其中对第一父设备的设备标识进行修改得到:
DEFINE_GUID(GUID_DEVINTERFACE_BUSENUM_VGAME,0x96E42B22,0xF5E9,0x42F8,0xB0,0x43,0xED,0x0F,0x93,0x2F,0x01,0x50);
对第一父设备的子设备标识进行修改得到:
DEFINE_GUID(GUID_VGAME_INTERFACE_PDO,0xA77BC4D5,0x6AF7,0x4E69,0x8D,0xC4,0x6B,0x88,0xA6,0x02,0x8C,0xE8);
对第一父设备的系统日志标识进行修改得到:
WPP_DEFINE_CONTROL_GUID(VGAMEBusTraceGuid,(c5ce18fe,27bd,4049,b0b4,8a47cab1dcd1));
对第一父设备的配置信息标识进行修改得到:
#define DRIVERNAME"VirtualGamepad2:"
[Standard.NTamd64]
%VGAME2.DeviceDesc%=VGAME2_Device,VRVIU\VGAME2\Gen1
[Standard.NTx86]
%VGAME2.DeviceDesc%=VGAME2_Device,VRVIU\VGAME2\Gen1
[VGAME2_Service_Inst]
ServiceBinary=%12%\VGAME2.sys
[VGAME2_Device.NT.Wdf]
KmdfService=VGAME2,VGAME2_wdfsect
[Strings]
ManufacturerName="VRVIU Software Solutions 2"
DiskName="VGAME2 Installation Disk"
VGAME2.DeviceDesc="Virtual Gamepad Emulation Bus 2"
VGAME2.SVCDESC="Virtual Gamepad Emulation Service 2"
在步骤S1230中,根据第二源码生成第二子设备,对第二源码内的标识信息进行修改,从而生成第二子设备用于后续使用。
在可能实施的应用实例中,在设备的第二源码中存在各类标识信息,包括:父设备标识、子设备标识、系统日志标识、配置信息标识。其中父设备标识可以是设备总线的GUID(Globally Unique Identifier,全局唯一标识符),通过修改父设备标识从而标识新的设备即第二父设备;子设备标识可以是PDO的GUID,通过修改PDO的GUID从而标识新的子设备即第二子设备;系统日志标识可以是Tracking的GUID,通过修改Tracking的GUID从而标识新的系统日志对象;配置信息标识可以是设备inf(Device INFormation File,初始化信息文件)文件,通过修改inf文件的标识信息,从而定义新的硬件ID、设备名称和设备描述信息。
基于示例1中的所提到的根据第一父设备的第一源码生成第二源码为例,根据修改得到的第二源码生成第二子设备具体如下:
在实际应用中,可以根据示例1中所提及的第一父设备的第一源码、对第一源码进行修改得到第二源码以及根据第二源码生成第二子设备的内容进行扩展,在此就不再赘述。
在一些实施例中,参考图3,在执行完步骤S1230后还包括:
步骤S1240中,调用控制台工具执行启用指令启用第二子设备;通过调用控制台工具执行启用指令,通过该启用指令启用第二子设备作为新的虚拟子设备进行使用。
在实际应用中,当生成第二子设备后,需要启用第二子设备作为新的虚拟设备进行使用,可以以管理员身份运行devcon工具,并通过devcon工具执行启用指令从而启用新生成的第二子设备。
启用指令可以是在devcon工具上执行的指令,例如执行devcon enable deviceID进行启用生成第二子设备,其中deviceID是作为第二子设备的标识ID。在实际应用中,可以通过devcon工具查看到生成的第二子设备的标识ID,通过该标识ID确定第二子设备。
通过本发明实施例提供的设备异常处理方法,包括检测第一子设备是否异常,若第一子设备异常,则禁用该第一子设备,并且根据第一父设备生成第二父设备和第二子设备,并启用该第二子设备,从而解决虚拟设备异常情况,方便快捷,降低运营难度,减少运维成本。
第二方面,本发明实施例提供了一种设备异常处理系统,包括:检测模块和切换模块,通过检测模块获取第一子设备的异常状态,根据异常状态通过切换模块切换第一子设备为第二子设备,从而解决虚拟设备异常情况,方便快捷,降低运营难度,减少运维成本。
参照图4,示出了发明实施例中设备异常处理系统的模块框图,包括:
检测模块100,用于获取第一子设备的异常状态;
切换模块200,用于切换所述第一子设备为第二子设备;
在一些实施例中,如图5所示,检测模块100还包括工作检测模块110、响应检测模块120,其中工作检测模块110用于用于获取第一子设备的异常工作状态,并且配合响应检测模块120获取第一子设备的异常响应状态。
在一些实施例中,如图6所示,切换模块200包括禁用模块210和启用模块240,其中禁用模块210用于禁用出现异常状态的第一子设备;启用模块240用于启用新生成的第二子设备。
在一些实施例中,如图6所示,切换模块200包括源码生成模块220和设备生成模块230,其中源码生成模块220用于根据第一父设备的第一源码生成第二源码,并且配合设备生成模块230根据第二源码生成第二子设备。
其中,关于各个模块的具体功能描述和连接关系已在第一方面中详细论述,故不再赘述。
通过本发明实施例提供的设备异常处理系统,包括:检测模块和切换模块,通过检测模块获取第一子设备的异常状态,根据异常状态通过切换模块切换第一子设备为第二子设备,从而解决虚拟设备异常情况,方便快捷,降低运营难度,减少运维成本。
第三方面,本发明实施例还提供了一种电子设备,包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器;
其中,所述处理器通过调用所述存储器中存储的计算机程序,用于执行第一方面实施例中的设备异常方法。
存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序以及非暂态性计算机可执行程序,如本发明第一方面实施例中的设备异常方法。处理器通过运行存储在存储器中的非暂态软件程序以及指令,从而实现上述第一方面实施例中的设备异常方法。
存储器可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储执行上述第一方面实施例中的设备异常方法。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施方式中,存储器可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至该终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
实现上述第一方面实施例中的设备异常方法所需的非暂态软件程序以及指令存储在存储器中,当被一个或者多个处理器执行时,执行上述第一方面实施例中的设备异常方法。
第四方面,本申请实施例还提供了计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令用于:执行第一方面实施例中的设备异常方法;
在一些实施例中,该计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个控制处理器执行,例如,被第三方面实施例的电子设备中的一个处理器执行,可使得上述一个或多个处理器执行上述第一方面实施例中的设备异常方法。
以上所描述的设备实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统可以被实施为软件、固件、硬件及其适当的组合。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
上面结合附图对本发明实施例作了详细说明,但是本发明不限于上述实施例,在所述技术领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下作出各种变化。此外,在不冲突的情况下,本发明的实施例及实施例中的特征可以相互组合。
Claims (10)
1.一种设备异常处理方法,其特征在于,第一父设备与第一子设备连接,包括:
获取所述第一子设备的异常状态;
根据所述异常状态切换所述第一子设备为第二子设备,所述第二子设备根据所述第一父设备生成。
2.根据权利要求1所述的设备异常处理方法,其特征在于,所述异常状态包括:异常工作状态和异常响应状态;
所述获取所述第一子设备的异常状态,包括:获取所述第一子设备的所述异常工作状态和所述异常响应状态。
3.根据权利要求1所述的设备异常处理方法,其特征在于,所述根据所述异常状态切换所述第一子设备为第二子设备,包括:
根据所述第一父设备的第一源码生成第二源码;
根据所述第二源码生成所述第二子设备。
4.根据权利要求3所述的设备异常处理方法,其特征在于,所述根据所述异常状态切换所述第一子设备为第二子设备,还包括:
调用控制台工具执行禁用指令禁用所述第一子设备。
5.根据权利要求4所述的设备异常处理方法,其特征在于,所述根据所述异常状态切换所述第一子设备为第二子设备,还包括:
调用控制台工具执行启用指令启用所述第二子设备。
6.一种设备异常处理系统,其特征在于,第一父设备与第一子设备连接,包括:
检测模块,用于获取所述第一子设备的异常状态;
切换模块,用于切换所述第一子设备为第二子设备。
7.根据权利要求6所述的设备异常处理系统,其特征在于,所述检测模块包括:工作检测模块和响应检测模块;
所述工作检测模块,用于获取所述第一子设备的异常工作状态;
所述响应检测模块,用于获取所述第一子设备的异常响应状态。
8.根据权利要求6至7任一所述的设备异常处理系统,其特征在于,所述切换模块包括源码生成模块和设备生成模块;
所述源码生成模块,用于根据所述第一父设备的第一源码生成第二源码;
所述设备生成模块,用于根据所述第二源码生成所述第二子设备。
9.根据权利要求6所述的设备异常处理系统,其特征在于,所述切换模块还包括:
禁用模块,用于禁用所述第一子设备。
10.根据权利要求9所述的设备异常处理系统,其特征在于,所述切换模块还包括:
启用模块,用于启用所述第二子设备。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010581677.4A CN111782442B (zh) | 2020-06-23 | 2020-06-23 | 设备异常处理方法、系统、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010581677.4A CN111782442B (zh) | 2020-06-23 | 2020-06-23 | 设备异常处理方法、系统、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111782442A true CN111782442A (zh) | 2020-10-16 |
CN111782442B CN111782442B (zh) | 2024-01-12 |
Family
ID=72757679
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010581677.4A Active CN111782442B (zh) | 2020-06-23 | 2020-06-23 | 设备异常处理方法、系统、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111782442B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104484231A (zh) * | 2014-12-31 | 2015-04-01 | 武汉邮电科学研究院 | 虚拟机切换系统及切换方法 |
CN104717089A (zh) * | 2013-12-16 | 2015-06-17 | 华为技术有限公司 | 设备切换方法、路由桥设备及系统 |
CN104964682A (zh) * | 2015-05-07 | 2015-10-07 | 大唐终端技术有限公司 | 定位设备切换方法和装置 |
JP2015201008A (ja) * | 2014-04-07 | 2015-11-12 | 富士通株式会社 | 情報処理装置,情報処理プログラム及び情報処理方法 |
CN109522295A (zh) * | 2018-11-16 | 2019-03-26 | 中国银行股份有限公司 | 一种数据库对象自动构建、部署方法及装置 |
CN109918320A (zh) * | 2019-03-13 | 2019-06-21 | 北京淳中科技股份有限公司 | 一种usb设备的控制方法、装置及kvm控制系统 |
CN110673981A (zh) * | 2018-07-03 | 2020-01-10 | 中国电信股份有限公司 | 故障恢复方法、装置和系统 |
-
2020
- 2020-06-23 CN CN202010581677.4A patent/CN111782442B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104717089A (zh) * | 2013-12-16 | 2015-06-17 | 华为技术有限公司 | 设备切换方法、路由桥设备及系统 |
JP2015201008A (ja) * | 2014-04-07 | 2015-11-12 | 富士通株式会社 | 情報処理装置,情報処理プログラム及び情報処理方法 |
CN104484231A (zh) * | 2014-12-31 | 2015-04-01 | 武汉邮电科学研究院 | 虚拟机切换系统及切换方法 |
CN104964682A (zh) * | 2015-05-07 | 2015-10-07 | 大唐终端技术有限公司 | 定位设备切换方法和装置 |
CN110673981A (zh) * | 2018-07-03 | 2020-01-10 | 中国电信股份有限公司 | 故障恢复方法、装置和系统 |
CN109522295A (zh) * | 2018-11-16 | 2019-03-26 | 中国银行股份有限公司 | 一种数据库对象自动构建、部署方法及装置 |
CN109918320A (zh) * | 2019-03-13 | 2019-06-21 | 北京淳中科技股份有限公司 | 一种usb设备的控制方法、装置及kvm控制系统 |
Also Published As
Publication number | Publication date |
---|---|
CN111782442B (zh) | 2024-01-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11385993B2 (en) | Dynamic integration of command line utilities | |
US7546585B2 (en) | Method, system and computer program product for testing computer programs | |
CN104536776A (zh) | 一种在宿主端插件运行环境中运行插件应用的方法与装置 | |
US8799716B2 (en) | Heap dump occurrence detection | |
US7392149B2 (en) | Automatic software testing | |
CN113157347A (zh) | 一种探针的自动部署方法、电子设备和存储介质 | |
CN112463256A (zh) | 确定配置文件的方法、系统、电子设备及存储介质 | |
CN109032612B (zh) | 混合型应用的接口调用方法、装置及计算机可读存储介质 | |
CN114356779A (zh) | 编程语言调试方法、装置及终端设备 | |
CN110704315A (zh) | 一种嵌入式软件测试的故障注入装置 | |
CN112947907B (zh) | 一种创建代码分支的方法 | |
CN111385661B (zh) | 语音控制全屏播放的方法、装置、终端及存储介质 | |
WO2023046010A1 (zh) | 一种SteamVR系统的追踪设备参数配置方法及装置 | |
CN111782442B (zh) | 设备异常处理方法、系统、电子设备及存储介质 | |
CN113051088B (zh) | 程序加载方法、装置、设备及计算机可读介质 | |
CN110096888B (zh) | 一种加快验证及分析smm安全隐患的方法及系统 | |
CN112631949B (zh) | 一种调试方法、装置、计算机设备及存储介质 | |
CN115220859A (zh) | 数据输入方式的监测方法、装置、电子设备和存储介质 | |
CN113742156A (zh) | 联调方法、装置、电子设备及存储介质 | |
CN111611161B (zh) | 一种应用于航空电子软件的轻量级调试工具的实现方法 | |
CN113836046B (zh) | Mcu上虚拟机应用程序调试方法及系统 | |
CN115913913B (zh) | 网卡预启动执行环境功能故障定位方法及装置 | |
CN111198812B (zh) | 一种应用故障检测方法、应用故障检测装置及终端设备 | |
CN116185882A (zh) | 软件调试方法、装置、设备及存储介质 | |
CN116032891A (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 |