CN103533158B - 移动平台虚拟化系统和方法 - Google Patents
移动平台虚拟化系统和方法 Download PDFInfo
- Publication number
- CN103533158B CN103533158B CN201310390831.XA CN201310390831A CN103533158B CN 103533158 B CN103533158 B CN 103533158B CN 201310390831 A CN201310390831 A CN 201310390831A CN 103533158 B CN103533158 B CN 103533158B
- Authority
- CN
- China
- Prior art keywords
- mobile terminal
- user environment
- user
- environment
- predetermined condition
- 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.)
- Expired - Fee Related
Links
Classifications
-
- 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
-
- 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/45562—Creating, deleting, cloning virtual machine instances
Abstract
本发明提供一种移动平台虚拟化系统和方法,移动平台含有一个移动终端,移动终端具有一个操作系统,所述方法包括在所述操作系统中初始化移动终端上的数个用户环境,包括初始化移动终端上运行的当前用户环境。数个用户环境能够在不改变操作系统的情况下基于预定条件中的一个或多个预定条件而彼此切换。所述方法也包括收集与移动终端操作相关联的一个或多个参数的传感数据,以及处理传感数据,指示至少一个预定条件。进一步地,所述方法包括判断当前用户环境是否适合至少一个预定条件,至少一个预定条件是通过处理传感数据加以指示的,并且,如果当前用户环境不适合预定条件,那么便将当前用户环境从数个用户环境切换到期望的用户环境。
Description
技术领域
本发明涉及用户界面技术领域,尤其涉及移动平台虚拟化技术。
背景技术
现有的智能手机建立在各种移动操作系统上(Android、iOS、WindowsMobile等),具有多项功能,例如,媒体播放器、数码相机/摄像机、触屏、网络浏览器、GPS导航,以及Wi-Fi和无线网络所提供的高速数据接入。智能手机上的移动操作系统有完善的应用程序界面,成千上万的第三方应用程序可以在智能手机上运行,从而改善人们的日常生活。
就处理速度和计算能力而言,智能手机也正在变得更加强大,因而能够进行高级移动处理。然而,如何将高级移动处理集成到其他技术中,诸如传感技术和网络技术,此课题仍在发展之中。
高级移动处理也能够将虚拟化技术调适到移动空间中。然而,现有的解决方案聚焦于获得不同或相同操作系统图像的多个实例,这些图像经过预先配置,可以在同一个移动装置上运行。操作系统图像实例之间的切换由用户进行控制,通常是手动过程,而同时移动传感技术的发展已经处于应用层面,目标指向同一环境下的特定应用程序。
本发明所披露的方法和系统,目的在于解决上述一个或多个问题以及其他问题。
发明内容
本公开的一个方面包括一种用于移动平台的方法,所述移动平台含有一个移动终端,所述移动终端具有一个操作系统。所述方法包括在所述操作系统中初始化所述移动终端上的数个用户环境(UserEnvironments),包括初始化所述移动终端上运行的当前用户环境。所述数个用户环境能够在不改变所述操作系统的情况下基于一个或多个预定条件而彼此切换。所述方法也包括收集与所述移动终端操作相关联的一个或多个参数的传感数据,以及处理所述传感数据,从而指示所述移动终端的所述预定条件中的至少一个预定条件。进一步地,所述方法包括判断所述当前用户环境是否适合所述移动终端的所述预定条件中的至少一个预定条件,所述至少一个预定条件是通过处理所述传感数据加以指示的,并且,如果所述当前用户环境不适合所述移动终端的所述预定条件,那么将所述当前用户环境从所述数个用户环境切换到期望的用户环境。
本公开的另一个方面包括一种移动平台。所述移动平台包括一个移动终端,所述移动终端具有处理器以及在所述处理器上运行的操作系统。所述处理器配置为在操作系统中初始化移动终端上的数个用户环境,包括所述移动终端上运行的当前用户环境。所述数个用户环境能够在不改变所述操作系统的情况下基于一个或多个预定条件而彼此切换。所述处理器也配置为收集与移动终端操作相关联的一个或多个参数的传感数据,并且处理所述传感数据,从而指示所述移动终端的所述预定条件中的至少一个预定条件。进一步地,所述处理器配置为判断所述当前用户环境是否适合所述移动终端的所述预定条件中的至少一个预定条件,所述至少一个预定条件是通过处理所述传感数据加以指示的,并且,如果所述当前用户环境不适合所述移动终端的所述预定条件,那么将所述当前用户环境从所述数个用户环境切换到期望的用户环境。
根据本公开的详细说明部分、权利要求书和附图,本领域技术人员可以理解本公开的其他方面。
附图说明
图1说明了一个与所披露实施方案相符合的典型的移动虚拟化系统。
图2说明了一个与所披露实施方案相符合的典型的计算系统。
图3说明了一个与所披露实施方案相符合的典型的移动平台。
图4说明了一个与所披露实施方案相符合的、位于移动终端上的典型的用户环境虚拟化结构。
图5说明了一个与所披露实施方案相符合的用户环境虚拟化结构的初始化过程。
图6说明了一个与所披露实施方案相符合的典型的虚拟化移动平台操作过程。
图7说明了一个与所披露实施方案相符合的典型的用户环境更新过程。
具体实施方式
引用附图中所说明的典型的实施例作为具体的参考。尽可能地,使用相同的编号来表示附图中相同或相似的部分。
图1说明了一个结合本发明某些实施方案的典型的移动虚拟化系统100。如图1所示,所述移动虚拟化系统100包括移动终端102、服务器104、云110、服务器106和用户108。可以省略某些装置,也可以增加其他装置。
所述移动终端102可包括任何合适类型的移动装置,诸如一个或多个智能手机、平板电脑、笔记本电脑、个人电脑、个人数字助理(PDA)、移动电话或其他移动装置。所述移动终端102也可包括各种传感器,用来收集移动终端、移动终端环境和/或移动终端用户108等方面的数据。举例而言,所述移动终端102可包括位置传感器(GPS)、运动传感器(加速计)、温度传感器、气压传感器等。
另外,所述移动终端102也可以从所述移动终端102内的其他装置获取传感信息,诸如来自照相机的图像、来自周围环境的声音、网络信息、手机是否插入电源、应用程序使用样式等。来自传感器的传感数据以及所获取的传感数据,可以用来发现有关于所述用户108/移动终端102的环境信息和其他有用信息。尤其是,传感数据可以指示所述移动终端102或所述用户108的某些条件,从而使得所述移动终端102的配置可以基于某个条件来调整。
所述服务器104和所述服务器106可包括任何合适类型的计算机系统,所述计算机系统配置为提供服务器功能。尽管所述服务器104或所述服务器106是展示在单个计算机配置中,但是所述服务器104或所述服务器106也可以包括更多的计算机或服务器群。进一步地,所述服务器104可以处于非云配置中,而所述服务器106可以处于云配置中。所述服务器104和所述服务器106可以具有类似功能,可以同时存在,或者也可以单独存在。
所述云110可以指代云计算环境,也就是,计算资源(硬件和软件)的使用,所述计算资源作为服务在网络基础设施(例如,互联网)上传递。所述云110可以包括私有云配置和/或公共云配置。所述云110可以包括各种服务器(也就是,服务器服务),诸如所述服务器106,所述服务器106配置为提供移动平台虚拟化功能。任何合适类型的服务器都可以包括在内。
所述云110中的云基服务可以通过高速数据连接(诸如3G、4G-LTE和WiFi网络)而传递给所述移动终端102。在所述移动终端102上收集的数据可以转发给所述云110(例如,所述云110中的所述服务器106),作为所述服务器106所提供的各种服务的输入数据。举例而言,所述移动终端102上收集的数据可以包括移动传感数据,所述传感数据可以作为输入数据转发给所述服务器106。
所述移动终端102、所述服务器104和/或所述服务器106可以在任何合适的计算平台上加以实施。图2展示了一个典型的计算系统200的框图,所述计算系统200能够实施所述移动终端102、所述服务器104和/或所述服务器106。
如图2所示,计算系统200可包括处理器202、存储介质204、显示器206、通信模块208、数据库210和多个外围设备212。可以省略某些装置,也可以增加其他装置。
所述处理器202可包括任何合适的一个或多个处理器。进一步地,所述处理器202可以包括多核,用于多线程或并行处理。所述存储介质204可包括内存模块和大容量存储器。所述内存模块,包括只读存储器ROM,随机存取存储器RAM、闪存模块。所述大容量存储器,包括CD-ROM、硬盘等。所述存储介质204可在所述处理器202运行计算机程序的时候,储存用来实现各种进程的计算机程序。
进一步地,所述外围设备212可包括各种传感器和/或输入/输出I/O装置,诸如小键盘、键盘和鼠标等。所述各种传感器可包括温度传感器、位置传感器(例如,GPS)、运动传感器(加速计)、气压或压力传感器、声音传感器等。所述通信模块208可包括某些网络接口装置,用于借助通讯网络(诸如有线或无线网络)来建立连接。所述数据库210可包括一个或多个数据库,用来存储某些数据,并对所存储的数据执行某些操作,诸如数据库搜索。
返回到图1,在操作中,所述用户108可使用所述移动终端102来与大量装置和服务器进行交互,从而获取信息、进行业务交易、执行搜索,或者进行其他在线或离线活动。为了提供期望的用户体验,所述移动虚拟化系统100提供了一个计算结构,所述计算结构将移动传感、端点操作系统(OS)虚拟化、用户行为分析、移动管理和推荐无缝地结合到一个大体框架中,也就是所谓的云基移动平台。使用此框架的移动平台,所述移动终端的前端传感能力和服务器的后端计算能力,可以通过操作系统(OS)和用户环境虚拟化耦合到一起。图3说明了一个与所披露实施方案相符合的典型的移动平台300。
如图3所示,所述移动终端102和所述服务器106通过所述云110而耦合(也就是说,所述服务器106由所述云110提供)。某些模块或组件被设置在所述移动终端102和所述服务器106中,以提供各种功能来支持所述移动平台300。尽管出于说明目的而只使用单个移动终端和单个服务器,但是也可以包括任何数量的移动终端和服务器。
所述移动终端102可包括传感数据收集和处理模块314、用户环境配置和触发模块/数据库316、用户环境管理器312以及用户环境收集模块/数据库318。所述服务器106可包括个人移动管理器302、用户行为模块/数据库306、数据分析单元304以及用户环境模块/数据库308。可以省略某些模块,也可以增加其他模块。此外,这些模块可以通过软件、硬件或者软件和硬件的组合加以实施,所述软件是所述移动终端102和/或所述服务器106中处理器上所运行的软件。
所述传感数据收集和处理模块314(或简称为处理模块314)收集和处理来自所述移动终端102中装置(例如,各种传感器)的数据,和/或来自所述移动终端102上所运行软件的数据。所收集的传感数据和/或处理后的传感数据会发送给所述用户环境管理器312。或者,所收集的传感数据和/或处理后的传感数据会转送给所述服务器106,用于进一步处理。
所述用户环境配置和触发模块316(或简称为用户环境配置模块316)可以存储用户环境操作方面的信息,诸如用户环境配置和用户环境触发。也就是说,关于应该如何运行用户环境和何时运行用户环境方面的信息会存储在用户环境配置模块316中。本文所使用的用户环境可包括操作系统、捆绑的应用、应用配置和用户界面等的一部分,用于建立软件环境供所述用户108使用。所述用户环境配置模块316中的信息可来自于所述服务器106,可以在用户环境软件图像中预先配置,或者也可以由所述用户108手动配置。
所述用户环境收集模块/数据库318可存储一个或数个用户环境,以备在所述移动终端102上运行。可以用不同方式配置不同类型的所述移动终端102。某些移动终端可以允许每次运行单个用户环境,而某些其他移动终端可以允许数个用户环境同时或不同时运行。在某些实施方案中,所述移动终端102允许运行一个或数个用户环境,而且做好运行准备的用户环境的集合则存储在所述用户环境收集模块/数据库318中。
所述用户环境管理器312负责控制和协调所述移动终端102上的用户环境操作。举例而言,所述移动终端102上的所述用户环境管理器312可以从所述用户环境收集模块/数据库318所存储的数个用户环境中选择某个用户环境,并且可为所述用户108启用所选择的用户环境。所述用户环境管理器312可以从所述服务器106请求一个新的用户环境,并存储所述新的用户环境,以便即刻使用或下次使用。进一步地,所述用户环境管理器312也可以从所述处理模块314接收所收集的和/或处理后的传感数据,并且可以基于传感数据和来自所述用户环境配置模块316的配置信息,来选择期望的的用户环境加以启用或开启。另外,所述用户环境管理器312也可以将处理后的传感数据转送给所述服务器106,用于进一步处理。
进一步地,所述用户环境管理器312也可用来提供所述移动终端102上的用户环境虚拟化功能。图4说明了一个在移动终端102上的典型的用户环境虚拟化结构。
如图4所示,所述移动终端102可包括一个操作系统410。所述操作系统410可包括任何合适类型的操作系统,所述操作系统配置为在移动终端(诸如,智能手机)上运行。举例而言,所述操作系统410可以是Windows系统、Android系统、互联网操作系统iOS、Linux或者Firefox操作系统等。
所述操作系统410可包括虚拟化层412,用户环境402和用户环境404可通过虚拟化层412、独立于所述移动终端102的硬件配置和/或所述移动终端上的操作系统,而加以使用。也就是说,硬件组件可以通过所述虚拟化层412进行虚拟化,从而使得不止一个用户环境可以共享同一个硬件组件。尽管出于说明目的而只展示两个用户环境,但是也可以包括任何数量的用户环境。
用户环境(例如,所述用户环境402、所述用户环境404)可包括操作系统的一部分,此部分可以使用户环境作为独立的环境来运行应用程序,其独立于其他用户环境以及其他用户环境中运行的应用程序。举例而言,基于Linux的设计中的第一用户环境可包括完整的Android组件,从而使得第一用户环境可以与基于Android的第二用户环境并列运行,原因在于第一用户环境不会和第二Android用户环境进行共享。
再举一例,因为一个用户环境和另外一个用户环境彼此相互独立,所以Android可以在一个用户环境中运行,而Firefox可以在另一个用户环境中运行,并且这两个用户环境都由用户环境下共享的Linux加以支持。进一步地,如上文所述的,所述用户环境管理器312可配置为创建和管理用户环境实例。举例而言,所述用户环境管理器312可以基于某些条件来启用一个或数个用户环境,也可以在运行期间维护和控制用户环境,诸如用户环境更新等。
因为用户环境是基于所述虚拟化层412而提供的,所以整个所述操作系统410不需要进行虚拟化(例如,在内核层上)。相反地,所述虚拟化层412能够使数个用户环境运行在同一个移动终端上,也就是所谓的正需要的装置虚拟化。进一步地,可以绕过所述虚拟化层412,从而允许某些移动终端进行非虚拟化,在此情况下,这些移动终端每次可以运行一个用户环境。
进一步地,可以由所述用户环境管理器312来控制数个用户环境的开启和停止。举例而言,可以在启用另一个选定的用户环境之前停止一个用户环境,当移动传感器数据触发相应动作时。因为每个用户环境具有自己的内存覆盖区,所以需要使用较小的内存,从而使得移动终端102上的用户环境虚拟化结构较为实用。
图5说明了一个在所述移动终端102上的用户环境虚拟化结构的初始化过程。如图5所示,所述移动终端102可包括闪存模块和实体存储器(例如,RAM),所述闪存模块和实体存储器与处理器一起用来运行用户环境虚拟化结构。也就是说,用于用户环境虚拟化结构的程序代码可以存储在闪存中,也可以在操作过程中加载到RAM中。然后,用于所述用户环境虚拟化结构的软件模块可以进行初始化,并从底层向上层或应用层进行开启。
举例而言,当所述移动终端102开机或复位后,处理器可以使用引导ROM来运行引导序列,以将引导装载程序Bootloader模块从闪存加载到内存中,并且执行所述引导装载程序Bootloader,从而加载所述操作系统和所述用户环境等的软件图像。或者,所述引导装载程序Bootloader也可以从闪存加以执行。然后,从RAM或闪存开启和配置操作系统的内核。
内核开启之后,便可以开启用户空间初始化过程,所述用户空间初始化过程可以在所述移动终端102上为一个或多个用户建立软件环境。在用户空间初始化过程的末期,所述用户环境管理器312可以进行初始化并开启,用来管理用户环境初始化。
举例而言,所述用户环境管理器312可以基于某些条件(诸如配置和/或移动传感数据)而从用户环境集合中开启某个用户环境。如果所述移动终端具有单个显示器并且屏幕尺寸有限,那么所述用户环境管理器312可以只允许一个用户环境来控制屏幕显示和/或输入。然而,根据具体配置,所述用户环境管理器312也可以允许用户环境之间共享其他软件资源。
返回到图3,移动虚拟化系统100的服务器端配置包括服务器106,所述服务器106通过云110而耦合到移动终端102。所述服务器106可包括个人移动管理器302、用户行为模块/数据库306、数据分析单元304以及用户环境模块/数据库308等。
所述个人移动管理器302(或简称为移动管理器302)配置为与所述移动终端102上的所述用户环境管理器312对接。所述移动管理器302可以从所述用户环境管理器312接收或转送传感数据,也可以将传感数据发送到数据分析单元,用于进行处理,并且从所述数据分析单元304取回处理结果。
所述移动管理器302也可从所述用户环境管理器312接收一个用户环境请求,所述用户环境请求可以包括一个新的用户环境请求或一个更新后用户环境的请求。从所述移动终端102上的用户环境管理器312接收用户环境请求之后,所述移动管理器302可以基于用户环境请求动态地构建一个用户环境,或者也可以从所述用户环境模块/数据库308选择一个期望的用户环境。所述移动管理器302也可将用户环境选择结果发送到所述用户环境管理器312。进一步地,所述移动管理器302也可管理移动终端的其他方面和/或其他移动装置。
所述数据分析单元304可从所述移动管理器302接收传感数据和/或其他请求,并提供各种分析。举例而言,所述数据分析单元304可使用所述用户行为数据库306,来执行用户行为学习/建模。所述数据分析单元304也可基于用户特定信息,来确定和推荐移动终端运行期间的环境,诸如用户环境、操作系统、应用程序、服务和其他组件。
所述用户行为数据库306可包括一个学习到的数据库来使移动传感数据处理匹配到所述用户环境模块/数据库308。所述用户行为数据库306也可以按照适应模式,在运行期间进行更新,从而使其在过程中最佳化。进一步地,所述用户行为数据库306可能不会特别针对某个用户,因此不会存储个人和私有信息。然而,所述用户行为数据库306可接收用户的输入或帮助(诸如事件标签),从而有助于进行用户行为分析。
进一步地,所述用户环境模块/数据库308可包括大量宽泛的用户环境,而且这些用户环境含有不同的应用程序、不同的用户界面设计、不同的系统设置、不同的应用配置。也就是说,所述用户环境模块/数据库308可包括用户环境集合设置用于所有情形和各种移动终端。所述用户环境模块/数据库308可以将一个或多个请求的用户环境提供给所述数据分析单元304和/或所述移动管理器302。
在操作过程中,移动端和服务器端彼此进行交互,来实施如图3所示的虚拟化移动平台。在某些实施方案中,移动端(例如,所述用户环境管理器312)也可以在能力降低的情况下工作,而无需服务器端的支持,其中,当存在多个预加载的用户环境时,所述用户环境管理器312可以根据现有用户环境配置和所收集的/处理后的传感数据,而切换到所述期望的用户环境。在某些实施方案中,所述用户环境管理器312可以将传感数据转发给服务端,而且,当传感数据所指示的条件期望新的用户环境时,便会从服务端请求新的用户环境。图6说明了一个与所披露实施方案相符合的典型的虚拟化移动平台操作过程600。
如图6所示,开始的时候,所述移动终端上的用户环境配置和用户环境集合进行初始化(602)。举例而言,用户环境切换触发规则可被定义作为用户环境配置的一部分,也就是说,所述移动终端上的一个或多个预定条件是否需要从当前用户环境切换到新的用户环境。用户环境集合可包括数个用户环境,所述数个用户环境可以基于用户环境配置而被配置用于在移动终端上运行,并且,这些用户环境也可每次运行一个或者同时运行。
举例而言,用户可以在用户环境集合中具有两个用户环境,一个用于工作,另一个用于家庭。工作位置用户环境可以针对工作环境进行配置,安装邮件、办公软件和其他工作相关的应用程序,具有额外的安全性,和/或能够从服务器端进行部署和管理。出于高可靠性目的,工作位置用户环境可以由服务器端进行管理。
另一方面,家庭位置用户环境可以不受服务器管理,而且所有应用程序和游戏都由用户进行安装,供家庭使用。用户环境配置和/或用户环境集合可以在移动终端中预先加载,或者也可以在初始化时动态地加载到移动终端中。也可以使用其他配置。
进一步地,在用户操作移动终端的过程中,收集和处理移动传感数据(604)。可以从各种传感器、其他装置和软件程序收集各种移动传感数据,而且可以在移动端和/或服务器端上处理移动传感数据。在某些实施方案中,移动终端可以检测移动终端的场景。举例而言,移动终端可以检测工作位置WiFi接入点服务集标识符SSID的存在,而处理后的传感数据可以指示移动终端当前是在工作位置,或者,移动终端可以检测家庭WiFi接入点服务集标识符SSID,而处理后的传感数据可以指示移动终端当前是在家里。在另一实施方案中,移动终端可以检测移动终端的位置。举例而言,移动终端可以检测到移动终端处于正在飞行的飞机上。
进一步地,当移动端由服务器端加以支持或管理时,可以由所述服务器106或所述云110执行用户行为分析(606)。也就是说,云基用户行为学习可以基于传感数据和数据分析加以执行。用户行为学习的结果可提供给所述服务器106和/或所述移动终端102。
进一步地,传感数据和/或用户行为分析的结果可以加以分析,来指示移动终端的一个或多个预定条件(608)。基于预定条件,可以确定当前用户环境是否需要改变到(例如,切换或更新到)期望的的一个或数个用户环境(610)。
举例而言,如果传感数据指示移动终端处于工作位置,而当前用户环境是家庭位置的用户环境,那么便可以确定当前用户环境需要切换到工作位置用户环境。或者,如果传感数据指示移动终端是在家庭位置,而当前用户环境是工作位置的用户环境,那么便可以确定当前用户环境需要切换到家庭位置用户环境。
再举例而言,如果传感数据指示移动终端处于飞机上,而当前用户环境是正常用户环境,那么便可以确定当前用户环境需要切换到飞机用户环境,比如,关闭无线的预加载用户环境、不存在浏览器以及依赖数据连接的任何应用程序的用户界面,但是可以使用飞机旅程期望的的游戏、音乐、书籍和其他东西。
如果确定当前用户环境需要切换或更新(610;是),那么当前用户环境便可以自动切换到期望的用户环境。举例而言,在确定当前家庭位置用户环境需要切换到工作位置用户环境之后,工作位置用户环境便会自动加载到移动终端上,反之亦然。或者,可以提示用户来确认将当前用户环境切换到期望的用户环境。
再举例而言,在确定正常用户环境需要切换到不使用无线网络的飞机用户环境之后,可以开启预加载的飞机用户环境来替换当前用户环境。
进一步地,如果期望的用户环境并未预先加载到移动终端中,或者并未下载到移动终端上,那么服务器端便可以动态地构建一个期望的用户环境,并且将新构建的期望的用户环境加载到所述移动终端中,用于切换或更新。也就是说,服务器端可以动态地构建和推荐合适的用户环境,以及符合用户偏好的捆绑的应用和用户界面,诸如用户位置和用户链接等。此类用户环境构建和运行时间的替换可以是场景适应性或用户适应性的,从而明显改善用户体验。
另一方面,如果确定当前用户环境不需要改变(610;否),或者在改变当前用户环境(612)之后,过程600便返回到604,从而继续收集和处理移动传感数据。
另外,服务器端也可以基于传感数据和用户行为分析,为所述用户/所述移动终端选择和/或推荐期望的应用程序。大量的应用程序可以在线使用,而用户可能不知道使用哪个应用程序或者哪个应用程序可以安全使用(也就是,无病毒等)。服务器端可以基于某些预定条件来选择期望的的应用程序,并且可以将这些期望的的应用程序并入到用户环境中。
服务器端可以将大量用户环境选择内容存储在用户环境数据库中,数据分析单元304可以自动将期望的用户环境与用户的当前场景相匹配。通过用户与移动终端102之间的互动和场景知识的反馈,用户环境也可以由数据分析单元304基于用户行为学习过程来建立,并且在所选定的用户环境中可以包括所述期望的的应用程序。
换言之,服务器端可以基于传感数据和用户行为分析,来推荐某个用户界面和某些应用程序,并且可以使用用户推荐和/或选择的、适合于用户位置和/或输入的应用程序,来动态地构建用户环境。
在某些实施方案中,当将新构建的用户环境加载到所述移动终端中时,新的用户环境可被压缩并通过网络或云110下载到对应的移动终端上。另外,当更新后的用户环境需要更新当前处于所述移动终端102上的现有用户环境时,服务器端可以使用某些更新程序,从而使更新现有用户环境期望的时间和带宽最小化。图7说明了一个与所披露实施方案相符合的典型的用户环境更新过程。
如图7所示,一个原始用户环境可以预先加载到移动终端中,并且存储在移动终端的文件系统中。所述原始用户环境可以是一个建立在PC或所述服务器106上的软件图像。服务器端也可以为所述移动终端102保留原始用户环境。也就是说,在移动端和服务端里都可以提供或得到原始用户环境。
在操作过程中,当服务器端从期望的操作系统组件加上期望的应用程序、用户界面和系统配置,来动态地建立更新后用户环境时,服务器端也可以确定移动终端上是否存在原始用户环境来用于更新后的用户环境。在某些情况下,新的用户环境图像可能和原始用户环境存在少许差别部分(Delta),表现在新用户界面变化、某些软件配置变化和/或不同应用程序的捆绑。因此,服务器端可以获取原始用户环境和更新后用户环境(新的用户环境)之间的差别部分(Delta)。
进一步地,服务器端可以压缩和加密差别部分(Delta),而且所述新的用户环境与原始用户环境之间压缩和加密后的差别部分(Delta)可以组成新的用户环境图像(补丁),这个用户环境图像在图像尺寸上可以明显减小。将所述新的用户环境从云/服务器加载到差别部分(Delta)移动终端上的时间和数据量也可以明显减少。因此,可以完成云基用户环境存储和用户环境管理。
换言之,当新的用户环境集准备好时,整个用户环境集不会直接传送给移动终端,除非不能找到原始用户环境。相反地,首先通过产生所述新的用户环境集和原始用户环境集之间的差别(所述新的用户环境是基于这个差别的),然后再通过压缩和加密差别数据,来准备所述新的用户环境的补丁。然后,使新准备的补丁连同所有其他类似方式准备的补丁(如果有的话)作为服务器或网页存储器上新的用户环境选择,以供用户下载。
在移动端上,当所述用户或所述移动终端102下载新的用户环境(补丁)之后,新的用户环境会进行解压缩和解密,从而得到所述新的用户环境和原始用户环境之间的差别部分(Delta)。进一步地,所述移动终端将原始用户环境定位在它的文件系统上(例如,闪存文件系统或其他文件系统),并且基于原始用户环境和差别部分(Delta)来恢复更新后用户环境(新的用户环境)的对应软件图像。也就是说,所述移动终端自动将从服务器端所接收的所述新的用户环境图像转换成可供移动终端使用的用户环境。如果原始用户环境无法使用或者不能定位,那么便可以整个下载更新后的用户环境图像。
通过使用所披露的系统和方法,可以实施许多有利的应用。举例而言,可以基于正需要的装置虚拟化来实施移动平台虚拟化架构,从而使得能够较易地构建用户环境、较易地切换用户环境以及同时运行用户环境的多个实例。另外,基于移动传感数据和数据分析,可以实施云基用户行为学习,也可以实施云基移动软件管理,包括基于移动传感数据处理和用户行为学习来动态地产生所推荐的用户环境的能力。
通过使用所披露的系统和方法,移动平台虚拟化架构可以使用移动传感数据和用户行为学习来传递受云支持的、场景适应性的移动用户体验。移动平台虚拟化允许多个同构或异构用户环境在移动终端上同时运行。进一步地,所披露的系统和方法可以利用普遍存在的高速数据网络和用户环境更新技术,来减小图像尺寸,而且用户环境选择结果可以动态地发送给移动装置,也可以根据用户选择手动地下载,使用或不使用推荐都可以。
其他对所公开的实施例的应用,益处,变换,修改,或等同,对本领域的技术人员来说,都是显而易见的。
Claims (18)
1.一种用于移动平台的方法,所述移动平台含有移动终端,所述移动终端具有操作系统,所述方法包括:
在所述操作系统中初始化所述移动终端上的数个用户环境,包括初始化所述移动终端上运行的当前用户环境,其中,所述操作系统包括虚拟化层,不止一个用户环境可通过虚拟化层、独立于所述移动终端上的操作系统使用;其中所述数个用户环境能够在不改变所述操作系统的情况下基于一个或多个预定条件彼此相互切换;
收集与所述移动终端操作相关联的一个或多个参数的传感数据;
处理所述传感数据,将所述传感数据转发给云中的服务器;以及在所述服务器上基于所述传感数据来执行用户行为分析,指示所述移动终端的所述预定条件中的至少一个预定条件;
判断所述当前用户环境是否适合所述移动终端的所述预定条件中的所述至少一个预定条件,所述至少一个预定条件是通过处理所述传感数据加以指示的;以及
如果所述当前用户环境不适合所述移动终端的所述预定条件,那么便将所述当前用户环境从所述数个用户环境切换到期望的用户环境。
2.根据权利要求1所述的方法,其特征在于:
用户环境包括用于设置用户软件环境的所述操作系统、捆绑的应用、应用配置、用户界面中的一部分。
3.根据权利要求1所述的方法,其特征在于:
所述传感数据包括所述移动终端的位置信息、运动信息和场景信息。
4.根据权利要求3所述的方法,其特征在于,进一步包括:
基于所述用户行为分析,来确定所属当前用户环境是否适合所述移动终端的所述预定条件中的所述至少一个预定条件;
基于所述移动终端的所述预定条件中的所述至少一个预定条件,而动态地构建期望的用户环境;以及
使所述动态构建的期望的用户环境适用于所述移动终端。
5.根据权利要求4所述的方法,其特征在于,进一步包括:
将所述期望的用户环境从所述服务器下载到所述移动终端上;以及
将所述期望的用户环境作为所述数个用户环境的一部分,而存储在所述移动终端上。
6.根据权利要求4所述的方法,其特征在于,使所述动态构建的期望的用户环境适用于所述移动终端进一步包括:
判断是否存在一个与所述期望的用户环境相对应的、适用于所述移动终端的原始用户环境;
获取所述原始用户环境与所述期望的用户环境之间的差别部分;
将所述差别部分压缩并加密成用户环境补丁;以及
使所述用户环境补丁适用于所述移动终端。
7.根据权利要求6所述的方法,其特征在于,进一步包括:
将所述用户环境补丁下载到所述移动终端上;
解压并解密所述用户环境补丁,从而恢复所述差别部分;
在所述移动终端上定位所述原始用户环境;
基于所述原始用户环境和所述差别部分,来获取所述期望的用户环境;以及
将所述期望的用户环境作为所述数个用户环境中的一个,而存储在所述移动终端上。
8.根据权利要求1所述的方法,其特征在于:
所述预定条件包括基于场景的条件和基于位置的条件。
9.根据权利要求1所述的方法,其特征在于:
所述当前用户环境是家庭位置用户环境,所述期望的用户环境是工作位置用户环境,并且所述预定条件包括工作位置无线网络ID,所述无线网络ID由所述传感数据加以指示。
10.一种移动平台,包括:
移动终端,所述移动终端具有处理器;以及
操作系统,所述操作系统在所述处理器上运行,
其中,所述处理器配置为:
在所述操作系统中初始化所述移动终端上的数个用户环境,包括初始化所述移动终端上运行的当前用户环境,其中,所述操作系统包括虚拟化层,不止一个用户环境可通过虚拟化层、独立于所述移动终端上的操作系统使用;其中所述数个用户环境能够在不改变所述操作系统的情况下基于预定条件中的一个或多个预定条件彼此相互切换;
收集与所述移动终端操作相关联的一个或多个参数的传感数据;
处理所述传感数据,从而指示所述移动终端的所述预定条件中的至少一个预定条件;
判断所述当前用户环境是否适合所述移动终端的所述预定条件中的所述至少一个预定条件,所述至少一个预定条件是通过处理所述传感数据加以指示的;以及
如果所述当前用户环境不适合所述移动终端的所述条件,那么便将所述当前用户环境从所述数个用户环境切换到期望的用户环境;
云中的服务器,所述云中的服务器配置为:
当所述移动终端将所述传感数据转发给所述服务器时,接收从所述移动终端转发的所述传感数据;以及基于所述传感数据来执行用户行为分析。
11.根据权利要求10所述的移动平台,其特征在于:
用户环境包括用于设置用户软件环境的所述操作系统、捆绑的应用程序、应用配置、用户界面中的一部分。
12.根据权利要求10所述的移动平台,其特征在于:
所述传感数据包括所述移动终端的位置信息、运动信息和场景信息。
13.根据权利要求12所述的移动平台,其特征在于,所述服务器进一步配置为:
基于所述用户行为分析,来确定所述当前用户环境是否适合所述移动终端的所述预定条件中的所述至少一个预定条件;
基于所述移动终端的所述预定条件中的所述至少一个预定条件,而动态地构建期望的用户环境;以及
使所述动态构建的期望的用户环境适用于所述移动终端。
14.根据权利要求13所述的移动平台,其特征在于,所述移动终端的所述处理器进一步配置为:
将所述期望的用户环境从所述服务器下载到所述移动终端上;以及
将所述期望的用户环境作为所述数个用户环境的一部分,而存储在所述移动终端上。
15.根据权利要求14所述的移动平台,其特征在于,为了使所述动态构建的期望的用户环境适用于所述移动终端,所述服务器进一步配置为:
判断是否存在一个与所述期望的用户环境相对应的、适用于所述移动终端的原始用户环境;
获取所述原始用户环境与所述期望的用户环境之间的差别部分;
将所述差别部分压缩并加密成用户环境补丁;以及
使所述用户环境补丁适用于所述移动终端。
16.根据权利要求15所述的移动平台,其特征在于,所述移动终端的所述处理器进一步配置为:
将所述用户环境补丁下载到所述移动终端上;
解压并解密所述用户环境补丁,从而恢复所述差别部分;
在所述移动终端上定位所述原始用户环境;
基于所述原始用户环境和所述差别部分,来获取所述期望的用户环境;以及
将所述期望的用户环境作为所述数个用户环境中的一个,而存储在所述移动终端上。
17.根据权利要求10所述的移动平台,其特征在于:
所述预定条件包括基于场景的条件和基于位置的条件。
18.根据权利要求10所述的移动平台,其特征在于:
所述当前用户环境是家庭位置用户环境,所述期望的用户环境是工作位置用户环境,并且所述预定条件包括工作位置无线网络ID,所述无线网络ID由所述传感数据加以指示。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/710,486 US9063770B2 (en) | 2012-12-11 | 2012-12-11 | System and method for mobile platform virtualization |
US13/710,486 | 2012-12-11 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103533158A CN103533158A (zh) | 2014-01-22 |
CN103533158B true CN103533158B (zh) | 2016-03-02 |
Family
ID=49934815
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310390831.XA Expired - Fee Related CN103533158B (zh) | 2012-12-11 | 2013-09-02 | 移动平台虚拟化系统和方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US9063770B2 (zh) |
CN (1) | CN103533158B (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9483646B2 (en) * | 2013-09-19 | 2016-11-01 | Remotium, Inc. | Data exfiltration prevention from mobile platforms |
US20160012640A1 (en) * | 2014-07-14 | 2016-01-14 | Microsoft Corporation | User-generated dynamic virtual worlds |
CN104199720A (zh) * | 2014-08-25 | 2014-12-10 | 北京云巢动脉科技有限公司 | 一种移动设备上的传感器在虚拟机中的使用方法及系统 |
US20160188169A1 (en) * | 2014-12-31 | 2016-06-30 | TCL Research America Inc. | Least touch mobile device |
US10728092B2 (en) * | 2015-05-01 | 2020-07-28 | Microsoft Technology Licensing, Llc | Cloud-mastered settings |
EP3106985B1 (en) | 2015-06-16 | 2020-05-06 | Huawei Technologies Co., Ltd. | Method and apparatus for classifying virtual activities of mobile users |
KR20170002048A (ko) * | 2015-06-29 | 2017-01-06 | 삼성전자주식회사 | 피사체 이동 제어 장치 및 방법 |
US9781243B1 (en) | 2016-06-27 | 2017-10-03 | Intel Corporation | Optimizing wearable device settings using machine learning |
CN108353339A (zh) * | 2016-08-21 | 2018-07-31 | 华为技术有限公司 | 一种设备之间组网的方法和设备 |
KR102340637B1 (ko) * | 2017-05-12 | 2021-12-20 | 엔에이치엔 주식회사 | 모바일 클라우드 시스템 및 그 동작 방법 |
US20180349791A1 (en) * | 2017-05-31 | 2018-12-06 | TCL Research America Inc. | Companion launcher |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1629870A (zh) * | 2003-06-30 | 2005-06-22 | 微软公司 | 用于提供用户存在性和有效性的状态和预测的方法及结构 |
CN1925442A (zh) * | 2006-08-01 | 2007-03-07 | 程伟明 | 一种智能环境中无线通信终端的自动组网方法 |
CN101198189A (zh) * | 2008-01-03 | 2008-06-11 | 中兴通讯股份有限公司 | 一种通过小区定位切换情景模式的方法及其装置 |
CN101789999A (zh) * | 2010-02-09 | 2010-07-28 | 中兴通讯股份有限公司 | 移动终端场景管理与备份恢复的方法及装置 |
CN102736909A (zh) * | 2011-04-14 | 2012-10-17 | 北京千橡网景科技发展有限公司 | 用于对设备进行自适应配置的方法和装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7770016B2 (en) * | 1999-07-29 | 2010-08-03 | Intertrust Technologies Corporation | Systems and methods for watermarking software and other media |
US8161299B2 (en) * | 2007-12-20 | 2012-04-17 | Intel Corporation | Location based policy system and method for changing computing environments |
US7971049B2 (en) * | 2008-03-31 | 2011-06-28 | Symantec Corporation | Systems and methods for managing user configuration settings |
US20110145591A1 (en) * | 2009-12-16 | 2011-06-16 | Grzybowski Carl E | Adaptive virtual environment management system |
US8310394B2 (en) * | 2010-03-08 | 2012-11-13 | Deutsche Telekom Ag | Apparatus, method, manufacture, and system for sensing substitution for location-based applications |
-
2012
- 2012-12-11 US US13/710,486 patent/US9063770B2/en active Active
-
2013
- 2013-09-02 CN CN201310390831.XA patent/CN103533158B/zh not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1629870A (zh) * | 2003-06-30 | 2005-06-22 | 微软公司 | 用于提供用户存在性和有效性的状态和预测的方法及结构 |
CN1925442A (zh) * | 2006-08-01 | 2007-03-07 | 程伟明 | 一种智能环境中无线通信终端的自动组网方法 |
CN101198189A (zh) * | 2008-01-03 | 2008-06-11 | 中兴通讯股份有限公司 | 一种通过小区定位切换情景模式的方法及其装置 |
CN101789999A (zh) * | 2010-02-09 | 2010-07-28 | 中兴通讯股份有限公司 | 移动终端场景管理与备份恢复的方法及装置 |
CN102736909A (zh) * | 2011-04-14 | 2012-10-17 | 北京千橡网景科技发展有限公司 | 用于对设备进行自适应配置的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
US9063770B2 (en) | 2015-06-23 |
US20140164750A1 (en) | 2014-06-12 |
CN103533158A (zh) | 2014-01-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103533158B (zh) | 移动平台虚拟化系统和方法 | |
EP3629212B1 (en) | Secure edge-cloud function as a service | |
KR101821693B1 (ko) | 로밍 네트워크 액세스 방법 및 장치 | |
CN111408136B (zh) | 一种游戏交互控制方法、装置及存储介质 | |
CN102939579B (zh) | 绑定用户接口元素和粒度反映处理的方法和装置 | |
De | Mobile cloud computing: architectures, algorithms and applications | |
US10824449B2 (en) | Application running method and device | |
US20220353927A1 (en) | Cloud hosted device instances method and apparatus | |
KR20180112825A (ko) | Mec 애플리케이션의 재배치를 제어하기 위한 방법 및 서버 | |
US8260278B2 (en) | Framework for agile mobile applications | |
Lewis et al. | Cloudlet-based cyber-foraging for mobile systems in resource-constrained edge environments | |
US20210144515A1 (en) | Systems and methods for multi-access edge computing node selection | |
JP2018195304A (ja) | モバイルクラウドシステム、その動作方法、およびクラウドサーバ | |
US20170033983A1 (en) | Wireless terminal, configurable network device and method for use therewith | |
CN114205365B (zh) | 应用界面迁移系统、方法及相关设备 | |
CN114694226B (zh) | 一种人脸识别方法、系统及存储介质 | |
US20220103902A1 (en) | System for content curation with user context and content leverage | |
US9501303B1 (en) | Systems and methods for managing computing resources | |
WO2017005143A1 (en) | Method and apparatus for managing virtual execution environments using contextual information fragments | |
JP2021511688A (ja) | ネットワークスライスの構成方法及び装置、コンピュータ記憶媒体 | |
CN114610384A (zh) | 一种应用迁移方法、装置、设备及存储介质 | |
US20230116757A1 (en) | Techniques for real-time object creation in extended reality environments | |
US20230048343A1 (en) | Correlation of a virtual machine to a host within a virtual domain | |
CN111475176A (zh) | 一种数据读写的方法、相关装置、系统以及存储介质 | |
CN111176714A (zh) | 软件系统开发方法、装置、终端设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20160302 |