控制方法和电子设备与流程

文档序号:11965278阅读:181来源:国知局
控制方法和电子设备与流程
本发明涉及控制方法和电子设备。

背景技术:
在当前的电子设备中,在操作系统启动之时会创建系统服务(systemservice)进程,并且,这种系统服务进程是由很多系统服务组成的。但是,如果其中一个系统服务出现问题,电子设备的整个操作系统就会重启。例如,当用户正在使用电子设备进行文件的编辑或者进行一些其它重要的操作时,显然会中断用户当前正在进行的操作,从而造成用户的不便。此外,如果由于一个系统服务的错误而导致整个操作系统重启,也会浪费用户之前所进行的工作。因此,为了能够促进用户使用的便利性,需要一种控制方法和电子设备,从而解决这种由于系统服务的错误而导致用户工作不便的问题。

技术实现要素:
因此,针对上述现有技术中存在的问题和需求做出本发明。本发明实施例的目的是提供一种控制方法和电子设备,其能够通过拦截系统服务异常消息而在系统服务异常时不立即重启操作系统,从而促进用户的便利。根据本发明实施例的一个方面,提供了一种控制方法,用于一电子设备,其中,所述电子设备具有第一操作系统,在所述第一操作系统上运行第一虚拟机,且在所述第一虚拟机上运行第一系统服务,所述控制方法包括:在检测到所述第一系统服务异常的情况下,获得系统服务异常消息;将所述系统服务异常消息从所述第一系统服务传送到所述第一虚拟机;判定是否满足第一预定条件;以及,在满足第一预定条件的情况下,进一步将所述系统服务异常消息从所述第一虚拟机传送到所述第一操作系统,以使得所述第一操作系统重启。在上述控制方法中,所述第一虚拟机上进一步运行第二系统服务,所述判定是否满足第一预定条件的步骤具体为:所述第一虚拟机在接收到所述系统服务异常消息之后,通知所述第二系统服务;所述第二系统服务向用户输出接收到所述系统服务异常消息的提示消息;判定是否接收到用户允许重启所述第一操作系统的重启指令;在接收到用户允许重启所述第一操作系统的重启指令的情况下,将所述重启指令从所述第二系统服务传送到所述第一虚拟机;以及所述满足第一预定条件具体为:所述第一虚拟机接收到用户允许重启所述第一操作系统的重启指令。在上述控制方法中,所述第一虚拟机上进一步运行第二系统服务,所述判定是否满足第一预定条件的步骤具体为:所述第一虚拟机在接收到所述系统服务异常消息之后,通知所述第二系统服务;所述第二系统服务向用户输出接收到所述系统服务异常消息的提示消息;判定是否未接收到用户允许重启所述第一操作系统的重启指令的时间是否超过一时间阈值;以及所述满足第一预定条件具体为:所述未接收到所述重启指令的时间超过所述时间阈值。在上述控制方法中,所述第一虚拟机上进一步运行第二系统服务和第一应用,所述判定是否满足第一预定条件的步骤具体为:所述第一虚拟机在接收到所述系统服务异常消息之后,通知所述第二系统服务;所述第二系统服务向所述第一应用发送指示接收到所述系统服务异常消息的第一信息,其中,第一应用在接收到所述第一信息之后进行自动保存;判定是否接收到第一应用保存成功的第二信息;在接收到第一应用保存成功的第二信息的情况下,将所述第二信息从所述第二系统服务传送到所述第一虚拟机;以及所述满足第一预定条件具体为:所述第一虚拟机接收到所述第一应用保存成功的第二信息。在上述控制方法中,所述第二系统服务向所述第一应用输出指示接收到所述系统服务异常消息的第一信息具体为:所述第二系统服务向所述第一应用发送作为指令所述第一应用进行自动保存的保存指令的第一信息。在上述控制方法中,所述第一虚拟机上进一步运行第二系统服务,并且所述第一操作系统上进一步运行第二虚拟机,且在所述第二虚拟机上运行第一应用,所述判定是否满足第一预定条件的步骤具体为:所述第一虚拟机在接收到所述系统服务异常消息之后,通知所述第二系统服务;所述第二系统服务向所述第一应用发送指示接收到所述系统服务异常消息的第三信息;判定是否接收到第一应用保存成功的第四信息;在接收到第一应用保存成功的第四信息的情况下,将所述第四信息从所述第二系统服务传送到所述第一虚拟机;以及所述满足第一预定条件具体为:所述第一虚拟机接收到所述第一应用保存成功的第四信息。在上述控制方法中,所述第二系统服务向所述第一应用输出指示接收到所述系统服务异常消息的第三信息具体为:所述第二系统服务向所述第一应用发送作为指令所述第一应用进行自动保存的保存指令的第三信息。在上述控制方法中,所述第一操作系统上进一步运行第二虚拟机,且在所述第二虚拟机上运行第一应用,所述判定是否满足第一预定条件的步骤具体为:所述第一虚拟机在接收到所述系统服务异常消息之后,通知所述第二虚拟机;所述第二虚拟机向所述第一应用输出接收到所述系统服务异常消息的第五信息;判定是否接收到第一应用保存成功的第六信息;在接收到第一应用保存成功的第六信息的情况下,将所述第六信息从所述第二虚拟机传送到所述第一虚拟机;以及所述满足第一预定条件具体为:所述第一虚拟机接收到所述第一应用保存成功的第六信息。在上述控制方法中,所述第一操作系统上进一步运行第二虚拟机,且在所述第二虚拟机上运行第一应用,所述判定是否满足第一预定条件的步骤具体为:所述第一虚拟机在接收到所述系统服务异常消息之后,通知所述第二虚拟机;所述第二虚拟机向所述第一应用输出接收到所述系统服务异常消息的第七信息;判定是否接收到第一应用保存成功的第八信息;以及所述在满足第一预定条件的情况下进一步将所述系统服务异常消息从所述第一虚拟机传送到所述第一操作系统以使得所述第一操作系统重启的步骤具体为:所述第二虚拟机在判定接收到所述第八信息的情况下,将所述系统服务异常消息从所述第二虚拟机传送到所述第一操作系统,以使得所述第一操作系统重启。在上述控制方法中,所述第一虚拟机上运行多个系统服务,所述判定是否满足第一预定条件的步骤具体为:所述第一虚拟机在接收到所述系统服务异常消息之后,建立系统服务异常数值,并将所述系统服务异常数值设置为一;每当接收到另一系统服务异常的系统服务异常消息之后,将所述系统服务异常数值递增一;判定所述系统服务异常数值是否大于系统服务异常阈值;以及所述判定是否满足第一预定条件的步骤具体为:判定所述系统服务异常数值大于所述系统服务异常阈值。根据本发明实施例的另一方面,提供了一种电子设备,具有第一操作系统、在所述第一操作系统上运行第一虚拟机并在所述第一虚拟机上运行的第一系统服务,所述电子设备包括:消息获取单元,配置为在检测到所述第一系统服务异常的情况下,获得系统服务异常消息;第一通信单元,配置为将所述系统服务异常消息从所述第一系统服务传送到所述第一虚拟机;第一判定单元,配置为判定是否满足第一预定条件;以及,第二通信单元,配置为在满足第一预定条件的情况下,进一步将所述系统服务异常消息从所述第一虚拟机传送到所述第一操作系统,以使得所述第一操作系统重启。在上述电子设备中,所述第一虚拟机上进一步运行第二系统服务,所述第一判定单元进一步包括:第一通知单元,配置为在所述第一虚拟机在接收到所述系统服务异常消息之后,通知所述第二系统服务;第一输出单元,配置为控制所述第二系统服务向用户输出接收到所述系统服务异常消息的提示消息;第二判定单元,配置为判定是否接收到用户允许重启所述第一操作系统的重启指令;第三通信单元,配置为在接收到用户允许重启所述第一操作系统的重启指令的情况下,将所述重启指令从所述第二系统服务传送到所述第一虚拟机;以及,所述第二通信单元在所述第一虚拟机接收到用户允许重启所述第一操作系统的重启指令的情况下,进一步将所述系统服务异常消息从所述第一虚拟机传送到所述第一操作系统,以使得所述第一操作系统重启。在上述电子设备中,所述第一虚拟机上进一步运行第二系统服务,所述第一判定单元进一步包括:第二通知单元,配置为在所述第一虚拟机在接收到所述系统服务异常消息之后,通知所述第二系统服务;第二输出单元,配置为控制所述第二系统服务向用户输出接收到所述系统服务异常消息的提示消息;第三判定单元,配置为判定是否未接收到用户允许重启所述第一操作系统的重启指令的时间是否超过一时间阈值;以及,所述第二通信单元在所述未接收到所述重启指令的时间超过所述时间阈值的情况下,进一步将所述系统服务异常消息从所述第一虚拟机传送到所述第一操作系统,以使得所述第一操作系统重启。在上述电子设备中,所述第一虚拟机上进一步运行第二系统服务和第一应用,所述第一判定单元进一步包括:第三通知单元,配置为在所述第一虚拟机在接收到所述系统服务异常消息之后,通知所述第二系统服务;第四通信单元,配置为控制所述第二系统服务向所述第一应用发送指示接收到所述系统服务异常消息的第一信息,并控制所述第一应用在接收到所述第一信息之后进行自动保存;第四判定单元,配置为判定是否接收到第一应用保存成功的第二信息;第五通信单元,配置为在接收到第一应用保存成功的第二信息的情况下,将所述第二信息从所述第二系统服务传送到所述第一虚拟机;以及,所述第二通信单元在所述第一虚拟机接收到所述第一应用保存成功的第二信息的情况下,进一步将所述系统服务异常消息从所述第一虚拟机传送到所述第一操作系统,以使得所述第一操作系统重启。在上述电子设备中,所述第四通信单元配置为控制所述第二系统服务向所述第一应用发送作为指令所述第一应用进行自动保存的保存指令的第一信息。在上述电子设备中,所述第一虚拟机上进一步运行第二系统服务,并且所述第一操作系统上进一步运行第二虚拟机,且在所述第二虚拟机上运行第一应用,所述第一判定单元进一步包括:第四通知单元,配置为在所述第一虚拟机在接收到所述系统服务异常消息之后,通知所述第二系统服务;第六通信单元,配置为控制所述第二系统服务向所述第一应用发送指示接收到所述系统服务异常消息的第三信息;第五判定单元,配置为判定是否接收到第一应用保存成功的第四信息;第七通信单元,配置为在接收到第一应用保存成功的第四信息的情况下,将所述第四信息从所述第二系统服务传送到所述第一虚拟机;以及,所述第二通信单元在所述第一虚拟机接收到所述第一应用保存成功的第四信息的情况下,进一步将所述系统服务异常消息从所述第一虚拟机传送到所述第一操作系统,以使得所述第一操作系统重启。在上述电子设备中,所述第六通信单元配置为控制所述第二系统服务向所述第一应用发送作为指令所述第一应用进行自动保存的保存指令的第三信息。在上述电子设备中,所述第一操作系统上进一步运行第二虚拟机,且在所述第二虚拟机上运行第一应用,所述第一判定单元进一步包括:第五通知单元,配置为所述第一虚拟机在接收到所述系统服务异常消息之后,通知所述第二虚拟机;第三输出单元,配置为控制所述第二虚拟机向所述第一应用输出接收到所述系统服务异常消息的第五信息;第六判定单元,配置为判定是否接收到第一应用保存成功的第六信息;第八通信单元,配置为在接收到第一应用保存成功的第六信息的情况下,将所述第六信息从所述第二虚拟机传送到所述第一虚拟机;以及,所述第二通信单元在所述第一虚拟机接收到所述第一应用保存成功的第六信息,进一步将所述系统服务异常消息从所述第一虚拟机传送到所述第一操作系统,以使得所述第一操作系统重启。在上述电子设备中,所述第一操作系统上进一步运行第二虚拟机,且在所述第二虚拟机上运行第一应用,所述第一判定单元进一步包括:第六通知单元,配置为所述第一虚拟机在接收到所述系统服务异常消息之后,通知所述第二虚拟机;第四输出单元,配置为控制所述第二虚拟机向所述第一应用输出接收到所述系统服务异常消息的第七信息;第七判定单元,配置为判定是否接收到第一应用保存成功的第八信息;以及,所述第二通信单元在所述第二虚拟机判定接收到所述第八信息的情况下,将所述系统服务异常消息从所述第二虚拟机传送到所述第一操作系统,以使得所述第一操作系统重启。在上述电子设备中,所述第一虚拟机上运行多个系统服务,所述第一判定单元进一步包括:数值设置单元,配置为在所述第一虚拟机在接收到所述系统服务异常消息之后,建立系统服务异常数值,并将所述系统服务异常数值设置为一;递增单元,配置为每当接收到另一系统服务异常的系统服务异常消息之后,将所述系统服务异常数值递增一;第八判定单元,配置为判定所述系统服务异常数值是否大于系统服务异常阈值;以及,所述在第二通信单元在所述系统服务异常数值大于所述系统服务异常阈值的情况下,进一步将所述系统服务异常消息从所述第一虚拟机传送到所述第一操作系统,以使得所述第一操作系统重启。通过根据本发明实施例的控制方法和电子设备,可以拦截系统服务异常消息而在系统服务异常时不立即重启操作系统,从而促进用户的便利。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1是示出根据本发明实施例的控制方法的示意性流程图;图2是示出根据本发明实施例的系统操作的第一示例的示意图;图3是示出根据本发明实施例的系统操作的第二示例的示意图;图4是示出根据本发明实施例的系统操作的第三示例的示意图;图5是示出根据本发明实施例的系统操作的第四示例的示意图;图6是示出根据本发明实施例的系统操作的第五示例的示意图;图7是示出根据本发明实施例的系统操作的第六示例的示意图;图8是示出根据本发明实施例的电子设备的示意性框图。具体实施方式下面,将结合附图详细描述根据本发明实施例的控制方法和电子设备。根据本发明实施例的一个方面,提供了一种控制方法,用于一电子设备,其中,所述电子设备具有第一操作系统,在所述第一操作系统上运行第一虚拟机,且在所述第一虚拟机上运行第一系统服务,所述控制方法包括:在检测到所述第一系统服务异常的情况下,获得系统服务异常消息;将所述系统服务异常消息从所述第一系统服务传送到所述第一虚拟机;判定是否满足第一预定条件;以及,在满足第一预定条件的情况下,进一步将所述系统服务异常消息从所述第一虚拟机传送到所述第一操作系统,以使得所述第一操作系统重启。通过根据本发明实施例的控制方法,可以在虚拟机层对于系统服务的异常进行监控,并且拦截由于系统服务异常而产生的系统服务异常消息,从而使得操作系统并不由于该系统服务异常消息而立即重启。通过对第一预定条件的判断,可以设定仅在特定情况下使得系统服务异常消息通过而重启操作系统,这增强了用户使用的便利。图1是示出根据本发明实施例的控制方法的示意性流程图。如图1所示,根据本发明实施例的控制方法用于一电子设备,其中,该电子设备具有第一操作系统,在第一操作系统上运行第一虚拟机,且在第一虚拟机上运行第一系统服务,该控制方法包括:S1,在检测到第一系统服务异常的情况下,获得系统服务异常消息;S2,将该系统服务异常消息从第一系统服务传送到第一虚拟机;S3,判定是否满足第一预定条件;以及,S4,在满足第一预定条件的情况下,进一步将系统服务异常消息从第一虚拟机传送到第一操作系统,以使得第一操作系统重启。图2是示出根据本发明实施例的系统操作的第一示例的示意图。如图2所示,在根据本发明实施例的虚拟机架构中,在电子设备的系统硬件之上运行第一操作系统,并在第一操作系统上运行第一虚拟机。在第一虚拟机上,运行一个或多个系统服务,这里,虽然在图2中仅示出了第一系统服务和第二系统服务,但是本领域技术人员可以理解整个系统服务进程可以包含多于两个系统服务。如图2所示,当第一系统服务出现异常时,获得系统服务异常消息,在现有技术的情况下,这种系统服务异常消息被经由第一虚拟机传递到第一操作系统,从而使得第一操作系统重启。相对地,在根据本发明实施例的控制方法中,由第一虚拟机截取该系统服务异常消息,并判定是否满足预定条件,从而仅在满足预定条件的情况下将该系统服务异常消息传递给第一操作系统以使得第一操作系统重启。这里,在根据本发明实施例的控制方法中,当第一虚拟机接收到系统服务异常消息并保持该系统服务异常消息而不传递到第一操作系统时,可以设置第一虚拟机通过另一系统服务,例如第二系统服务向用户通知接收到该系统服务异常消息。这样,用户可以知道第一虚拟机已经接收到了系统服务异常消息,从而可能在一段时间内第一操作系统重启,这可以促进用户使用的便利。在上述控制方法中,所述第一虚拟机上进一步运行第二系统服务,所述判定是否满足第一预定条件的步骤具体为:所述第一虚拟机在接收到所述系统服务异常消息之后,通知所述第二系统服务;所述第二系统服务向用户输出接收到所述系统服务异常消息的提示消息;判定是否接收到用户允许重启所述第一操作系统的重启指令;在接收到用户允许重启所述第一操作系统的重启指令的情况下,将所述重启指令从所述第二系统服务传送到所述第一虚拟机;以及所述满足第一预定条件具体为:所述第一虚拟机接收到用户允许重启所述第一操作系统的重启指令。在上述控制方法中,所述第一虚拟机上进一步运行第二系统服务,所述判定是否满足第一预定条件的步骤具体为:所述第一虚拟机在接收到所述系统服务异常消息之后,通知所述第二系统服务;所述第二系统服务向用户输出接收到所述系统服务异常消息的提示消息;判定是否未接收到用户允许重启所述第一操作系统的重启指令的时间是否超过一时间阈值;以及所述满足第一预定条件具体为:所述未接收到所述重启指令的时间超过所述时间阈值。图3是示出根据本发明实施例的系统操作的第二示例的示意图。如图3所示,当第一虚拟机接收到系统服务异常消息之后,将该消息通知给第一虚拟机上运行的第二系统服务,并由该第二系统服务向用户输出提示第一虚拟机已经接收到系统服务异常消息的提示消息。在输出提示之后,第二系统服务等待用户的回应,如果接收到用户允许重启第一操作系统的指令,则可以将该重启指令从第二系统服务传送到第一虚拟机。这样,第一虚拟机可以设置其传递系统服务异常消息的条件为接收到用户的重启指令,从而将系统服务异常消息传递到第一操作系统以使得系统重启。另一方面,如果第二系统服务没有接收到用户的回应,可以在第一虚拟机设置计时器,以判定向用户输出接收到系统服务异常消息的提示消息之后是否经过了预定时间,从而在经过了预定时间之后,即使没有接收到用户允许重启第一操作系统的指令,也将系统服务异常消息传递到第一操作系统而使得系统重启。这里,本领域技术人员可以理解,这种计时器可以设置在第一虚拟机,也可以设置在第二系统服务中,当计时器设置在第二系统服务中时,第二系统服务可以判定是否在预定时间之后仍然没有接收到用户允许第一操作系统重启的指令,并在计时器超时之后将计时器超时的信息传送到第一虚拟机,从而使得第一虚拟机将系统服务异常消息传递到第一操作系统而使得系统重启。在上述设置计时器的情况中,优选地基于用户的操作情况来设置计时器的时间阈值,例如,设置时间阈值为一分钟,以使得用户可以在获知系统服务异常之后进行重启操作系统之前的准备工作。并且,这种时间阈值的设置也可以是动态地,即,根据当前操作系统正在运行的系统服务和其它应用的数目来动态地确定,以在当前操作系统正在运行的系统服务和其它应用的数目较大时,将上述时间阈值设置得较长,从而使得用户有充分的时间进行重启操作系统之前的准备工作。在上述控制方法中,所述第一虚拟机上进一步运行第二系统服务和第一应用,所述判定是否满足第一预定条件的步骤具体为:所述第一虚拟机在接收到所述系统服务异常消息之后,通知所述第二系统服务;所述第二系统服务向所述第一应用发送指示接收到所述系统服务异常消息的第一信息,其中,第一应用在接收到所述第一信息之后进行自动保存;判定是否接收到第一应用保存成功的第二信息;在接收到第一应用保存成功的第二信息的情况下,将所述第二信息从所述第二系统服务传送到所述第一虚拟机;以及所述满足第一预定条件具体为:所述第一虚拟机接收到所述第一应用保存成功的第二信息。在上述控制方法中,所述第二系统服务向所述第一应用输出指示接收到所述系统服务异常消息的第一信息具体为:所述第二系统服务向所述第一应用发送作为指令所述第一应用进行自动保存的保存指令的第一信息。图4是示出根据本发明实施例的系统操作的第三示例的示意图。如图4所示,在第一虚拟机上除第一系统服务和第二系统服务之外,还运行一个或多个应用,例如图4所示的第一应用和第二应用。如上所述,当第一系统服务出现异常而使得需要重启第一操作系统时,可能有其它应用正在运行,这样,操作系统的重启将会打断正在运行的应用的运行,从而造成用户的不便。在上面如图3所示的根据本发明实施例的控制方法的示例中,通过设置计时器或者设置用户允许重启操作系统的指令的接收来使得用户可以在操作系统重启之前完成准备工作,而在如图4所示的根据本发明实施例的控制方法的示例中,则可以自动完成当前正在运行的应用的保存,避免用户的手工操作,从而进一步促进了用户的便利。具体地说,当第一虚拟机接收到第一系统服务异常的系统服务异常消息之后,将该系统服务异常消息通知给第二系统服务,第二系统服务向第一应用发送指示接收到系统服务异常消息的第一信息,其中,第一应用在接收到第一信息之后进行自动保存,这里,该指示接收到系统服务异常消息的第一信息可以是系统服务异常消息本身,这就需要设置第一应用在接收到该系统服务异常消息之后进行自动保存,此外,该第一信息也可以是指令第一应用进行自动保存的保存指令,从而使得第一应用在接收到第一信息之后自动保存,而需要设置第二系统服务使得在接收到系统服务异常消息之后向第一应用发送指令第一应用进行自动保存的保存指令。第一应用在完成自动保存之后,向第二系统服务发送保存成功的第二信息,这样,第二系统服务在接收到第一应用保存成功的第二信息的情况下,将该第二信息传送到第一虚拟机。第一虚拟机在接收到第一应用保存成功的第二信息之后,将系统服务异常消息传送到第一操作系统以使得系统重启。在上述控制方法中,所述第一虚拟机上进一步运行第二系统服务,并且所述第一操作系统上进一步运行第二虚拟机,且在所述第二虚拟机上运行第一应用,所述判定是否满足第一预定条件的步骤具体为:所述第一虚拟机在接收到所述系统服务异常消息之后,通知所述第二系统服务;所述第二系统服务向所述第一应用发送指示接收到所述系统服务异常消息的第三信息;判定是否接收到第一应用保存成功的第四信息;在接收到第一应用保存成功的第四信息的情况下,将所述第四信息从所述第二系统服务传送到所述第一虚拟机;以及所述满足第一预定条件具体为:所述第一虚拟机接收到所述第一应用保存成功的第四信息。在上述控制方法中,所述第二系统服务向所述第一应用输出指示接收到所述系统服务异常消息的第三信息具体为:所述第二系统服务向所述第一应用发送作为指令所述第一应用进行自动保存的保存指令的第三信息。在上述如图2到图4所示的第一到第三示例中,分别示出了在第一虚拟机根据是否超时,是否接收到用户允许操作系统重启的指令和是否完成了正在运行的应用的自动保存来重启第一操作系统的示例。这里,本领域技术人员可以立即,也可以将上述判定条件进行两两结合,或者将上述三个判定条件全部结合在一起,以判定是否重启第一操作系统。例如,可以在超时的情况下进一步判定正在运行的应用是否保存成功,等等,本发明实施例并不意在对此进行任意限制。图5是示出根据本发明实施例的系统操作的第四示例的示意图。图5所示的示例与如图4所示的根据本发明实施例的控制方法的示例的区别在于,在第一虚拟机之外的第二虚拟机上运行一个或多个应用,例如如图5所示的第一应用和第二应用。此外,图5所示的示例的其它方面与如图4所示的相同,在此为了避免冗余便不再赘述。这里,本领域技术人员可以理解,在电子设备的虚拟机架构中,并不限定在操作系统上运行的虚拟机的数目,此外,也并不限定在每个虚拟机上运行的系统服务和应用的数目。通常,在一个虚拟机上运行由多个系统服务组成的系统服务进程,而在每个虚拟机上运行一个单独的应用。但是,也可以在不同的虚拟机上运行不同的系统服务,或者在相同的虚拟机上运行多个应用,本发明实施例并不意在对此进行任意限制。在上述控制方法中,所述第一操作系统上进一步运行第二虚拟机,且在所述第二虚拟机上运行第一应用,所述判定是否满足第一预定条件的步骤具体为:所述第一虚拟机在接收到所述系统服务异常消息之后,通知所述第二虚拟机;所述第二虚拟机向所述第一应用输出接收到所述系统服务异常消息的第五信息;判定是否接收到第一应用保存成功的第六信息;在接收到第一应用保存成功的第六信息的情况下,将所述第六信息从所述第二虚拟机传送到所述第一虚拟机;以及所述满足第一预定条件具体为:所述第一虚拟机接收到所述第一应用保存成功的第六信息。图6是示出根据本发明实施例的系统操作的第五示例的示意图。图6所示的示例与如图5所示的根据本发明实施例的控制方法的示例的区别在于,通过虚拟机之间的通信路径,而不是第二系统服务与第一应用之间的通信路径来传递指示第一应用进行自动保存的信息以及第一应用保存成功的信息。此外,图6所示的示例的其它方面与如图5所示的相同,在此为了避免冗余便不再赘述。在上述控制方法中,所述第一操作系统上进一步运行第二虚拟机,且在所述第二虚拟机上运行第一应用,所述判定是否满足第一预定条件的步骤具体为:所述第一虚拟机在接收到所述系统服务异常消息之后,通知所述第二虚拟机;所述第二虚拟机向所述第一应用输出接收到所述系统服务异常消息的第七信息;判定是否接收到第一应用保存成功的第八信息;以及所述在满足第一预定条件的情况下进一步将所述系统服务异常消息从所述第一虚拟机传送到所述第一操作系统以使得所述第一操作系统重启的步骤具体为:所述第二虚拟机在判定接收到所述第八信息的情况下,将所述系统服务异常消息从所述第二虚拟机传送到所述第一操作系统,以使得所述第一操作系统重启。图7是示出根据本发明实施例的系统操作的第六示例的示意图。图7所示的示例与如图6所示的根据本发明实施例的控制方法的示例的区别在于,第二虚拟机在获得了第一应用保存成功的信息之后,并不需要再将该信息传送到第一虚拟机而由第一虚拟机将系统服务异常消息传送到第一操作系统而使得第一操作系统重启,而是可以直接由第二虚拟机将系统服务异常消息传送到第一操作系统而使得第一操作系统重启。在这种情况下,第二虚拟机可以将第一应用保存成功的信息通知到第一虚拟机,也可以不通知给虚拟机。此外,图7所示的示例的其它方面与如图6所示的相同,在此为了避免冗余便不再赘述。这里,本领域技术人员可以理解,与上面在第二系统服务和第一应用的通信中的情况类似,在第一虚拟机和第二虚拟机之间传送的信息可以是系统服务异常消息本身,也可以是指令第二虚拟机的第一应用进行自动保存的信息。在第一虚拟机和第二虚拟机之间传送的信息是指令第一应用进行自动保存的信息的情况下,第二虚拟机并不保存系统服务异常消息,因此便无法通过第二虚拟机来传送该系统服务异常消息使得第一操作系统重启。当然,在根据本发明实施例的控制方法中,也可以使得第二虚拟机在接收到第一应用保存成功的信息之后从第一虚拟机或以其它方式获取该系统服务异常消息,而无需经过第一虚拟机使得第一操作系统重启。本领域技术人员可以理解上述在虚拟机层面和系统服务以及应用层面的通信方式仅是为了更好地描述根据本发明实施例的控制方法,而并不在任何意义上构成对根据本发明实施例的控制方法的限定。在上述控制方法中,所述第一虚拟机上运行多个系统服务,所述判定是否满足第一预定条件的步骤具体为:所述第一虚拟机在接收到所述系统服务异常消息之后,建立系统服务异常数值,并将所述系统服务异常数值设置为一;每当接收到另一系统服务异常的系统服务异常消息之后,将所述系统服务异常数值递增一;判定所述系统服务异常数值是否大于系统服务异常阈值;以及所述判定是否满足第一预定条件的步骤具体为:判定所述系统服务异常数值大于所述系统服务异常阈值。如上所述,在运行系统服务进程的电子设备中,系统服务进程通常由多个系统服务组成,在根据本发明实施例的控制方法中,可以进一步设置计数器,以判定出现异常的系统服务的数目,并且仅在出现异常的系统服务的数目大于一阈值时重启操作系统。从而避免在单一系统服务出现异常的情况下就立即重启操作系统给用户带来的不便。这里,可以进一步根据系统服务的重要程度来为各个系统服务设置不同的权重,以使得系统服务的进程影响系统运行达到一定程度之后才重启操作系统,从而促进用户的便利。根据本发明实施例的另一方面,提供了一种电子设备,具有第一操作系统、在所述第一操作系统上运行第一虚拟机并在所述第一虚拟机上运行的第一系统服务,所述电子设备包括:消息获取单元,配置为在检测到所述第一系统服务异常的情况下,获得系统服务异常消息;第一通信单元,配置为将所述系统服务异常消息从所述第一系统服务传送到所述第一虚拟机;第一判定单元,配置为判定是否满足第一预定条件;第二通信单元,配置为在满足第一预定条件的情况下,进一步将所述系统服务异常消息从所述第一虚拟机传送到所述第一操作系统,以使得所述第一操作系统重启。图8是示出根据本发明实施例的电子设备的示意性框图。如图8所示,根据本发明实施例的电子设备100具有第一操作系统、在第一操作系统上运行第一虚拟机并在第一虚拟机上运行的第一系统服务,电子设备100包括:消息获取单元101,配置为在检测到第一系统服务异常的情况下,获得系统服务异常消息;第一通信单元102,配置为将由消息获取单元101获取的系统服务异常消息从第一系统服务传送到第一虚拟机;第一判定单元103,配置为判定是否满足第一预定条件;第二通信单元104,配置为在满足第一预定条件的情况下,进一步将系统服务异常消息从第一虚拟机传送到第一操作系统,以使得第一操作系统重启。在上述电子设备中,所述第一虚拟机上进一步运行第二系统服务,所述第一判定单元进一步包括:第一通知单元,配置为在所述第一虚拟机在接收到所述系统服务异常消息之后,通知所述第二系统服务;第一输出单元,配置为控制所述第二系统服务向用户输出接收到所述系统服务异常消息的提示消息;第二判定单元,配置为判定是否接收到用户允许重启所述第一操作系统的重启指令;第三通信单元,配置为在接收到用户允许重启所述第一操作系统的重启指令的情况下,将所述重启指令从所述第二系统服务传送到所述第一虚拟机;以及所述第二通信单元在所述第一虚拟机接收到用户允许重启所述第一操作系统的重启指令的情况下,进一步将所述系统服务异常消息从所述第一虚拟机传送到所述第一操作系统,以使得所述第一操作系统重启。在上述电子设备中,所述第一虚拟机上进一步运行第二系统服务,所述第一判定单元进一步包括:第二通知单元,配置为在所述第一虚拟机在接收到所述系统服务异常消息之后,通知所述第二系统服务;第二输出单元,配置为控制所述第二系统服务向用户输出接收到所述系统服务异常消息的提示消息;第三判定单元,配置为判定是否未接收到用户允许重启所述第一操作系统的重启指令的时间是否超过一时间阈值;以及所述第二通信单元在所述未接收到所述重启指令的时间超过所述时间阈值的情况下,进一步将所述系统服务异常消息从所述第一虚拟机传送到所述第一操作系统,以使得所述第一操作系统重启。在上述电子设备中,所述第一虚拟机上进一步运行第二系统服务和第一应用,所述第一判定单元进一步包括:第三通知单元,配置为在所述第一虚拟机在接收到所述系统服务异常消息之后,通知所述第二系统服务;第四通信单元,配置为控制所述第二系统服务向所述第一应用发送指示接收到所述系统服务异常消息的第一信息,并控制所述第一应用在接收到所述第一信息之后进行自动保存;第四判定单元,配置为判定是否接收到第一应用保存成功的第二信息;第五通信单元,配置为在接收到第一应用保存成功的第二信息的情况下,将所述第二信息从所述第二系统服务传送到所述第一虚拟机;以及所述第二通信单元在所述第一虚拟机接收到所述第一应用保存成功的第二信息的情况下,进一步将所述系统服务异常消息从所述第一虚拟机传送到所述第一操作系统,以使得所述第一操作系统重启。在上述电子设备中,所述第四通信单元配置为控制所述第二系统服务向所述第一应用发送作为指令所述第一应用进行自动保存的保存指令的第一信息。在上述电子设备中,所述第一虚拟机上进一步运行第二系统服务,并且所述第一操作系统上进一步运行第二虚拟机,且在所述第二虚拟机上运行第一应用,所述第一判定单元进一步包括:第四通知单元,配置为在所述第一虚拟机在接收到所述系统服务异常消息之后,通知所述第二系统服务;第六通信单元,配置为控制所述第二系统服务向所述第一应用发送指示接收到所述系统服务异常消息的第三信息;第五判定单元,配置为判定是否接收到第一应用保存成功的第四信息;第七通信单元,配置为在接收到第一应用保存成功的第四信息的情况下,将所述第四信息从所述第二系统服务传送到所述第一虚拟机;以及所述第二通信单元在所述第一虚拟机接收到所述第一应用保存成功的第四信息的情况下,进一步将所述系统服务异常消息从所述第一虚拟机传送到所述第一操作系统,以使得所述第一操作系统重启。在上述电子设备中,所述第六通信单元配置为控制所述第二系统服务向所述第一应用发送作为指令所述第一应用进行自动保存的保存指令的第三信息。在上述电子设备中,所述第一操作系统上进一步运行第二虚拟机,且在所述第二虚拟机上运行第一应用,所述第一判定单元进一步包括:第五通知单元,配置为所述第一虚拟机在接收到所述系统服务异常消息之后,通知所述第二虚拟机;第三输出单元,配置为控制所述第二虚拟机向所述第一应用输出接收到所述系统服务异常消息的第五信息;第六判定单元,配置为判定是否接收到第一应用保存成功的第六信息;第八通信单元,配置为在接收到第一应用保存成功的第六信息的情况下,将所述第六信息从所述第二虚拟机传送到所述第一虚拟机;以及所述第二通信单元在所述第一虚拟机接收到所述第一应用保存成功的第六信息,进一步将所述系统服务异常消息从所述第一虚拟机传送到所述第一操作系统,以使得所述第一操作系统重启。在上述电子设备中,所述第一操作系统上进一步运行第二虚拟机,且在所述第二虚拟机上运行第一应用,所述第一判定单元进一步包括:第六通知单元,配置为所述第一虚拟机在接收到所述系统服务异常消息之后,通知所述第二虚拟机;第四输出单元,配置为控制所述第二虚拟机向所述第一应用输出接收到所述系统服务异常消息的第七信息;第七判定单元,配置为判定是否接收到第一应用保存成功的第八信息;以及所述第二通信单元在所述第二虚拟机判定接收到所述第八信息的情况下,将所述系统服务异常消息从所述第二虚拟机传送到所述第一操作系统,以使得所述第一操作系统重启。在上述电子设备中,所述第一虚拟机上运行多个系统服务,所述第一判定单元进一步包括:数值设置单元,配置为在所述第一虚拟机在接收到所述系统服务异常消息之后,建立系统服务异常数值,并将所述系统服务异常数值设置为一;递增单元,配置为每当接收到另一系统服务异常的系统服务异常消息之后,将所述系统服务异常数值递增一;第八判定单元,配置为判定所述系统服务异常数值是否大于系统服务异常阈值;以及所述在第二通信单元在所述系统服务异常数值大于所述系统服务异常阈值的情况下,进一步将所述系统服务异常消息从所述第一虚拟机传送到所述第一操作系统,以使得所述第一操作系统重启。通过根据本发明实施例的控制方法和电子设备,可以通过在底层对系统服务异常消息进行监控,并在接收到系统服务异常消息的情况下进行进一步的判定,从而避免了系统服务错误导致操作系统立即重启给用户带来的不便。因此,通过根据本发明实施例的控制方法和电子设备,可以拦截系统服务异常消息而在系统服务异常时不立即重启操作系统,以促进用户的便利。本发明已经参考具体实施例进行了详细说明。然而,很明显,在不背离本发明的精神的情况下,本领域技术人员能够对实施例执行更改和替换。换句话说,本发明用说明的形式公开,而不是被限制地解释。要判断本发明的要旨,应该考虑所附的权利要求。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1