CN104360900A - 用于运行多操作系统的方法以及相应的系统和移动设备 - Google Patents

用于运行多操作系统的方法以及相应的系统和移动设备 Download PDF

Info

Publication number
CN104360900A
CN104360900A CN201410612578.2A CN201410612578A CN104360900A CN 104360900 A CN104360900 A CN 104360900A CN 201410612578 A CN201410612578 A CN 201410612578A CN 104360900 A CN104360900 A CN 104360900A
Authority
CN
China
Prior art keywords
operating
input
foregrounding
user
host
Prior art date
Application number
CN201410612578.2A
Other languages
English (en)
Other versions
CN104360900B (zh
Inventor
杨晓伟
许东晓
Original Assignee
上海迈微软件科技有限公司
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 上海迈微软件科技有限公司 filed Critical 上海迈微软件科技有限公司
Priority to CN201410612578.2A priority Critical patent/CN104360900B/zh
Publication of CN104360900A publication Critical patent/CN104360900A/zh
Application granted granted Critical
Publication of CN104360900B publication Critical patent/CN104360900B/zh

Links

Abstract

本发明涉及一种运行多操作系统的方法,该方法包括下列步骤:作为主机操作系统运行第一操作系统;在主机操作系统上启动支持虚拟化的虚拟机监视程序VMM;在所述VMM上作为客机操作系统运行第二操作系统;选择第一操作系统和第二操作系统中的一个操作系统作为前台操作系统而另一操作系统作为后台操作系统,使得所提供的用户体验是,前台操作系统拥有全部的输入设备和输出设备。本发明还涉及相应的系统和移动设备。

Description

用于运行多操作系统的方法以及相应的系统和移动设备

技术领域

[0001] 本发明总的来说涉及计算机操作系统领域,具体而言涉及用于运行多操作系统的方法以及相应的系统和移动设备。

背景技术

[0002] 近年来,平板电脑和智能手机等移动设备已逐渐成为人们日常生活中离不开的首选计算、游戏、或影音播放设备。不同于?0,移动设备的操作主要基于触摸屏,并少量地涉及诸如电源键和音量+/-键之类的物理按键。运行在移动设备上的操作系统包括安卓、103和!'12611等。通常,一个移动设备只能运行一个特定的操作系统,比如安卓设备可以运行安卓操作系统和安卓应用,但不能运行1111(10界8操作系统和1111(10界8应用。这极大地限制了移动设备对为不同操作系统开发的应用程序的支持。

[0003] 针对该问题,从现有技术中公知的一种解决方案是双启动。在双启动方案中,一个移动设备可以在其存储设备中同时安装两个(或更多个)操作系统。例如,在一个移动设备中首先安装1111(10旧操作系统,然后安装安卓操作系统。用户在每次开机时可以选择启动安卓或1111(10…操作系统,从而实现在同一移动设备上运行不同操作系统的相应应用程序。然而双启动的缺点是,同一时间只能运行一个操作系统,而且两个操作系统之间的切换过程通常需要很长时间,比如10秒以上。该切换过程的具体步骤如下(假定当前正在运行安卓应用程序X,但用户现在想运行应用程序X、:

[0004] 4:关闭应用程序X

[0005] 8:关闭安卓操作系统

[0006] 0:系统重新启动

[0007] 0:(自动或手动)选择启动评1=(10界8

[0008] 3:启动评111(10界8

[0009] ?:启动应用程序X

[0010] 这个切换过程是耗时的,用户通常要等待10秒以上(大部分情况下需要30秒以上)才能切换到不同的操作系统,然后才能启动该操作系统下的相应应用程序。

[0011] 同时,在双启动方案中,只有当前操作系统是活动的,而另一操作系统则完全关闭。这往往给用户带来不便,比如当用户在1111(10旧操作系统中编辑101X1文档时,如果这时有微信消息发送到不活动的另一安卓操作系统,则双启动方案中的安卓操作系统并不能接收这个微信消息,也不能够提醒用户该系统有微信信息到来。

[0012] 操 4乍系统车专换(08 # 见 111:1:138: //1111:61.801:1^66^6111:8.(30111/8214/¢01111601:/868810111)61:811.^ ? 5555108 10=1154)提供了一种借助于 8103 或固件的改进的解决方案。操作系统可以利用睡眠模式(比如33或者3013见://011.界

% 288781:6111 011 ¢11113% 29)较快地完成八,、8,、。,步骤:

[0013]八’:挂起应用程序X

[0014] 8’:休眠安卓操作系统

[0015] C’:B I OS或固件恢复另一个操作系统

[0016] 并利用操作系统本身的恢复(Resume)模式较快地完成D’、E’、F’步骤:

[0017] D’:(自动或手动)选择恢复Windows

[0018] E’:恢复 Windows

[0019] F’:恢复应用程序Y

[0020] 然而,在上述操作系统转换方案中,该系统切换仍然持续较长时间(据记载至少4秒),并且仍然只有当前操作系统是活动的。

[0021] 另一公知解决方案是系统虚拟化。系统虚拟化技术发源于服务器,用于在一个服务器上同时运行多个操作系统。该技术也已逐步被应用在客户端机器上,比如带鼠标键盘的台式机和笔记本电脑。在虚拟化中,客机操作系统(Guest OS)的输出屏幕往往由主机操作系统(Host OS)的屏幕窗口系统中的一个窗口来表不(例如某窗口 A显不客机操作系统屏幕,而其它窗口还是显示主机操作系统上的应用程序的输出)。输入事件首先由主机操作系统处理,如果输入事件是面向客机操作系统(如当前窗口聚焦在如果输入事件是客机操作系统的显示窗口等),则再由主操作系统将该事件发送到虚拟机设备模型,由设备模型向响应的客户机生成一个虚拟输入事件。然而,由于种种技术原因,虚拟化技术并未在以小尺寸显示器和触摸屏为主的平板电脑和手机等移动设备上得到应用。这些技术原因例如包括:屏幕小主机操作系统不支持多窗口操作方式,或者(在主机操作系统支持多窗口操作方式的情况下)以多窗口方式显示客机操作系统的输出屏幕可能给用户体验带来不便;各操作系统的输入输出设备不一致(如Windows操作系统一般有Windows键,Android有Home键回退键,而1S只有Home键);切换复杂;用户体验差等等。而且,由于当时移动设备的内存较小、处理器频率较低,因此在移动设备上采用虚拟化技术未带来流畅的用户体验。

发明内容

[0022] 本发明的任务在于,提供一种用于运行多操作系统的方法以及相应系统和移动设备,其中与现有技术相比,所述方法以及系统和移动设备能够提供多个操作系统中的每个操作系统的独占系统用户体验,减小切换操作系统所需的时间,并且后台系统在后台期间仍可以为用户执行某些操作(如接收消息、邮件等等)。

[0023] 根据本发明,该任务通过一种用于运行多操作系统的方法来解决,该方法包括下列步骤:

[0024].作为主机操作系统运行第一操作系统;

[0025].在主机操作系统上启动支持虚拟化的虚拟机监视程序VMM ;

[0026].在所述VMM上作为客机操作系统运行第二操作系统;

[0027].选择第一操作系统和第二操作系统中的一个操作系统作为前台操作系统而另一操作系统则作为后台操作系统,使得所提供的用户体验是,前台操作系统拥有全部的输入设备和输出设备。

[0028] 在本发明的范围内,“前台操作系统拥有全部的输入设备和输出设备”这一用户体验是指,几乎所有的用户输入(除了指示切换操作系统的用户输入以外)都由前台操作系统进行最终处理并且前台操作系统产生的相应的输出完全显示在物理显示设备上,使得用户就像在与一个运行原生前台操作系统的设备交互,而不管前台操作系统是主机操作系统还是客机操作系统。这样,多个操作系统中的每个操作系统都可以给用户带来独占系统的用户体验;同时,由于两个操作系统都是活动的,后台操作系统在处于后台期间仍然可以进行某些操作(比如接收消息、邮件和通知等等),从而极大地改善了运行多操作系统的移动设备的用户体验。并且前后台操作系统之间的切换非常迅速(通常低于几毫秒

[0029] 在本发明的一个有利的扩展方案中规定,后台操作系统不具有输出。通过该措施,用户完全感觉不到后台系统存在带来的影响,因为后台系统不与用户进行任何交互也不向用户提供任何输出,由此可以向用户提供绝对独占系统的用户体验。这在例如在用户专注于前台系统而不希望被后台系统打扰时是有利的。

[0030] 而在本发明的另一有利的扩展方案规定,后台系统具有一定的输出。例如,后台系统在处于后台期间仍可向用户输出微信提醒、短消息提醒、邮件提醒、未接来电提醒、电池电量提醒等等。这在大多数情况下是有利的,因为用户在与前台系统交互时一般而言并不希望错过后台系统中的某些重要事件。后台系统具有哪些输出可以由用户自定义或者由厂家预设。这些后台系统的输出如何显示在屏幕或者前台系统上可以由用户自定义或者由厂家预设,比如通过八系统中的状态条,同时在八11(^01(1状态条弹出时,将状态条显示在评111(10界8的屏幕中。

[0031] 在本发明的范围内,为简单起见,将与操作系统本身的交互(如使用系统自带功能、设置系统等等)、以及与该操作系统下的应用程序的交互统称为“与操作系统的交互”。

[0032] 此外,尽管本发明是以运行两个操作系统为例进行说明的,但是本发明也可用于运行两个以上的操作系统,即一个主机和多个客机系统。

[0033] 在本发明的一个有利的扩展方案中规定,所述选择步骤包括下列步骤:

[0034] ›如果将主机操作系统选择为前台操作系统,则客机操作系统作为后台操作系统,并且所述主机操作系统接收输入并产生输出;以及

[0035] ›如果将客机操作系统选择为前台操作系统,则主机操作系统作为后台操作系统,并且在主机操作系统接收到输入时执行下列步骤:

[0036] ›确定所述输入是否指示系统切换,如果是,则执行系统切换,否则根据所述输入生成针对客机操作系统的虚拟输入事件,并且将所述虚拟输入事件注入到客机操作系统中,客机操作系统处理所述虚拟输入事件并产生相应输出。

[0037] 也就是说,在本发明中,用户输入总是首先由主机系统来接收,然后由主机系统将除指示切换系统的用户输入以外的用户输入注入到作为前台系统的客机操作系统中以供客机操作系统进行处理,从而得到“前台系统具有全部输入和输出设备”这一用户体验。

[0038] 在根据本发明的一个优选的实施方式中规定:通过下列各项至少之一来执行系统切换:物理按键输入、触摸屏输入、手势输入、语音输入。

[0039] 在根据本发明的一个有利的扩展方案中规定:所述物理按键输入包括:

[0040] ›当用户按下音量+键时,将主机操作系统切换为前台操作系统,并且当用户按下音量-键时,将客机操作系统切换为前台操作系统;和/或

[0041] ›当用户按下音量-键时,将主机操作系统切换为前台操作系统,并且当用户按下音量+键时,将客机操作系统切换为前台操作系统;和/或

[0042] ›当客机操作系统为前台操作系统时,用户按下!1012键以将主机操作系统切换为前台操作系统。

[0043] 通过上述扩展方案,实现了多操作系统下简单、明晰的显示和输入出,同时实现多操作系统之间的简捷切换。

[0044] 在根据本发明的一个优选的实施方式中规定,第一操作系统为安卓(Android)操作系统,并且第二操作系统为Windows操作系统。第一和第二操作系统也可以是其它的操作系统,比如 Tizen、1S、Linux (如 ubuntu)等等。

[0045] 在根据本发明的一个有利的扩展方案中规定,当将外接显示器连接到运行该方法的设备时,本系统有双显示设备,在所述设备上显示主机操作系统,并且在所述外接显示器上显示客机操作系统,或者反之。由此,有效地实现了对两个操作系统的同时显示,而且用户通过上述简单的系统切换(如按下音量+、一键)即可将客机操作系统(如Windows)切换为前台系统(此种情况下,我们称其中一个操作系统为前台系统,它拥有全部的输入设备),并且借助于显示客机操作系统的显示器、利用运行该方法的设备作为输入设备来与前台操作系统进行交互。

[0046] 在根据本发明的一个有利的扩展方案中规定,通过扩展坞将外接显示器和外接输入设备连接到所述设备。通过使用扩展坞,可以在运行该方法的设备、比如移动设备本身不具有视频扩展接口的情况下,将该设备与外接显示器相连接,并且还将该设备与外接输入设备相连接。在该情况下,系统具有两套输入输出设备,因此没有前后台操作系统的概念,也就是说,在此,主机、客机操作系统均可以具有自己的显示设备和输入设备。主机操作系统可以利用设备本身的输入输出接口,而客机操作系统可以利用扩展坞上的外接输入输出设备如外接显示器和外接键盘,或者反之。

[0047] 在根据本发明的另一有利的扩展方案中规定,在运行该方法的设备进入锁屏状态以后,当用户试图解锁屏幕的时候(比如在Android下按下电源键),系统显示一个具有多个按钮的双系统解锁屏幕。用户划动所述设备的屏幕上的多个按钮之一来进入主机操作系统或客机操作系统的解锁屏幕。由此,可以方便用户解锁所期望的操作系统,也就是说,用户可以通过选择不同按钮来进入不同解锁屏幕以解锁不同系统。这提供了更便捷的系统切换方式。

[0048] 在根据本发明的又一有利的扩展方案中规定,所述按钮包括:横向按钮、纵向按钮、顺时针按钮、和/或逆时针按钮。其它的选择解锁屏幕的方式也是可以设想的,比如通过输入字母(例如操作系统首字母)、输入数字、输入指纹(例如不同手指的指纹对应不同操作系统)等等。

[0049] 在本发明的另一优选的实施方式中,通过选择不同按钮中的一个来直接解锁主机操作系统或客机操作系统之一、即将主机操作系统或客机操作系统之一选择为前台操作系统。

[0050] 此外,根据本发明,开头提到的任务还通过一种运行多操作系统的系统来解决,该系统包括:

[0051].用于作为主机操作系统运行第一操作系统的装置;

[0052].用于在主机操作系统上启动支持虚拟化的虚拟机监视程序VMM的装置;

[0053].用于在所述VMM上作为客机操作系统运行第二操作系统的装置;以及

[0054].用于选择第一操作系统和第二操作系统中的一个操作系统作为前台操作系统并且选择另一操作系统作为后台操作系统的装置,其中所提供的用户体验是,前台操作系统拥有全部的输入设备和输出设备。

[0055] 根据本发明,前述任务还通过一种移动设备来解决,该移动设备具有:

[0056].处理器,其被配置为执行可执行指令;

[0057] •输入设备,其被配置为接收用户输入;

[0058].输出设备,其被配置为显示输出;

[0059].存储器,其上存储有可执行指令,所述可执行指令在被所述处理器执行时致使所述处理器执行下列操作:

[0060] 作为主机操作系统运行第一操作系统;

[0061] 在主机操作系统上启动支持虚拟化的虚拟机监视程序VMM ;

[0062] 在所述VMM上作为客机操作系统运行第二操作系统;

[0063] 选择第一操作系统和第二操作系统中的一个操作系统作为前台操作系统而另一操作系统作为后台操作系统,使得所提供的用户体验是,前台操作系统拥有全部的输入设备和输出设备。

[0064] 在根据本发明的一个扩展方案中规定,所述操作还包括:

[0065] 从输入设备接收用户输入;

[0066] 确定所述用户输入是否为指示系统切换的用户输入,其中如果确定所述用户输入是指示系统切换的用户输入,则由主操作系统处理所述用户输入,否则由前台操作系统来处理所述用户输入并且生成相应输出以供所述输出设备进行输出。

[0067] 也就是说,根据本发明,所述用户体验是通过如下方式实现的:除了指示系统切换的用户输入以外的全部用户输入都由前台操作系统来处理并且生成相应输出,而指示系统切换的用户输入由主操作系统来处理。

附图说明

[0068] 下面参考附图根据多个实施例来进一步阐述本发明。附图:

[0069] 图1A和IB示出了使用根据本发明的方法的移动设备在不同前台系统下的示意图;

[0070] 图2示出了根据本发明的方法的流程图;

[0071] 图3示出了根据本发明的系统架构;

[0072] 图4示出了运行根据本发明的方法的移动设备在使用外接显示器时的示意图;

[0073] 图5A至5C示出了运行根据本发明的方法的移动设备的不同解锁方式。

具体实施方式

[0074] 尽管在下面参考附图对本发明的实施例的描述中,以运行安卓和Windows操作系统的平板计算机或智能手机为例阐述了本发明的原理,但是应当理解,本发明并不限于此,而是本发明还可以应用于诸如个人数字助理(PDA)、上网本之类的其它移动设备、以及诸如Tizen、Linux之类的其它操作系统。

[0075] 图1A和IB示出了使用根据本发明的方法的平板计算机100在不同前台系统下的示意图。图1A示出了平板计算机100在以安卓操作系统为前台系统时的快照,图1B示出了该平板计算机100在以Windows操作系统为前台系统的快照。

[0076] 从图1八中可以看出,平板计算机100具有典型的安卓用户界面104,而在图18的图示中具有拥有.廿0窗格106的界面105。

[0077] 用户可以通过各种用户输入方式来将前台操作系统从安卓系统切换为1111(10界8操作系统。优选地使用平板计算机100的物理按键来执行系统切换,因为物理按键具有响应时间短、操作灵敏和直截了当等优点。例如,用户可以通过按下平板计算机100的音量+键101来将安卓操作系统切换为前台操作系统,并且通过按下音量-键102来将1111(10旧操作系统切换为前台操作系统;当操作系统为前台操作系统时,用户可以按下键103以将安卓操作系统切换为前台操作系统。通过简单的按键切换,前台操作系统在几毫秒内就从安卓系统切换为1111(10…系统。通过简单、快速的系统切换,提升了设备的双操作系统用户体验。

[0078] 而且,从图1中可以看出,前台操作系统如同独占操作系统那样具有几乎全部的输入,因此,用户所切换到的安卓和1111(10旧系统都能给用户带来独占系统的用户体验。

[0079] 同时,由于后台操作系统在处于后台期间仍然是活动的,因此可以进行某些操作。例如,当用户切换到1111(10旧系统以后,作为后台系统的安卓系统仍然可以接收微信消息,并通过适当方式(例如微信的状态条提醒消息或提醒音频)提醒用户。后台系统可以进行哪些操作可以由用户自定义,或者可以由厂家预设。

[0080] 图2示出了根据本发明的方法200的流程图。在步骤202,作为主机操作系统运行第一操作系统。例如,在用户启动平板计算机100以后,在该平板计算机100上作为前台系统运行安卓系统。

[0081] 在步骤204,在主机操作系统上启动支持虚拟化的虚拟机监视程序~1代113118(^1116 101111:010711。例如,在安卓系统上启动支持虚拟化的虚拟机监视程序VII。由于虚拟机技术是现有技术中充分公知的,因此在此为了不模糊本发明,不对该技术进行详细展开。关于虚拟机技术,例如可以参阅乂的虚拟机架构。

[0082] 在步骤206,在所述VII上作为客机操作系统运行第二操作系统。例如,在进入主机系统以后,在由用户发起或者系统自动运行的情况下,在VII上作为客机操作系统运行1111(10^8 系统。

[0083] 应当注意,尽管在此是以安卓系统作为主机系统的场景来进行说明的,但是应当理解,这仅仅是示例性的,并且本发明同样适用于以1111(10旧系统或其它系统作为主机操作系统并以安卓系统或其它系统作为客机系统的场景。

[0084] 在步骤208,选择第一操作系统和第二操作系统中的一个操作系统作为前台操作系统而另一操作系统作为后台操作系统,使得所提供的用户体验是,前台操作系统拥有全部的输入设备和输出设备。例如,如上面所述那样,用户通过按下首量一键102将11=(10界8系统设置为前台系统,并且此时,设备所提供的用户体验是,作为前台系统的11^(10…系统具有全部的输入设备的用户体验。于是,用户可以直接滑动1111(10旧界面105中的各个161:1-0窗格106,就像操作1111(10界8设备(例如1111(10界8 9110116)那样,而几乎感觉不到安卓系统的存在(除了安卓系统的某些操作、例如微信消息提醒以外)。

[0085] 图3示出了根据本发明的系统架构300。平板计算机100的触摸屏上的用户点击、手势等输入事件307首先由主机操作系统接收和处理。当客机操作系统是前台操作系统的时候,该事件由主机操作系统发送到设备模型((16^1(36 1110(161简称01) 301以便进一步处理。设备模型301例如可以被实现为客机操作系统304在主机操作系统305上的宿主程序

(1)1^06 1101(161-)或占位程序。主机操作系统305和/或设备模型301首先会检查该输入事件307是否是表示切换操作系统的输入事件(例如用户按下系统预定义键、如键、音量+/ —键等等)。如果是表示切换操作系统的输入事件,则主机操作系统305和/或设备模型301可以执行相应的系统切换。如果不是,则设备模型301可以为客机操作系统304产生模拟该输入事件307的虚拟输入事件308,并可能产生相应的虚拟输入中断以便通知客机操作系统304处理这个虚拟输入事件308。客机操作系统304收到这个虚拟输入事件308后,对该事件308进行处理,例如由客机操作系统的内建输入事件处理模块处理这个事件,这就像在原生单机系统里面一样。在处理完成以后,客机操作系统304可能将相应输出309发送给客机虚拟显示设备,进而由设备模型301将相应输出在显示设备306上进行显0

[0086] 在双操作系统情形下,客户机操作系统呈现为主机操作系统的一个应用程序(八??),当用户点击该八??时,主机操作系统会给该全屏状态的八??分配显示缓冲区,该八??显示缓冲区将通过01以及硬件虚拟化技术如?叫6 1^16 (^?!/^?!)内存映射技术,映射为客户机操作系统的显示缓冲区,因而客户机操作系统在进行屏幕渲染时,实际是渲染到了主机为该仙?分配的显示缓冲区中,实现了显示缓冲区的0拷贝机制。该方法可以大幅提高了客户机操作系统在设备显示屏上的显示性能。或者01直接将客机系统的巾贞缓冲区(^以邮1311打61)合成在主机系统的显示的巾贞缓冲区(^以邮1311打61)中,并通过硬件或者主机系统本身将这个帧缓冲区中的内容显示在显示屏上。

[0087] 图4示出了运行根据本发明的方法的移动设备在使用外接显示器时的场景。如图4中所示,当将外接显示器、即图4中的台式机的显示器402连接到运行该方法的设备、即图4中的智能手机401时,在所述智能手机401上显示主机操作系统、例如在图4中为安卓系统,而在显示器402上显示客机操作系统、例如图4中为系统。

[0088] 下面阐述根据本发明的实现上述场景的原理。

[0089] 客机操作系统运行显卡的设备驱动程序(0¾)。在单机操作系统中,客机操作系统的显示会直接通过该0¾输出。而在双操作系统中,客机操作系统的0¾驱动对虚拟硬件的10操作会被设备模型01捕捉并模拟(廿叩-2111(1 -6皿1131:6)。这个捕捉并模拟过程可以通过虚拟机退出〈VI 6X1^来实现,或者半虚拟化驱动使用的前台/后台驱动程序交互接

0 来进4于(参考 XVI 11=1^ - 。

[0090] 在服务器虚拟化中,01对客户机输出的模拟会使用一个内存缓冲区0x1打虹)来模拟客机系统的显示屏输出、即所谓的帧缓冲区^打虹)。而为了在双操作系统中实现外接显示器显示客机系统这一场景,01直接将客机系统的帧缓冲区^打虹)合成在主机系统的显示的帧缓冲区(色^腕^打虹)中,并通过硬件或者主机系统本身将这个帧缓冲区中的内容显示在显示屏上、即外接显示器上,或者直接将主机外接显示器帧缓冲区映射为客户机操作系统的帧缓冲区。

[0091] 因此,当双系统设备通过扩展显示接口(如等)连接有外接显示器时,01通过安卓系统编程方法,获取主机系统的扩展显示接口的操作句柄,通过主机操作系统提供的显示投影仙I直接将客机系统的帧缓冲区合成在主机系统的扩展显示接口帧缓冲区上。如此一来,显示接口(即双系统设备的显示屏)可以仍然显示主机系统、例如安卓操作系统,而外接显示器则显示客机系统、例如Windows操作系统。,或者直接将主机外接显示器帧缓冲区映射为客户机操作系统的帧缓冲区。

[0092] 此外,双系统设备可以插入手机/平板电脑的扩展坞(dock),其中扩展坞可以连接显示器、鼠标、键盘、以及音频设备等等。通过使用扩展坞,可以在运行该方法的设备、比如平板计算机或智能手机设备本身不具有视频扩展接口的情况下,将该设备与外接显示器以及输入设备相连接。

[0093] 当外接显示器显示客机系统时,用户可以将客机系统、如Windows系统切换为前台系统,并利用智能手机401作为输入设备来与外接显示器上显示的客机系统、如Windows系统的用户界面交互。

[0094] 图5A至5C示出了运行根据本发明的方法的移动设备500进入不同解锁屏幕的方式。如图5A所示,移动设备500当前处于锁屏状态,并且在屏幕上显示水平滑动键501和垂直滑动键502。当用户滑动水平滑动键501时,移动设备进入主机操作系统、例如安卓系统的解锁屏幕(图5B),此时,用户可通过安卓系统的相应解锁方式进行解锁。当用户滑动垂直滑动键502时,移动设备进入客机操作系统、例如Windows系统的解锁屏幕(图5C),此时,用户可通过Windows系统的相应解锁方式进行解锁。

[0095] 下面阐述根据本发明的实现不同解锁方式的原理。

[0096] 当用户滑动进入主机操作系统的解锁屏幕的按钮(例如横向键501)时,进入主机操作系统的解锁屏幕。当用户滑动进入客机操作系统的解锁屏幕的按钮(例如垂直键502)时,首先解锁主机系统,但是此时并不显示主机系统的解锁屏幕,而是将DM设置为当前应用程序,并通知DM(比如向DM发送一个特殊事件)由DM合成进入客机解锁屏幕的虚拟输入事件,此时用户将看到客机系统的解锁屏幕。或者通知某一个在客机系统中的服务程序,由该程序请求客机系统进入解锁屏幕。

[0097] 当然还可以构思顺时针按钮和逆时针按钮来实现上述选择解锁屏幕的功能。其它的选择解锁屏幕的方式也是可以设想的,比如通过输入字母(例如操作系统首字母)、输入数字、输入指纹(例如不同手指的指纹对应不同操作系统)等等。

[0098] 此外,也可以规定使用所述水平滑动键501和垂直滑动键502直接解锁进入相应的系统而不是进入相应的解锁屏幕。例如,当用户滑动水平滑动键501时,解锁安卓系统,而当用户滑动垂直滑动键502时,解锁Windows系统。

[0099] 虽然本发明的一些实施方式已经在本申请文件中予以了描述,但是对本领域技术人员显而易见的是,这些实施方式仅仅是作为示例示出的。本领域技术人员可以想到众多的变型方案、替代方案和改进方案而不超出本发明的范围。所附权利要求书旨在限定本发明的范围,并藉此涵盖这些权利要求本身及其等同变换的范围内的方法和结构。

Claims (13)

1.一种在移动设备上运行多操作系统的方法,包括下列步骤: 作为主机操作系统运行第一操作系统; 在主机操作系统上启动支持虚拟化的虚拟机监视程序VMM ; 在所述VMM上作为客机操作系统运行第二操作系统; 选择第一操作系统和第二操作系统中的一个操作系统作为前台操作系统而另一操作系统作为后台操作系统,使得所提供的用户体验是,前台操作系统拥有全部的输入设备和输出设备。
2.如权利要求1所述的方法,所述选择步骤包括下列步骤: 如果将主机操作系统选择为前台操作系统,则客机操作系统作为后台操作系统,并且所述主机操作系统接收输入并产生输出;以及 如果将客机操作系统选择为前台操作系统,则主机操作系统作为后台操作系统,并且在主机操作系统接收到输入时执行下列步骤: 确定所述输入是否指示系统切换,如果是,则执行系统切换,否则根据所述输入生成针对客机操作系统的虚拟输入事件,并且将所述虚拟输入事件注入到客机操作系统中,客机操作系统处理所述虚拟输入事件并产生相应输出。
3.如权利要求1所述的方法,其中后台操作系统具有一定的输出。
4.如权利要求2所述的方法,其中通过下列各项至少之一来执行系统切换:物理按键输入、触摸屏输入、手势输入、语音输入。
5.如权利要求1所述的方法,其中第一操作系统为安卓操作系统,并且第二操作系统为Windows操作系统。
6.如权利要求4所述的方法,其中所述物理按键输入包括: 当用户按下音量+键时,将主机操作系统切换为前台操作系统,并且当用户按下音量-键时,将客机操作系统切换为前台操作系统;和/或 当用户按下音量-键时,将主机操作系统切换为前台操作系统,并且当用户按下音量+键时,将客机操作系统切换为前台操作系统;和/或 当客机操作系统为前台操作系统时,用户按下HOME键以将主机操作系统切换为前台操作系统。
7.如权利要求1所述的方法,其中当将外接显示器连接到所述移动设备时,在所述移动设备上显示主机操作系统,而在所述外接显示器上显示客机操作系统。
8.如权利要求7所述的方法,其中通过扩展坞将外接显示器和外接输入设备连接到所述移动设备,其中主机操作系统拥有所述移动设备的显示和输入设备,而客机操作系统拥有扩展坞上的外接显示器和外接输入设备。
9.根据权利要求1所述的方法,其中在所述移动设备进入锁屏状态以后,用户划动所述移动设备的屏幕上的多个按钮之一来进入主机操作系统或客机操作系统的解锁屏幕。
10.根据权利要求9所述的方法,其中所述按钮包括:横向按钮、纵向按钮、顺时针按钮、和/或逆时针按钮。
11.一种在移动设备上运行多操作系统的系统,包括: 用于作为主机操作系统运行第一操作系统的装置; 用于在主机操作系统上启动支持虚拟化的虚拟机监视程序VMM的装置; 用于在所述VMM上作为客机操作系统运行第二操作系统的装置;以及用于选择第一操作系统和第二操作系统中的一个操作系统作为前台操作系统而另一操作系统作为后台操作系统的装置,其中所产生的用户体验是,前台操作系统拥有全部的输入设备和输出设备。
12.—种移动设备,该移动设备具有: 处理器,其被配置为执行可执行指令; 输入设备,其被配置为接收用户输入; 输出设备,其被配置为显示输出; 存储器,其上存储有可执行指令,所述可执行指令在被所述处理器执行时致使所述处理器执行下列操作: 作为主机操作系统运行第一操作系统; 在主机操作系统上启动支持虚拟化的虚拟机监视程序VMM ; 在所述VMM上作为客机操作系统运行第二操作系统; 选择第一操作系统和第二操作系统中的一个操作系统作为前台操作系统而另一操作系统作为后台操作系统,使得所提供的用户体验是,前台操作系统拥有全部的输入设备和输出设备。
13.根据权利要求12所述的移动设备,其中所述操作还包括: 从输入设备接收用户输入; 确定所述用户输入是否为指示系统切换的用户输入,其中如果确定所述用户输入是指示系统切换的用户输入,则由主操作系统处理所述用户输入,否则由前台操作系统来处理所述用户输入并且生成相应输出以供所述输出设备进行输出。
CN201410612578.2A 2014-11-03 2014-11-03 用于运行多操作系统的方法以及相应的系统和移动设备 CN104360900B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410612578.2A CN104360900B (zh) 2014-11-03 2014-11-03 用于运行多操作系统的方法以及相应的系统和移动设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410612578.2A CN104360900B (zh) 2014-11-03 2014-11-03 用于运行多操作系统的方法以及相应的系统和移动设备

Publications (2)

Publication Number Publication Date
CN104360900A true CN104360900A (zh) 2015-02-18
CN104360900B CN104360900B (zh) 2020-05-12

Family

ID=52528164

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410612578.2A CN104360900B (zh) 2014-11-03 2014-11-03 用于运行多操作系统的方法以及相应的系统和移动设备

Country Status (1)

Country Link
CN (1) CN104360900B (zh)

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104516782A (zh) * 2014-12-26 2015-04-15 上海迈微软件科技有限公司 用于进行智能系统运行环境切换的方法及其设备
CN104780430A (zh) * 2015-03-19 2015-07-15 四川长虹电器股份有限公司 多系统电视设备中整机系统与扩展系统之间的交互方法
CN104796529A (zh) * 2015-03-05 2015-07-22 宇龙计算机通信科技(深圳)有限公司 基于双系统的未处理事件的提醒方法及系统
CN105204925A (zh) * 2015-08-26 2015-12-30 北京元心科技有限公司 在多操作系统中管理音视频设备的方法及装置
CN105204816A (zh) * 2015-09-29 2015-12-30 北京元心科技有限公司 在多系统中对音频进行控制的方法及装置
CN105404558A (zh) * 2015-12-11 2016-03-16 北京元心科技有限公司 多系统中事件处理的方法及装置
CN105608347A (zh) * 2015-07-29 2016-05-25 宇龙计算机通信科技(深圳)有限公司 操作系统切换方法、操作系统切换装置和终端
WO2016134601A1 (en) * 2015-02-24 2016-09-01 Huawei Technologies Co., Ltd. Multi-operating system device, notification device and methods thereof
CN105955693A (zh) * 2016-04-21 2016-09-21 北京元心科技有限公司 多系统中分配音频资源的方法及装置
WO2016165166A1 (zh) * 2015-04-15 2016-10-20 宇龙计算机通信科技(深圳)有限公司 多系统的系统切换的方法及其装置
CN106326044A (zh) * 2015-06-30 2017-01-11 华为技术有限公司 一种网卡故障注入方法及装置
CN106792012A (zh) * 2016-11-17 2017-05-31 广州视源电子科技股份有限公司 智能交互平板内通道切换方法及装置
CN107291561A (zh) * 2016-03-31 2017-10-24 阿里巴巴集团控股有限公司 一种图形合成方法、信息交互方法及系统
CN107291319A (zh) * 2016-03-31 2017-10-24 阿里巴巴集团控股有限公司 一种窗口显示方法、信息交互方法及系统
CN107577386A (zh) * 2017-07-27 2018-01-12 北京珠穆朗玛移动通信有限公司 应用显示方法、移动终端及具有存储功能的装置
CN109710417A (zh) * 2018-12-29 2019-05-03 苏州思必驰信息科技有限公司 智能音箱系统及其实现方法
CN109918981A (zh) * 2018-09-18 2019-06-21 永康市巴九灵科技有限公司 Ios终端健壮维护系统
CN110362983A (zh) * 2019-05-31 2019-10-22 北京中电飞华通信股份有限公司 一种保证双域系统一致性的方法、装置及电子设备
CN111195919A (zh) * 2019-12-13 2020-05-26 实时侠智能控制技术有限公司 一种机器人示教平台及其架构方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102111482A (zh) * 2009-12-25 2011-06-29 深圳市银星数码有限公司 一种多系统多模智能移动终端及控制方法
CN102238265A (zh) * 2010-04-22 2011-11-09 康佳集团股份有限公司 一种手机及实现双系统手机的方法
CN102420911A (zh) * 2011-12-31 2012-04-18 深圳市金立通信设备有限公司 智能手机双系统切换装置及切换方法
CN102469207A (zh) * 2010-11-19 2012-05-23 希姆通信息技术(上海)有限公司 多操作系统手机及其实现方法
CN102981894A (zh) * 2011-09-05 2013-03-20 联想(北京)有限公司 显示方法和电子设备
CN103049289A (zh) * 2012-12-10 2013-04-17 广东欧珀移动通信有限公司 基于Android系统实现虚拟多系统的方法及装置
CN103391374A (zh) * 2013-08-08 2013-11-13 北京邮电大学 一种支持无缝切换的双系统终端

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102111482A (zh) * 2009-12-25 2011-06-29 深圳市银星数码有限公司 一种多系统多模智能移动终端及控制方法
CN102238265A (zh) * 2010-04-22 2011-11-09 康佳集团股份有限公司 一种手机及实现双系统手机的方法
CN102469207A (zh) * 2010-11-19 2012-05-23 希姆通信息技术(上海)有限公司 多操作系统手机及其实现方法
CN102981894A (zh) * 2011-09-05 2013-03-20 联想(北京)有限公司 显示方法和电子设备
CN102420911A (zh) * 2011-12-31 2012-04-18 深圳市金立通信设备有限公司 智能手机双系统切换装置及切换方法
CN103049289A (zh) * 2012-12-10 2013-04-17 广东欧珀移动通信有限公司 基于Android系统实现虚拟多系统的方法及装置
CN103391374A (zh) * 2013-08-08 2013-11-13 北京邮电大学 一种支持无缝切换的双系统终端

Cited By (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104516782B (zh) * 2014-12-26 2020-05-12 上海迈微软件科技有限公司 用于进行智能系统运行环境切换的方法及其设备
CN104516782A (zh) * 2014-12-26 2015-04-15 上海迈微软件科技有限公司 用于进行智能系统运行环境切换的方法及其设备
US10628171B2 (en) 2015-02-24 2020-04-21 Huawei Technologies Co., Ltd. Multi-operating system device, notification device and methods thereof
TWI596545B (zh) * 2015-02-24 2017-08-21 Huawei Tech Co Ltd Multiple operating system equipment and notification devices, methods, computer program products
CN106462448B (zh) * 2015-02-24 2020-09-08 华为技术有限公司 多操作系统设备、通知设备及其方法
WO2016134601A1 (en) * 2015-02-24 2016-09-01 Huawei Technologies Co., Ltd. Multi-operating system device, notification device and methods thereof
CN106462448A (zh) * 2015-02-24 2017-02-22 华为技术有限公司 多操作系统设备、通知设备及其方法
WO2016138684A1 (zh) * 2015-03-05 2016-09-09 宇龙计算机通信科技(深圳)有限公司 基于双系统的未处理事件的提醒方法、装置及系统
CN104796529A (zh) * 2015-03-05 2015-07-22 宇龙计算机通信科技(深圳)有限公司 基于双系统的未处理事件的提醒方法及系统
CN104796529B (zh) * 2015-03-05 2018-05-15 宇龙计算机通信科技(深圳)有限公司 基于双系统的未处理事件的提醒方法及系统
CN104780430B (zh) * 2015-03-19 2018-02-23 四川长虹电器股份有限公司 多系统电视设备中整机系统与扩展系统之间的交互方法
CN104780430A (zh) * 2015-03-19 2015-07-15 四川长虹电器股份有限公司 多系统电视设备中整机系统与扩展系统之间的交互方法
WO2016165166A1 (zh) * 2015-04-15 2016-10-20 宇龙计算机通信科技(深圳)有限公司 多系统的系统切换的方法及其装置
CN106326044A (zh) * 2015-06-30 2017-01-11 华为技术有限公司 一种网卡故障注入方法及装置
CN106326044B (zh) * 2015-06-30 2019-09-03 华为技术有限公司 一种网卡故障注入方法及装置
WO2017016064A1 (zh) * 2015-07-29 2017-02-02 宇龙计算机通信科技(深圳)有限公司 操作系统切换方法、操作系统切换装置和终端
CN105608347A (zh) * 2015-07-29 2016-05-25 宇龙计算机通信科技(深圳)有限公司 操作系统切换方法、操作系统切换装置和终端
CN105204925A (zh) * 2015-08-26 2015-12-30 北京元心科技有限公司 在多操作系统中管理音视频设备的方法及装置
CN105204816A (zh) * 2015-09-29 2015-12-30 北京元心科技有限公司 在多系统中对音频进行控制的方法及装置
CN105404558A (zh) * 2015-12-11 2016-03-16 北京元心科技有限公司 多系统中事件处理的方法及装置
CN105404558B (zh) * 2015-12-11 2019-07-09 北京元心科技有限公司 多系统中事件处理的方法及装置
CN107291561A (zh) * 2016-03-31 2017-10-24 阿里巴巴集团控股有限公司 一种图形合成方法、信息交互方法及系统
CN107291319A (zh) * 2016-03-31 2017-10-24 阿里巴巴集团控股有限公司 一种窗口显示方法、信息交互方法及系统
CN107291561B (zh) * 2016-03-31 2020-11-24 阿里巴巴集团控股有限公司 一种图形合成方法、信息交互方法及系统
CN105955693A (zh) * 2016-04-21 2016-09-21 北京元心科技有限公司 多系统中分配音频资源的方法及装置
CN105955693B (zh) * 2016-04-21 2019-12-27 北京元心科技有限公司 多系统中分配音频资源的方法及装置
CN106792012A (zh) * 2016-11-17 2017-05-31 广州视源电子科技股份有限公司 智能交互平板内通道切换方法及装置
WO2018090735A1 (zh) * 2016-11-17 2018-05-24 广州视源电子科技股份有限公司 智能交互平板内通道切换方法及装置
CN107577386A (zh) * 2017-07-27 2018-01-12 北京珠穆朗玛移动通信有限公司 应用显示方法、移动终端及具有存储功能的装置
CN109918981B (zh) * 2018-09-18 2020-11-10 徐州轩科农业机械有限公司 Ios终端健壮维护系统
CN109918981A (zh) * 2018-09-18 2019-06-21 永康市巴九灵科技有限公司 Ios终端健壮维护系统
CN109710417A (zh) * 2018-12-29 2019-05-03 苏州思必驰信息科技有限公司 智能音箱系统及其实现方法
CN110362983A (zh) * 2019-05-31 2019-10-22 北京中电飞华通信股份有限公司 一种保证双域系统一致性的方法、装置及电子设备
CN111195919A (zh) * 2019-12-13 2020-05-26 实时侠智能控制技术有限公司 一种机器人示教平台及其架构方法

Also Published As

Publication number Publication date
CN104360900B (zh) 2020-05-12

Similar Documents

Publication Publication Date Title
US10871980B2 (en) Execution of a script based on properties of a virtual device associated with a virtual machine
CN105589336B (zh) 多处理器设备
US9317457B2 (en) Auto-waking of a suspended OS in a dockable system
US10359809B2 (en) Electronic device
US20180113512A1 (en) Feedback providing method and electronic device for supporting the same
CN106445576B (zh) 主机板及其计算机实现方法及非暂态计算机可读储存装置
US9684428B2 (en) Method of starting applications installed on a mobile operating system in a multi-window mode and device using the same
US10552263B2 (en) System running method and intelligent terminal
CN102473102B (zh) 用于发起多环境操作系统的系统和方法
US20140289669A1 (en) User Interface Icon Management Method and Touch Device
KR102139526B1 (ko) 전자 장치의 화면상에 표시되는 복수의 객체들을 실행하는 장치, 방법 및 컴퓨터 판독 가능한 기록 매체
US10395089B2 (en) Application and picture display verification methods, apparatuses, and electronic device
DE102014118223A1 (de) Multitouch-Authentifizierung durch lokales Gerät
EP2990930A1 (en) Scrapped information providing method and apparatus
TW201508492A (zh) 跨設備的任務持續
US9164790B2 (en) Live virtual machine template creation
US20150324216A1 (en) Self-repairing configuration service for virtual machine migration
US20110310118A1 (en) Ink Lag Compensation Techniques
CN100359460C (zh) 一种多显示屏并行显示的终端设备与实现方法
US9292108B2 (en) Systems and methods for remote mouse pointer management
US20120084793A1 (en) Cross-environment event notification
US20140189825A1 (en) Multi Mode Operation Using User Interface Lock
US20160364888A1 (en) Image data processing method and electronic device supporting the same
US9015705B2 (en) Computing device having a migrated virtual machine accessing physical storage space on another computing device
EP3142304B1 (en) Synchronization method for notification message of electronic device, server and electronic device

Legal Events

Date Code Title Description
PB01 Publication
C06 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