一种操作系统热切换的方法、装置及移动终端的制作方法

文档序号:6638527阅读:120来源:国知局
一种操作系统热切换的方法、装置及移动终端的制作方法
【专利摘要】本发明公开了一种操作系统热切换的方法,应用于运行有多个操作系统的移动终端,多个操作系统包括一个前台操作系统,以及至少一个后台操作系统,其中,当前的前台操作系统为第一操作系统,所述至少一个后台操作系统包括第二操作系统,所述方法包括:获取操作系统切换指令,所述操作系统切换指令包含所述第二操作系统的标识和切换标识,根据所述切换标识,释放所述第一操作系统所占用的硬件资源,将所述前台操作系统从所述第一操作系统到所述第二操作系统的切换。本发明实施例提供的操作系统热切换的方法,一定程度上保证多个操作系统对硬件资源的互斥访问和协调使用,从而保证了操作系统切换后硬件资源使用的可靠性。
【专利说明】一种操作系统热切换的方法、装置及移动终端

【技术领域】
[0001]本发明涉及计算机【技术领域】,具体涉及一种操作系统热切换的方法、装置及移动终端。

【背景技术】
[0002]当前移动终端功能越来越强大,支持的功能也越来越多,可以满足一个移动终端上运行多个操作系统,但移动终端同一时间只能被一个操作系统独占使用,因此目前切换操作系统的方式是多系统冷切换,即同时只能启动一个操作系统,如果需要切换到另一个操作系统,则需要重新启动移动终端。如果能同时启动多个操作系统,并且可以在两个操作系统之间快速热切换,就可以将多操作系统的价值和用户体验提升要一个新的层次,也就能够吸引更多的用户。一个移动终端只有一套硬件资源,所述硬件资源为所述移动终端中用于与外部交互的硬件资源;用于与外部交互的硬件资源,如:显示屏、音视频、蓝牙、无线保真(wireless fidelity,Wifi)、全球定位系统(Global Posit1ning System,GPS)、通用串行总线(Universal Serial Bus,USB)、安全数码(Secure Digital,SD)卡等,目前在运行有多个操作系统的移动终端中,经常会出现多个操作系统同时对同一硬件资源进行使用的情况,导致硬件资源使用异常,甚至损坏硬件资源,现有技术中无法做到多个操作系统对移动终端硬件资源的互斥访问和协调使用。


【发明内容】

[0003]本发明实施例提供一种操作系统热切换的方法,能一定程度上保证多个操作系统对硬件资源的互斥访问和协调使用,从而保证了操作系统切换后硬件资源使用的可靠性。本发明实施例还提供了相应的装置及移动终端。
[0004]本发明第一方面提供一种操作系统热切换的方法,所述方法应用于运行有多个操作系统的移动终端,所述多个操作系统包括一个前台操作系统,以及至少一个后台操作系统,每个操作系统各自对应一个资源管理命名空间,每个资源管理命名空间包括与其对应的操作系统的运行状态信息,所述运行状态信息用于指示所述操作系统为前台操作系统或后台操作系统,并用于指示所述移动终端中的硬件开放对前台操作系统的使用或屏蔽对后台操作系统的使用,所述硬件为所述用于与外部交互的硬件,其中,当前的前台操作系统为第一操作系统,所述至少一个后台操作系统包括第二操作系统,所述方法包括:
[0005]获取操作系统切换指令,所述操作系统切换指令包含所述第二操作系统的标识和切换标识,所述第二操作系统的标识用于指示将所述第二操作系统切换为前台操作系统;
[0006]根据所述切换标识,释放所述第一操作系统所占用的硬件资源,所述硬件资源为所述移动终端中用于与外部交互的硬件资源;
[0007]将所述第一操作系统的资源管理命名空间中的运行状态信息修改到后台状态,将所述第二操作系统的资源管理命名空间中的运行状态信息修改到前台状态,完成所述前台操作系统从所述第一操作系统到所述第二操作系统的切换。
[0008]结合第一方面,在第一种可能的实现方式中,所述根据所述切换标识,释放所述第一操作系统所占用的硬件资源,所述硬件资源为所述移动终端中用于与外部交互的硬件资源之后,所述方法还包括:
[0009]根据所述第二操作系统的标识,从资源全局链表中确定所述第二操作系统的资源管理命名空间,所述资源全局链表包括操作系统的标识与操作系统的资源管理命名空间的对应关系。
[0010]结合第一方面或第一方面第一种可能的实现方式,在第二种可能的实现方式中,所述根据所述切换标识,释放所述第一操作系统所占用的硬件资源,包括:
[0011]根据所述切换标识,解除处于阻塞状态的开始切换标识的阻塞状态,得到解除阻塞的开始切换标识,所述解除阻塞的开始切换标识用于指示资源管理线程通知所述移动终端中的硬件释放所述第一操作系统所占用的硬件资源,所述处于阻塞状态的开始切换标识用于指示禁止执行操作系统切换。
[0012]结合第一方面第二种可能的实现方式,在第三种可能的实现方式中,所述完成所述前台操作系统从所述第一操作系统到所述第二操作系统的切换之后,所述方法还包括:
[0013]将所述硬件资源分配给所述第二操作系统使用;
[0014]在将所述硬件资源分配给所述第二操作系统使用后,将所述解除阻塞的开始切换标识恢复到阻塞状态。
[0015]结合第一方面、第一方面第一种、第二种或第三种可能的实现方式,在第四种可能的实现方式中,所述完成所述前台操作系统从所述第一操作系统到所述第二操作系统的切换之后,所述方法还包括:
[0016]监测所述移动终端的热插拔接口 ;
[0017]当监测到第一热插拔设备从所述移动终端拔出,则从所述第一操作系统的资源管理命名空间中清除所述第一热插拔设备的在位标记,以解除所述第一热插拔设备与所述第一操作系统的绑定关系,所述第一热插拔设备的在位标记用于指示所述第一热插拔设备供所述第一操作系统使用。
[0018]结合第一方面、第一方面第一种、第二种、第三种或第四种可能的实现方式,在第五种可能的实现方式中,所述完成所述前台操作系统从所述第一操作系统到所述第二操作系统的切换之后,所述方法还包括:
[0019]监测所述移动终端的热插拔接口 ;
[0020]当监测到第二热插拔设备插入所述移动终端,则在所述第二操作系统的资源管理命名空间中添加所述第二热插拔设备的在位标记,以建立所述第二热插拔设备与所述第二操作系统的绑定关系,所述第二热插拔设备的在位标记用于指示第二热插拔设备供所述第二操作系统使用。
[0021]本发明第二方面提供一种热插拔设备管理的方法,所述方法应用于运行有多个操作系统的移动终端,所述移动终端提供热插拔接口,所述热插拔设备通过所述热插拔接口与所述移动终端实现热插拔,所述多个操作系统包括一个前台操作系统,以及至少一个后台操作系统,每个操作系统各自对应一个资源管理命名空间,每个资源管理命名空间包括与其对应的操作系统的运行状态信息,所述运行状态信息用于指示所述操作系统为前台操作系统或后台操作系统,并用于指示所述移动终端中的硬件开放对前台操作系统的使用或屏蔽对后台操作系统的使用,所述硬件为所述用于与外部交互的硬件,其中,当前的前台操作系统为第一操作系统,所述至少一个后台操作系统包括第二操作系统,所述方法包括:
[0022]监测所述移动终端的热插拔接口 ;
[0023]当监测到第一热插拔设备插入所述移动终端时,则在所述第一操作系统的资源管理命名空间中添加所述第一热插拔设备的在位标记,以建立所述第一热拔插设备与所述第一操作系统的绑定关系,所述第一热插拔设备的在位标记用于指示所述第一热插拔设备供所述第一操作系统使用;
[0024]当监测到第二热插拔设备从所述移动终端拔出,则从所述第一操作系统的资源管理命名空间中清除所述第二热插拔设备的在位标记,以解除所述第二热插拔设备与所述第一操作系统的绑定关系,所述第二热插拔设备的在位标记用于指示所述第二热插拔设备供所述第一操作系统使用。
[0025]结合第二方面,在第一种可能的实现方式中,当所述前台操作系统从所述第一操作系统到所述第二操作系统,所述方法还包括:
[0026]当监测到所述第一热插拔设备从所述移动终端拔出,则在所述第一操作系统的资源管理命名空间中清除所述第一热插拔设备的在位标记,以解除所述第一热拔插设备与所述第一操作系统的绑定关系,所述第一热插拔设备的在位标记用于指示所述第一热插拔设备供所述第一操作系统使用;
[0027]当监测到所述第二热插拔设备插入所述移动终端,则在所述第二操作系统的资源管理命名空间中添加所述第二热插拔设备的在位标记,以建立所述第二热插拔设备与所述第二操作系统的绑定关系,所述第二热插拔设备的在位标记用于指示所述第二热插拔设备供所述第二操作系统使用。
[0028]本发明第三方面提供一种操作系统热切换的装置,所述装置应用于运行有多个操作系统的移动终端,所述多个操作系统包括一个前台操作系统,以及至少一个后台操作系统,每个操作系统各自对应一个资源管理命名空间,每个资源管理命名空间包括与其对应的操作系统的运行状态信息,所述运行状态信息用于指示所述操作系统为前台操作系统或后台操作系统,并用于指示所述移动终端中的硬件开放对前台操作系统的使用或屏蔽对后台操作系统的使用,所述硬件为所述用于与外部交互的硬件,其中,当前的前台操作系统为第一操作系统,所述至少一个后台操作系统包括第二操作系统,所述装置包括:
[0029]获取单元,用于获取操作系统切换指令,所述操作系统切换指令包含所述第二操作系统的标识和切换标识,所述第二操作系统的标识用于指示将所述第二操作系统切换为前台操作系统;
[0030]释放单元,用于根据所述获取单元获取的切换标识,释放所述第一操作系统所占用的硬件资源,所述硬件资源为所述移动终端中用于与外部交互的硬件资源;
[0031]切换单元,用于在所述释放单元释放所述硬件资源后,将所述第一操作系统的资源管理命名空间中的运行状态信息修改到后台状态,将所述第二操作系统的资源管理命名空间中的运行状态信息修改到前台状态,完成所述前台操作系统从所述第一操作系统到所述第二操作系统的切换。
[0032]结合第三方面,在第一种可能的实现方式中,所述装置还包括:
[0033]确定单元,用于根据所述获取单元获取的所述第二操作系统的标识,从资源全局链表中确定所述第二操作系统的资源管理命名空间,所述资源全局链表包括操作系统的标识与操作系统的资源管理命名空间的对应关系。
[0034]结合第三方面或第三方面第一种可能的实现方式,在第二种可能的实现方式中,
[0035]所述释放单元,具体用于根据所述切换标识,解除处于阻塞状态的开始切换标识的阻塞状态,得到解除阻塞的开始切换标识,所述解除阻塞的开始切换标识用于指示资源管理线程通知所述移动终端中的硬件释放所述第一操作系统所占用的硬件资源,所述处于阻塞状态的开始切换标识用于指示禁止执行操作系统切换。
[0036]结合第三方面第二种可能的实现方式,在第三种可能的实现方式中,所述装置还包括:
[0037]分配单元,用于在所述切换单元完成所述前台操作系统从所述第一操作系统到所述第二操作系统的切换之后,将所述硬件资源分配给所述第二操作系统使用;
[0038]修改单元,用于在所述分配单元将所述硬件资源分配给所述第二操作系统使用后,将所述解除阻塞的开始切换标识恢复到阻塞状态。
[0039]结合第三方面、第三方面第一种、第二种或第三种可能的实现方式,在第四种可能的实现方式中,所述装置还包括:
[0040]第一监测单元,用于在所述切换单元完成所述前台操作系统从所述第一操作系统到所述第二操作系统的切换之后,监测所述移动终端的热插拔接口 ;
[0041]清除单元,用于当所述第一监测单元监测到所述第一热插拔设备从所述移动终端拔出,则从所述第一操作系统的资源管理命名空间中清除所述第一热插拔设备的在位标记,以解除所述第一热插拔设备与所述第一操作系统的绑定关系,所述第一热插拔设备的在位标记用于指示所述第一热插拔设备供所述第一操作系统使用。
[0042]结合第三方面、第三方面第一种、第二种、第三种或第四种可能的实现方式,在第五种可能的实现方式中,所述装置还包括:
[0043]第二监测单元,用于监测所述移动终端的热插拔接口 ;
[0044]添加单元,用于当所述第二监测单元监测到第二热插拔设备插入所述移动终端,则在所述第二操作系统的资源管理命名空间中添加所述第二热插拔设备的在位标记,以建立所述第二热插拔设备与所述第二操作系统的绑定关系,所述第二热插拔设备的在位标记用于指示第二热插拔设备供所述第二操作系统使用。
[0045]本发明第四方面提供一种热插拔设备管理的装置,所述装置应用于运行有多个操作系统的移动终端,所述移动终端提供热插拔接口,所述热插拔设备通过所述热插拔接口与所述移动终端实现热插拔,所述多个操作系统包括一个前台操作系统,以及至少一个后台操作系统,每个操作系统各自对应一个资源管理命名空间,每个资源管理命名空间包括与其对应的操作系统的运行状态信息,所述运行状态信息用于指示所述操作系统为前台操作系统或后台操作系统,并用于指示所述移动终端中的硬件开放对前台操作系统的使用或屏蔽对后台操作系统的使用,所述硬件为所述用于与外部交互的硬件,其中,当前的前台操作系统为第一操作系统,所述至少一个后台操作系统包括第二操作系统,所述装置包括:
[0046]监测单元,用于监测所述移动终端的热插拔接口 ;
[0047]添加单元,用于当所述监测单元监测到第一热插拔设备插入所述移动终端时,则在所述第一操作系统的资源管理命名空间中添加所述第一热插拔设备的在位标记,以建立所述第一热拔插设备与所述第一操作系统的绑定关系,所述第一热插拔设备的在位标记用于指示所述第一热插拔设备供所述第一操作系统使用;
[0048]清除单元,用于当所述监测单元监测到第二热插拔设备从所述移动终端拔出,则从所述第一操作系统的资源管理命名空间中清除所述第二热插拔设备的在位标记,以解除所述第二热插拔设备与所述第一操作系统的绑定关系,所述第二热插拔设备的在位标记用于指示所述第二热插拔设备供所述第一操作系统使用。
[0049]结合第四方面,在第一种可能的实现方式中,
[0050]所述清除单元,还用于所述前台操作系统从所述第一操作系统到所述第二操作系统后,当所述监测单元监测到所述第一热插拔设备从所述移动终端拔出,则在所述第一操作系统的资源管理命名空间中清除所述第一热插拔设备的在位标记,以解除所述第一热拔插设备与所述第一操作系统的绑定关系,所述第一热插拔设备的在位标记用于指示所述第一热插拔设备供所述第一操作系统使用;
[0051]所述添加单元,还用于当所述面向用户的操作系统从第一操作系统切换到所述第二操作系统后,当所述监测单元监测到所述第二热插拔设备插入所述移动终端,则在所述第二操作系统的资源管理命名空间中添加所述第二热插拔设备的在位标记,以建立所述第二热插拔设备与所述第二操作系统的绑定关系,所述第二热插拔设备的在位标记用于指示所述第二热插拔设备供所述第二操作系统使用。
[0052]本发明第五方面提供一种移动终端,所述移动终端包括处理器,存储器和硬件资源,所述硬件资源为所述移动终端中用于与外部交互的硬件资源,其中,所述处理器同时运行有多个操作系统,所述多个操作系统包括一个前台操作系统,以及至少一个后台操作系统,每个操作系统各自对应一个资源管理命名空间,每个资源管理命名空间包括与其对应的操作系统的运行状态信息,所述运行状态信息用于指示所述操作系统为前台操作系统或后台操作系统,并用于指示所述移动终端中的硬件开放对前台操作系统的使用或屏蔽对后台操作系统的使用,所述硬件为所述用于与外部交互的硬件,其中,当前的前台操作系统为第一操作系统,所述至少一个后台操作系统包括第二操作系统,
[0053]以及,所述处理器,被配置成:
[0054]获取操作系统切换指令,所述操作系统切换指令包含所述第二操作系统的标识和切换标识,所述第二操作系统的标识用于指示将所述第二操作系统切换为前台操作系统;
[0055]根据所述切换标识,释放所述第一操作系统所占用的所述硬件资源;
[0056]将所述第一操作系统的资源管理命名空间中的运行状态信息修改到后台状态,将所述第二操作系统的资源管理命名空间中的运行状态信息修改到前台状态,完成所述前台操作系统从所述第一操作系统到所述第二操作系统的切换。
[0057]本发明第六方面提供一种移动终端,所述移动终端包括处理器,存储器、硬件资源和热插拔接口,所述硬件资源为所述移动终端中用于与外部交互的硬件资源,热插拔设备通过所述热插拔接口与所述移动终端实现热插拔,其中,所述处理器同时运行有多个操作系统,所述多个操作系统包括一个前台操作系统,以及至少一个后台操作系统,每个操作系统各自对应一个资源管理命名空间,每个资源管理命名空间包括与其对应的操作系统的运行状态信息,所述运行状态信息用于指示所述操作系统为前台操作系统或后台操作系统,并用于指示所述移动终端中的硬件开放对前台操作系统的使用或屏蔽对后台操作系统的使用,所述硬件为所述用于与外部交互的硬件,其中,当前的前台操作系统为第一操作系统,所述至少一个后台操作系统包括第二操作系统,
[0058]以及,所述处理器,被配置成:
[0059]监测所述移动终端的热插拔接口 ;
[0060]当监测到第一热插拔设备插入所述移动终端时,则在所述第一操作系统的资源管理命名空间中添加所述第一热插拔设备的在位标记,以建立所述第一热拔插设备与所述第一操作系统的绑定关系,所述第一热插拔设备的在位标记用于指示所述第一热插拔设备供所述第一操作系统使用;
[0061]当监测到第二热插拔设备从所述移动终端拔出,则从所述第一操作系统的资源管理命名空间中清除所述第二热插拔设备的在位标记,以解除所述第二热插拔设备与所述第一操作系统的绑定关系,所述第二热插拔设备的在位标记用于指示所述第二热插拔设备供所述第一操作系统使用。
[0062]本发明实施例提供的操作系统热切换的方法,应用于运行有多个操作系统的移动终端,所述多个操作系统包括一个前台操作系统,以及至少一个后台操作系统,每个操作系统各自对应一个资源管理命名空间,每个资源管理命名空间包括与其对应的操作系统的运行状态信息,所述运行状态信息用于指示所述操作系统为前台操作系统或后台操作系统,并用于指示所述移动终端中的硬件开放对前台操作系统的使用或屏蔽对后台操作系统的使用,所述硬件为所述用于与外部交互的硬件,其中,当前的前台操作系统为第一操作系统,所述至少一个后台操作系统包括第二操作系统,所述方法包括:获取操作系统切换指令,所述操作系统切换指令包含所述第二操作系统的标识和切换标识,所述第二操作系统的标识用于指示将所述第二操作系统切换为前台操作系统;根据所述切换标识,释放所述第一操作系统所占用的硬件资源,所述硬件资源为所述移动终端中用于与外部交互的硬件资源;将所述第一操作系统的资源管理命名空间中的运行状态信息修改到后台状态,将所述第二操作系统的资源管理命名空间中的运行状态信息修改到前台状态,完成所述前台操作系统从所述第一操作系统到所述第二操作系统的切换。与现有技术中经常会出现多个操作系统同时对同一硬件资源进行使用的情况,导致硬件资源使用异常相比,本发明实施例提供的操作系统热切换的方法,可以在操作系统热切换时,先释放掉当前的前台操作系统所占用的硬件资源,并通过资源管理命名空间中的运行状态信息指示硬件资源屏蔽后台操作系统对硬件资源的访问,一定程度上保证多个操作系统对硬件资源的互斥访问和协调使用,从而保证了操作系统切换后硬件资源使用的可靠性。

【专利附图】

【附图说明】
[0063]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0064]图1是本发明实施例中终端的操作系统和硬件资源一架构示意图;
[0065]图2是本发明实施例中终端的操作系统和硬件资源另一架构示意图;
[0066]图3是本发明实施例中终端的操作系统和硬件资源另一架构示意图;
[0067]图4是本发明实施例中操作系统热切换的方法的一实施例示意图;
[0068]图5是本发明实施例中操作系统热切换的方法的另一实施例示意图;
[0069]图6是本发明实施例中操作系统热切换的方法的另一实施例示意图;
[0070]图7是本发明实施例中热插拔设备管理的方法的一实施例示意图;
[0071]图8是本发明实施例中操作系统热切换的装置的一实施例示意图;
[0072]图9是本发明实施例中操作系统热切换的装置的另一实施例示意图;
[0073]图10是本发明实施例中操作系统热切换的装置的另一实施例示意图;
[0074]图11是本发明实施例中操作系统热切换的装置的另一实施例示意图;
[0075]图12是本发明实施例中操作系统热切换的装置的另一实施例示意图;
[0076]图13是本发明实施例中热插拔设备管理的装置的一实施例示意图;
[0077]图14是本发明实施例中移动终端的一实施例示意图;
[0078]图15是本发明实施例中移动终端的另一实施例示意图。

【具体实施方式】
[0079]本发明实施例提一种操作系统热切换的方法,能一定程度上保证多个操作系统对硬件资源的互斥访问和协调使用,从而保证了操作系统切换后硬件资源使用的可靠性。本发明实施例还提供了相应的装置及移动终端。以下分别进行详细说明。
[0080]为了使本【技术领域】的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
[0081]参阅图1,为本发明实施例提供的移动终端的操作系统和硬件资源架构的原理示意图,其中:
[0082]移动终端同时可以运行多个操作系统,如:操作系统1、操作系统2,直至操作系统n,n为大于2的整数,移动终端中包含的多个操作系统是分时复用的,在一个时间段内只能有一个操作系统在前台运行,其他操作系统都在后台运行。如图1中,操作系统I为前台操作系统,操作系统2,直至操作系统η都为后台操作系统。
[0083]本发明实施例中的前台操作系统为运行在前台的操作系统,可以与用户交互的操作系统,后台操作系统为运行在后台的操作系统,不能与用户进行交互。
[0084]移动终端的硬件资源包括移动终端的内部硬件资源,以及与移动终端通过热插拔接口建立连接的热插拔硬件资源,本发明实施例中的硬件资源为所述移动终端中用于与外部交互的硬件资源,内部硬件资源可以包括移动终端wifi模块、蓝牙模块、近距离无线通信(NFC,Near Field Communicat1n)模块、音频模块、视频模块、显示屏、摄像头等可与外部交互的硬件资源,热插拔硬件资源可以包括通过通用串行总线(Universal SerialBus,USB)接口连接的USB设备、安全数码(Secure Digital,SD)卡,通过在线直传(OTG,On-The-Go)接口连接的OTG设备等都属于热插拔硬件资源。
[0085]参阅图2,为本发明实施例提供的移动终端的操作系统和硬件资源架构的另一原理示意图,其中:
[0086]针对每个操作系统对应的硬件资源,在软件层面会维护一个针对该操作系统的内部资源管理服务,如针对操作系统I至操作系统η都对应有wif1、NFC、蓝牙等资源管理服务程序,在操作系统I为当前的前台操作系统时,与该操作系统I对应的内部资源管理服务启动,在操作系统2至操作系统η都只在后台运行时,与操作系统2至操作系统η对应的内部资源管理服务阻塞,同时,针对每个内部资源管理服务都有其对应的资源管理线程组,如:操作系统I为当前的前台操作系统时,则与操作系统I对应的内部资源管理服务和资源管理线程都处于启动状态,其他操作系统都只在后台运行,则与其他操作系统对应的内部资源管理服务和资源管理线程都处于阻塞状态。
[0087]在内核中会维护每个操作系统各自对应的资源管理命名空间,在每个资源管理命名空间包括与其对应的操作系统的运行状态信息,所述运行状态信息用于指示所述操作系统为前台操作系统或后台操作系统,并用于指示所述移动终端中的硬件开放对前台操作系统的使用或屏蔽对后台操作系统的使用,例如:图2中操作系统I的资源管理命名空间中操作系统I的状态:前台,则表示该操作系统I为前台操作系统,内部硬件资源使用状态:可用,则表示操作系统I可以使用内部硬件资源。图2中操作系统2的资源管理命名空间中操作系统2的状态:后台,则表示该操作系统2为后台操作系统,内部硬件资源使用状态:禁用,则表示操作系统2不可以使用内部硬件资源。
[0088]这样,各资源管理线程读取到资源管理命名空间I中的操作系统I的状态为前台后,与操作系统I对应的资源管理线程就会启动,与其他操作系统对应的资源管理线程都会阻塞,与操作系统I对应的内部资源管理服务也会启动,与其他操作系统对应的内部资源管理服务都会阻塞。
[0089]在操作系统I为前台操作系统时,资源管理线程会允许操作系统I调用内部硬件资源,其他操作系统运行在后台,资源管理线程会阻塞其他操作系统对内部硬件资源的调用。则实现了多个操作系统对硬件资源的互斥使用。
[0090]在操作系统热切换时,可以参阅图3理解本发明实施例的操作系统热切换过程:
[0091]本发明实施例以基于Linux内核的Android手机上运用的实施方案为例进行说明,android手机操作系统是一个基于Linux Kernel的分层智能手机操作系统,其分为5层,从上到下分别是应用层(Java Applicat1n)、框架层(Frameworks)、系统运行库层(User Libraries)、内核层(Linux Kernel)和硬件层。
[0092]在本发明实施例中,在应用层设置了操作系统切换接口(SystemSwitch),为操作系统切换的入口,以安卓安装包(AndroidPackage,APK)的形式存在于移动终端的桌面上,点击APK后可以为用户提供操作系统切换的界面。
[0093]在框架层,针对内部资源服务设置内部资源管理线程(Resource managementthread),操作系统启动时跟随各个内部资源管理器而启动,一方面通过内核记录资源管理命名空间的前台操作系统的标识来获取当前的前台操作系统,使当前的前台操作系统能够正常使用内部硬件资源,后台操作系统无法使用内部硬件资源,另一方面监控操作系统切换APK发送的切换事件,当当前的前台操作系统收到切换事件时,首先释放本操作系统占用的内部硬件资源并通知内核,内核确保所有内部硬件资源释放完成后再进行操作系统切换。
[0094]在框架层,针对热插拔硬件资源,设置外部资源管理服务,对服务进行修改,当有热插拔设备插入移动终端时,对kernel发送的热插拔设备插入Uevent消息进行截取,接收到热插拔设备插入消息时读取当前的前台操作系统,当前的前台操作系统绑定插入的热插拔设备,后台的操作系统进行屏蔽,对内核发送的热插拔设备拔出Uevent消息进行截取,对未绑定该热插拔设备的操作系统进行屏蔽。
[0095]在内核层建立多操作系统需要使用的节点,并对外提供相应的节点接口,如用于获取当前的前台操作系统的接口、用于判断当前是否正在切换操作系统的接口等。
[0096]本发明运用在基于Linux内核的Android手机上多个操作系统切换时,对内部硬件资源管理的过程可以参阅图4进行理解:
[0097]步骤1:移动终端开机后,会自动启动一个前台操作系统,例如:操作系统1,操作系统I启动之后,与操作系统I对应的各个资源管理线程读取操作系统I的资源管理空间的操作系统状态信息和内部硬件资源使用细腻系,开放操作系统I对于内部硬件资源的调用,资源管理线程调用kernel的开始切换节点,此时没有切换事件输入,开始切换节点为阻塞节点。
[0098]步骤2:用户通过桌面上的System Switch,选择将操作系统2切换到前台,这个动作会调用内核提供的切换接口,通知内核操作系统切换事件发生。
[0099]步骤3:内核接收到上层APK发下来的切换事件,将所有资源管理线程的开始切换节点释放。
[0100]步骤4:内核通知完各个线程操作系统切换开始后,进入等待状态,等待各个资源管理线程反馈资源释放情况。
[0101]步骤5:资源管理线程阻塞解除,开始工作,开始释放当前占用的内部硬件资源。
[0102]步骤6:硬件资源释放完成后,调用内核提供的接口,如NFC资源释放完成接口,通知内核当前线程监控的资源已经释放完毕。
[0103]步骤7:当资源管理线程向内核反馈资源已释放完成之后再次进入阻塞状态,等待内核通知系统切换完成。
[0104]步骤8:当内核检测到所有资源管理线程全部反馈其所监控的内部硬件资源释放完毕之后,解除当前等待状态,通知各个管理线程操作系统切换完成。
[0105]步骤9:资源管理线程阻塞解除,开始工作,开放切换到前台的操作系统2对于内部资源的调用,并重新进入阻塞状态,等待下一次切换的到来。
[0106]在操作系统I到操作系统2的切换过程中,将操作系统I的资源管理命名空间中的操作系统I状态修改为后台,将操作系统I的内部硬件资源使用状态修改为禁用。将操作系统2的资源管理命名空间中的操作系统2状态修改为前台,将操作系统2的内部硬件资源使用状态修改为可用。
[0107]本发明以运行在基于Linux内核的Android手机上多个操作系统对内部硬件资源管理的过程为例进行说明,可以参阅图5进行理解:
[0108]热插拔设备的插入流程如下:
[0109]步骤1:用户将热插拔设备A插入手机。
[0110]步骤2:内核检测到热插拔设备A已插入,发送Uevent消息给各个操作系统的热插拔设备A管理器(图3中框架层的外部资源管理服务)。
[0111]步骤3:热插拔设备A管理器接收到内核发送的热插拔设备A插入的Uevent消息之后,判断当前热插拔设备A管理器所在的操作系统前台操作系统还是后台操作系统:如果是后台操作系统,则直接返回,屏蔽这个Uevent消息;如果是后台操作系统,则进入步骤4。
[0112]步骤4:前台操作系统接收到热插拔设备A的插入消息后,添加当前热插拔设备A的在位状态,然后允许外设A的管理器继续处理这条Uevent消息,之后热插拔设备A与当前处于激活状态的操作系统绑定了,可以被当前系统正常使用,即使发生了系统切换也不会与绑定的系统解除绑定。
[0113]热插拔设备的拔出流程如下:
[0114]步骤5:用户将热插拔设备A拔出手机。
[0115]步骤6:内核检测到热插拔设备A已拔出,发送Uevent消息给各个操作系统的热插拔设备A的管理器。
[0116]步骤7:热插拔设备A的管理器接收到内核发送的热插拔设备A拔出Uevent消息之后,判断当前管理器所在的操作系统的热插拔设备A是否在位:如果不在位,则直接返回,屏蔽这个Uevent消息;如果在位,则进入步骤8。
[0117]步骤8:热插拔设备A在位的操作系统接收到热插拔设备A的拔出消息后,将热插拔设备A的在位标记清除,然后允许热插拔设备A的管理器继续处理这条Uevent消息,之后热插拔设备A的管理器与原来绑定的系统解除绑定了,重新插入后就可以与当前的前台操作系统绑定了,并供当前的前台操作系统正常使用。
[0118]本发明实施例中,在位标记可以维护在各个操作系统的资源管理空间中。与现有技术中经常会出现多个操作系统同时对同一硬件资源进行使用的情况,导致硬件资源使用异常相比,本发明实施例提供的操作系统热切换的方法,可以在操作系统热切换时,先释放掉当前的前台操作系统所占用的硬件资源,并通过资源管理命名空间中的运行状态信息指示硬件资源屏蔽后台操作系统对硬件资源的访问,一定程度上保证多个操作系统对硬件资源的互斥访问和协调使用,从而保证了操作系统切换后硬件资源使用的可靠性。
[0119]本发明实施例提供的操作系统热切换的方法,移动终端运行的多套系统热切换时,能确保切换前的前台操作系统所占用的内部硬件资源释放完成,在切换到前台操作系统后可以保证内部硬件资源被切换后的操作系统的正常使用,防止出现概率性个别资源由于抢占使用导致功能异常。
[0120]参阅图6,本发明实施例提供的一种操作系统热切换的方法,所述方法应用于运行有多个操作系统的移动终端,所述多个操作系统包括一个前台操作系统,以及至少一个后台操作系统,每个操作系统各自对应一个资源管理命名空间,每个资源管理命名空间包括与其对应的操作系统的运行状态信息,所述运行状态信息用于指示所述操作系统为前台操作系统或后台操作系统,并用于指示所述移动终端中的硬件开放对前台操作系统的使用或屏蔽对后台操作系统的使用,所述硬件为所述用于与外部交互的硬件,其中,当前的前台操作系统为第一操作系统,所述至少一个后台操作系统包括第二操作系统,所述方法包括:
[0121]101、获取操作系统切换指令,所述操作系统切换指令包含所述第二操作系统的标识和切换标识,所述第二操作系统的标识用于指示将所述第二操作系统切换为前台操作系统。
[0122]102、根据所述切换标识,释放所述第一操作系统所占用的硬件资源,所述硬件资源为所述移动终端中用于与外部交互的硬件资源。
[0123]103、将所述第一操作系统的资源管理命名空间中的运行状态信息修改到后台状态,将所述第二操作系统的资源管理命名空间中的运行状态信息修改到前台状态,完成所述前台操作系统从所述第一操作系统到所述第二操作系统的切换。
[0124]本发明实施例提供的操作系统热切换的方法,应用于运行有多个操作系统的移动终端,所述多个操作系统包括一个前台操作系统,以及至少一个后台操作系统,每个操作系统各自对应一个资源管理命名空间,每个资源管理命名空间包括与其对应的操作系统的运行状态信息,所述运行状态信息用于指示所述操作系统为前台操作系统或后台操作系统,并用于指示所述移动终端中的硬件开放对前台操作系统的使用或屏蔽对后台操作系统的使用,所述硬件为所述用于与外部交互的硬件,其中,当前的前台操作系统为第一操作系统,所述至少一个后台操作系统包括第二操作系统,所述方法包括:获取操作系统切换指令,所述操作系统切换指令包含所述第二操作系统的标识和切换标识,所述第二操作系统的标识用于指示将所述第二操作系统切换为前台操作系统;根据所述切换标识,释放所述第一操作系统所占用的硬件资源,所述硬件资源为所述移动终端中用于与外部交互的硬件资源;将所述第一操作系统的资源管理命名空间中的运行状态信息修改到后台状态,将所述第二操作系统的资源管理命名空间中的运行状态信息修改到前台状态,完成所述前台操作系统从所述第一操作系统到所述第二操作系统的切换。与现有技术中经常会出现多个操作系统同时对同一硬件资源进行使用的情况,导致硬件资源使用异常相比,本发明实施例提供的操作系统热切换的方法,可以在操作系统热切换时,先释放掉当前的前台操作系统所占用的硬件资源,并通过资源管理命名空间中的运行状态信息指示硬件资源屏蔽后台操作系统对硬件资源的访问,一定程度上保证多个操作系统对硬件资源的互斥访问和协调使用,从而保证了操作系统切换后硬件资源使用的可靠性。
[0125]可选地,在上述图6对应的实施例的基础上,本发明实施例提供的操作系统热切换的方法的第一个可选实施例中,所述根据所述切换标识,释放所述第一操作系统所占用的硬件资源,所述硬件资源为所述移动终端中用于与外部交互的硬件资源之后,所述方法还可以包括:
[0126]根据所述第二操作系统的标识,从资源全局链表中确定所述第二操作系统的资源管理命名空间,所述资源全局链表包括操作系统的标识与操作系统的资源管理命名空间的对应关系。
[0127]本发明实施例中,通过资源全局链表维护与每个操作系统对应的各资源管理命名空间,可以加快操作系统热切换的速度。
[0128]可选地,在上述图6对应的实施例或第一个可选实施例的基础上,本发明实施例提供的操作系统热切换的方法的第二个可选实施例中,所述根据所述切换标识,释放所述第一操作系统所占用的硬件资源,可以包括:
[0129]根据所述切换标识,解除处于阻塞状态的开始切换标识的阻塞状态,得到解除阻塞的开始切换标识,所述解除阻塞的开始切换标识用于指示资源管理线程通知所述移动终端中与外部交互的硬件释放所述第一操作系统所占用的硬件资源,所述处于阻塞状态的开始切换标识用于指示禁止执行操作系统切换。
[0130]本发明实施例中,由解除阻塞的开始切换标识来指示释放硬件资源,提高了硬件资源释放的效率。
[0131]可选地,在上述操作系统热切换的第二个可选实施例的基础上,本发明实施例提供的操作系统热切换的方法的第三个可选实施例中,所述完成所述前台操作系统从所述第一操作系统到所述第二操作系统的切换之后,所述方法还可以包括:
[0132]将所述硬件资源分配给所述第二操作系统使用;
[0133]在将所述硬件资源分配给所述第二操作系统使用后,将所述解除阻塞的开始切换标识恢复到阻塞状态。
[0134]本发明实施例中,在操作系统切换完毕后,及时将解除阻塞的开始切换标识恢复到阻塞状态,从而进一步提高了多个操作系统对硬件资源使用的互斥性。
[0135]可选地,在上述图6对应实施例、第一、第二或第三个可选实施例的基础上,本发明实施例提供的操作系统热切换的方法的第四个可选实施例中,所述完成所述前台操作系统从所述第一操作系统到所述第二操作系统的切换之后,所述方法还可以包括:
[0136]监测所述移动终端的热插拔接口 ;
[0137]当监测到第一热插拔设备从所述移动终端拔出,则从所述第一操作系统的资源管理命名空间中清除所述第一热插拔设备的在位标记,以解除所述第一热插拔设备与所述第一操作系统的绑定关系,所述第一热插拔设备的在位标记用于指示所述第一热插拔设备供所述第一操作系统使用。
[0138]本发明实施例中,在当前操作系统发生切换后,热插拔设备可及时解除与切换前的操作系统的绑定关系,保证了多个操作系统对热插拔设备使用的互斥性。
[0139]可选地,在上述图6对应实施例、第一、第二、第三或第四个可选实施例的基础上,本发明实施例提供的操作系统热切换的方法的第五个可选实施例中,所述方法还可以包括:
[0140]监测所述移动终端的热插拔接口 ;
[0141]当监测到第二热插拔设备插入所述移动终端,则在所述第二操作系统的资源管理命名空间中添加所述第二热插拔设备的在位标记,以建立所述第二热插拔设备与所述第二操作系统的绑定关系,所述第二热插拔设备的在位标记用于指示第二热插拔设备供所述第二操作系统使用。
[0142]本发明实施例中,当前操作系统切换后,热插拔设备可以与切换后的操作系统建立绑定关系,从而保证了多个操作系统对热插拔设备使用的互斥性。
[0143]本发明图6对应的实施例或可选实施例所提供的操作系统热切换的方法,可以参阅图1至图5部分的描述进行理解,本处不做过多赘述。
[0144]参阅图7,本发明实施例提供的热插拔设备管理的方法,应用于运行有多个操作系统的移动终端,所述移动终端提供热插拔接口,所述热插拔设备通过所述热插拔接口与所述移动终端实现热插拔,所述多个操作系统包括一个前台操作系统,以及至少一个后台操作系统,每个操作系统各自对应一个资源管理命名空间,每个资源管理命名空间包括与其对应的操作系统的运行状态信息,所述运行状态信息用于指示所述操作系统为前台操作系统或后台操作系统,并用于指示所述移动终端中的硬件开放对前台操作系统的使用或屏蔽对后台操作系统的使用,所述硬件为所述用于与外部交互的硬件,其中,当前的前台操作系统为第一操作系统,所述至少一个后台操作系统包括第二操作系统,所述方法包括:
[0145]201、监测所述移动终端的热插拔接口。
[0146]202、当监测到第一热插拔设备插入所述移动终端时,则在所述第一操作系统的资源管理命名空间中添加所述第一热插拔设备的在位标记,以建立所述第一热拔插设备与所述第一操作系统的绑定关系,所述第一热插拔设备的在位标记用于指示所述第一热插拔设备供所述第一操作系统使用。
[0147]203、当监测到第二热插拔设备从所述移动终端拔出,则从所述第一操作系统的资源管理命名空间中清除所述第二热插拔设备的在位标记,以解除所述第二热插拔设备与所述第一操作系统的绑定关系,所述第二热插拔设备的在位标记用于指示所述第二热插拔设备供所述第一操作系统使用。
[0148]本发明实施例提供的热插拔设备管理的方法,应用于运行有多个操作系统的移动终端,所述移动终端提供热插拔接口,所述热插拔设备通过所述热插拔接口与所述移动终端实现热插拔,所述多个操作系统包括一个前台操作系统,以及至少一个后台操作系统,每个操作系统各自对应一个资源管理命名空间,每个资源管理命名空间包括与其对应的操作系统的运行状态信息,所述运行状态信息用于指示所述操作系统为前台操作系统或后台操作系统,并用于指示所述移动终端中的硬件开放对前台操作系统的使用或屏蔽对后台操作系统的使用,所述硬件为所述用于与外部交互的硬件,其中,当前的前台操作系统为第一操作系统,所述至少一个后台操作系统包括第二操作系统,所述方法包括:监测所述移动终端的热插拔接口 ;当监测到第一热插拔设备插入所述移动终端时,则在所述第一操作系统的资源管理命名空间中添加所述第一热插拔设备的在位标记,以建立所述第一热拔插设备与所述第一操作系统的绑定关系,所述第一热插拔设备的在位标记用于指示所述第一热插拔设备供所述第一操作系统使用;当监测到第二热插拔设备从所述移动终端拔出,则从所述第一操作系统的资源管理命名空间中清除所述第二热插拔设备的在位标记,以解除所述第二热插拔设备与所述第一操作系统的绑定关系,所述第二热插拔设备的在位标记用于指示所述第二热插拔设备供所述第一操作系统使用。与现有技术中多个操作系统对热插拔设备的使用会发生冲突相比,本发明实施例提供的热插拔设备管理的方法,可以将热拔插设备与当前操作系统进行绑定或者解除绑定,从而避免了多个操作系统对热插拔设备使用的冲突,保证了多个操作系统对热插拔设备使用的互斥性。
[0149]可选地,在上述图7对应的实施例的基础上,本发明实施例提供的热插拔设备管理的方法的另一实施例中,当所述前台操作系统从所述第一操作系统到所述第二操作系统,所述方法还可以包括:
[0150]当监测到所述第一热插拔设备从所述移动终端拔出,则在所述第一操作系统的资源管理命名空间中清除所述第一热插拔设备的在位标记,以解除所述第一热拔插设备与所述第一操作系统的绑定关系,所述第一热插拔设备的在位标记用于指示所述第一热插拔设备供所述第一操作系统使用;
[0151]当监测到所述第二热插拔设备插入所述移动终端,则在所述第二操作系统的资源管理命名空间中添加所述第二热插拔设备的在位标记,以建立所述第二热插拔设备与所述第二操作系统的绑定关系,所述第二热插拔设备的在位标记用于指示所述第二热插拔设备供所述第二操作系统使用。
[0152]本发明实施例中,在当前操作系统发生热切换后,热插拔设备可以与切换后的操作系统建立绑定关系,从而保证了多个操作系统对热插拔设备使用的互斥性。
[0153]参阅图8,本发明实施例提供的操作系统热切换的装置30,所述装置30应用于运行有多个操作系统的移动终端,所述多个操作系统包括一个前台操作系统,以及至少一个后台操作系统,每个操作系统各自对应一个资源管理命名空间,每个资源管理命名空间包括与其对应的操作系统的运行状态信息,所述运行状态信息用于指示所述操作系统为前台操作系统或后台操作系统,并用于指示所述移动终端中的硬件开放对前台操作系统的使用或屏蔽对后台操作系统的使用,所述硬件为所述用于与外部交互的硬件,其中,当前的前台操作系统为第一操作系统,所述至少一个后台操作系统包括第二操作系统,所述装置30包括:
[0154]获取单元301,用于获取操作系统切换指令,所述操作系统切换指令包含所述第二操作系统的标识和切换标识,所述第二操作系统的标识用于指示将所述第二操作系统切换为前台操作系统;
[0155]释放单元302,用于根据所述获取单元301获取的切换标识,释放所述第一操作系统所占用的硬件资源,所述硬件资源为所述移动终端中用于与外部交互的硬件资源;
[0156]切换单元303,用于在所述释放单元302释放所述硬件资源后,将所述第一操作系统的资源管理命名空间中的运行状态信息修改到后台状态,将所述第二操作系统的资源管理命名空间中的运行状态信息修改到前台状态,完成所述前台操作系统从所述第一操作系统到所述第二操作系统的切换。
[0157]本发明实施例提供的操作系统热切换的装置30,所述装置30应用于运行有多个操作系统的移动终端,所述多个操作系统包括一个前台操作系统,以及至少一个后台操作系统,每个操作系统各自对应一个资源管理命名空间,每个资源管理命名空间包括与其对应的操作系统的运行状态信息,所述运行状态信息用于指示所述操作系统为前台操作系统或后台操作系统,并用于指示所述移动终端中的硬件开放对前台操作系统的使用或屏蔽对后台操作系统的使用,所述硬件为所述用于与外部交互的硬件,其中,当前的前台操作系统为第一操作系统,所述至少一个后台操作系统包括第二操作系统,所述装置30包括:获取单元301获取操作系统切换指令,所述操作系统切换指令包含所述第二操作系统的标识和切换标识,所述第二操作系统的标识用于指示将所述第二操作系统切换为前台操作系统;释放单元302根据所述获取单元301获取的切换标识,释放所述第一操作系统所占用的硬件资源,所述硬件资源为所述移动终端中用于与外部交互的硬件资源;切换单元303在所述释放单元302释放所述硬件资源后,将所述第一操作系统的资源管理命名空间中的运行状态信息修改到后台状态,将所述第二操作系统的资源管理命名空间中的运行状态信息修改到前台状态,完成所述前台操作系统从所述第一操作系统到所述第二操作系统的切换。与现有技术中经常会出现多个操作系统同时对同一硬件资源进行使用的情况,导致硬件资源使用异常相比,本发明实施例提供的操作系统热切换的装置,可以在操作系统热切换时,先释放掉当前的前台操作系统所占用的硬件资源,并通过资源管理命名空间中的运行状态信息指示硬件资源屏蔽后台操作系统对硬件资源的访问,一定程度上保证多个操作系统对硬件资源的互斥访问和协调使用,从而保证了操作系统切换后硬件资源使用的可靠性。
[0158]可选地,在上述图8对应的实施例的基础上,参阅图9,本发明实施例提供的操作系统热切换的装置30的第一个可选实施例中,所述装置30还包括:
[0159]确定单元304,用于根据所述获取单元301获取的所述第二操作系统的标识,从资源全局链表中确定所述第二操作系统的资源管理命名空间,所述资源全局链表包括操作系统的标识与操作系统的资源管理命名空间的对应关系。
[0160]本发明实施例中,通过资源全局链表维护与每个操作系统对应的各资源管理命名空间,可以加快操作系统热切换的速度。
[0161]可选地,在上述图8对应的实施例或图9对应的第一个可选实施例的基础上,本发明实施例提供的操作系统热切换的装置30的第二个可选实施例中,
[0162]所述释放单元302,具体用于根据所述切换标识,解除处于阻塞状态的开始切换标识的阻塞状态,得到解除阻塞的开始切换标识,所述解除阻塞的开始切换标识用于指示资源管理线程通知所述移动终端中的硬件释放所述第一操作系统所占用的硬件资源,所述处于阻塞状态的开始切换标识用于指示禁止执行操作系统切换。
[0163]本发明实施例中,由解除阻塞的开始切换标识来指示释放硬件资源,提高了硬件资源释放的效率。
[0164]可选地,在上述热切换的装置30的第二个可选实施例的基础上,参阅图10,本发明实施例提供的操作系统热切换的装置30的第三个可选实施例中,所述装置30还包括:
[0165]分配单元305,用于在所述切换单元303完成所述前台操作系统从所述第一操作系统到所述第二操作系统的切换之后,将所述硬件资源分配给所述第二操作系统使用;
[0166]修改单元306,用于在所述分配单元305将所述硬件资源分配给所述第二操作系统使用后,将所述解除阻塞的开始切换标识恢复到阻塞状态。
[0167]本发明实施例中,在操作系统切换完毕后,及时将解除阻塞的开始切换标识恢复到阻塞状态,从而进一步提高了多个操作系统对硬件资源使用的互斥性。
[0168]可选地,在上述图8对应的热切换的装置30的实施例以及装置30的第一个、第二个或第三个可选实施例的基础上,参阅图11,本发明实施例提供的操作系统热切换的装置30的第四个可选实施例中,所述装置30还包括:
[0169]第一监测单元307,用于在所述切换单元303完成所述前台操作系统从所述第一操作系统到所述第二操作系统的切换之后,监测所述移动终端的热插拔接口 ;
[0170]清除单元308,用于当所述第一监测单元307监测到所述第一热插拔设备从所述移动终端拔出,则从所述第一操作系统的资源管理命名空间中清除所述第一热插拔设备的在位标记,以解除所述第一热插拔设备与所述第一操作系统的绑定关系,所述第一热插拔设备的在位标记用于指示所述第一热插拔设备供所述第一操作系统使用。
[0171]本发明实施例中,在当前操作系统发生切换后,热插拔设备可及时解除与切换前的操作系统的绑定关系,保证了多个操作系统对热插拔设备使用的互斥性。
[0172]可选地,在上述图8对应的热切换的装置30的实施例以及装置30的第一个、第二个、第三个或第四个可选实施例的基础上,参阅图12,本发明实施例提供的操作系统热切换的装置30的第五个可选实施例中,所述装置30还包括:
[0173]第二监测单元309,用于监测所述移动终端的热插拔接口 ;
[0174]添加单元311,用于当所述第二监测单元309监测到第二热插拔设备插入所述移动终端,则在所述第二操作系统的资源管理命名空间中添加所述第二热插拔设备的在位标记,以建立所述第二热插拔设备与所述第二操作系统的绑定关系,所述第二热插拔设备的在位标记用于指示第二热插拔设备供所述第二操作系统使用。
[0175]本发明实施例中,当前操作系统切换后,热插拔设备可以与切换后的操作系统建立绑定关系,从而保证了多个操作系统对热插拔设备使用的互斥性。
[0176]本发明实施例提供的操作系统热切换的装置30可以参阅图1至图6部分的描述进行理解,本处不做过多赘述。
[0177]参阅图13,本发明实施例提供的一种热插拔设备管理的装置40,应用于运行有多个操作系统的移动终端,所述移动终端提供热插拔接口,所述热插拔设备通过所述热插拔接口与所述移动终端实现热插拔,所述多个操作系统包括一个前台操作系统,以及至少一个后台操作系统,每个操作系统各自对应一个资源管理命名空间,每个资源管理命名空间包括与其对应的操作系统的运行状态信息,所述运行状态信息用于指示所述操作系统为前台操作系统或后台操作系统,并用于指示所述移动终端中的硬件开放对前台操作系统的使用或屏蔽对后台操作系统的使用,所述硬件为所述用于与外部交互的硬件,其中,当前的前台操作系统为第一操作系统,所述至少一个后台操作系统包括第二操作系统,所述装置40包括:
[0178]监测单元401,用于监测所述移动终端的热插拔接口 ;
[0179]添加单元402,用于当所述监测单元401监测到第一热插拔设备插入所述移动终端时,则在所述第一操作系统的资源管理命名空间中添加所述第一热插拔设备的在位标记,以建立所述第一热拔插设备与所述第一操作系统的绑定关系,所述第一热插拔设备的在位标记用于指示所述第一热插拔设备供所述第一操作系统使用;
[0180]清除单元403,用于当所述监测单元401监测到第二热插拔设备从所述移动终端拔出,则从所述第一操作系统的资源管理命名空间中清除所述第二热插拔设备的在位标记,以解除所述第二热插拔设备与所述第一操作系统的绑定关系,所述第二热插拔设备的在位标记用于指示所述第二热插拔设备供所述第一操作系统使用。
[0181]本发明实施例提供的一种热插拔设备管理的装置40,应用于运行有多个操作系统的移动终端,所述移动终端提供热插拔接口,所述热插拔设备通过所述热插拔接口与所述移动终端实现热插拔,所述多个操作系统包括一个前台操作系统,以及至少一个后台操作系统,每个操作系统各自对应一个资源管理命名空间,每个资源管理命名空间包括与其对应的操作系统的运行状态信息,所述运行状态信息用于指示所述操作系统为前台操作系统或后台操作系统,并用于指示所述移动终端中的硬件开放对前台操作系统的使用或屏蔽对后台操作系统的使用,所述硬件为所述用于与外部交互的硬件,其中,当前的前台操作系统为第一操作系统,所述至少一个后台操作系统包括第二操作系统,所述装置40包括:监测单元401,用于监测所述移动终端的热插拔接口 ;添加单元402,用于当所述监测单元401监测到第一热插拔设备插入所述移动终端时,则在所述第一操作系统的资源管理命名空间中添加所述第一热插拔设备的在位标记,以建立所述第一热拔插设备与所述第一操作系统的绑定关系,所述第一热插拔设备的在位标记用于指示所述第一热插拔设备供所述第一操作系统使用;清除单元403,用于当所述监测单元401监测到第二热插拔设备从所述移动终端拔出,则从所述第一操作系统的资源管理命名空间中清除所述第二热插拔设备的在位标记,以解除所述第二热插拔设备与所述第一操作系统的绑定关系,所述第二热插拔设备的在位标记用于指示所述第二热插拔设备供所述第一操作系统使用。与现有技术中多个操作系统对热插拔设备的使用会发生冲突相比,本发明实施例提供的热插拔设备管理的装置,可以将热拔插设备与当前操作系统进行绑定或者解除绑定,从而避免了多个操作系统对热插拔设备使用的冲突,保证了多个操作系统对热插拔设备使用的互斥性。
[0182]可选地,在上述图13对应的实施例的基础上,本发明实施例提供的热插拔设备管理的装置40的另一实施例中,
[0183]所述清除单元403,还用于所述前台操作系统从所述第一操作系统到所述第二操作系统后,当所述监测单元监测到所述第一热插拔设备从所述移动终端拔出,则在所述第一操作系统的资源管理命名空间中清除所述第一热插拔设备的在位标记,以解除所述第一热拔插设备与所述第一操作系统的绑定关系,所述第一热插拔设备的在位标记用于指示所述第一热插拔设备供所述第一操作系统使用;
[0184]所述添加单元402,还用于当所述面向用户的操作系统从第一操作系统切换到所述第二操作系统后,当所述监测单元监测到所述第二热插拔设备插入所述移动终端,则在所述第二操作系统的资源管理命名空间中添加所述第二热插拔设备的在位标记,以建立所述第二热插拔设备与所述第二操作系统的绑定关系,所述第二热插拔设备的在位标记用于指示所述第二热插拔设备供所述第二操作系统使用。
[0185]本发明实施例中,在当前操作系统发生热切换后,热插拔设备可以与切换后的操作系统建立绑定关系,从而保证了多个操作系统对热插拔设备使用的互斥性。
[0186]本发明实施例提供的热插拔设备管理的装置40可以参阅图5、图7部分的描述进行理解,本处不做过多赘述。
[0187]图14描述了本发明实施例提供的一种移动终端600的结构,该移动终端600包括:至少一个处理器601,至少一个网络接口 604或者其他用户接口 603,存储器605,至少一个通信总线602。通信总线602用于实现这些组件之间的连接通信。该移动终端600可选的包含用户接口 603,包括显示器(例如,触摸屏、IXD、CRT、全息成像(Holographic)或者投影(Projector)等),键盘或者点击设备(例如,鼠标,轨迹球(trackball),触感板或者触摸屏等)。
[0188]存储器605可以包括只读存储器和随机存取存储器,并向处理器601提供指令和数据。存储器605的一部分还可以包括非易失性随机存取存储器(NVRAM)。
[0189]在一些实施方式中,存储器605存储了如下的元素,可执行模块或者数据结构,或者他们的子集,或者他们的扩展集:
[0190]操作系统6051,包含各种系统程序,例如图3所示的框架层、系统运行库层、内核层等,用于实现各种基础业务以及处理基于硬件的任务;
[0191]应用程序模块6052,包含各种应用程序,例如图3所示的电话、信息、数据连接、操作系统切换接口等,用于实现各种应用业务。
[0192]在本发明实施例中,通过调用存储器605存储的程序或指令,处理器601同时运行有多个操作系统,所述多个操作系统包括一个前台操作系统,以及至少一个后台操作系统,每个操作系统各自对应一个资源管理命名空间,每个资源管理命名空间包括与其对应的操作系统的运行状态信息,所述运行状态信息用于指示所述操作系统为前台操作系统或后台操作系统,并用于指示所述移动终端中的硬件开放对前台操作系统的使用或屏蔽对后台操作系统的使用,所述硬件为所述用于与外部交互的硬件,其中,当前的前台操作系统为第一操作系统,所述至少一个后台操作系统包括第二操作系统,
[0193]以及,所述处理器601,被配置成:
[0194]获取操作系统切换指令,所述操作系统切换指令包含所述第二操作系统的标识和切换标识,所述第二操作系统的标识用于指示将所述第二操作系统切换为前台操作系统;
[0195]根据所述切换标识,释放所述第一操作系统所占用的所述硬件资源;
[0196]将所述第一操作系统的资源管理命名空间中的运行状态信息修改到后台状态,将所述第二操作系统的资源管理命名空间中的运行状态信息修改到前台状态,完成所述前台操作系统从所述第一操作系统到所述第二操作系统的切换。
[0197]与现有技术中经常会出现多个操作系统同时对同一硬件资源进行使用的情况,导致硬件资源使用异常相比,本发明实施例提供的操作系统热切换的方法,可以在操作系统热切换时,先释放掉当前的前台操作系统所占用的硬件资源,并通过资源管理命名空间中的运行状态信息指示硬件资源屏蔽后台操作系统对硬件资源的访问,一定程度上保证多个操作系统对硬件资源的互斥访问和协调使用,从而保证了操作系统切换后硬件资源使用的可靠性。
[0198]可选地,作为一个实施例,所述处理器601还用于根据所述第二操作系统的标识,从资源全局链表中确定所述第二操作系统的资源管理命名空间,所述资源全局链表包括操作系统的标识与操作系统的资源管理命名空间的对应关系。
[0199]本发明实施例中,通过资源全局链表维护与每个操作系统对应的各资源管理命名空间,可以加快操作系统热切换的速度。
[0200]可选地,作为一个实施例,所述处理器601具体用于根据所述切换标识,解除处于阻塞状态的开始切换标识的阻塞状态,得到解除阻塞的开始切换标识,所述解除阻塞的开始切换标识用于指示资源管理线程通知所述移动终端中的硬件释放所述第一操作系统所占用的硬件资源,所述处于阻塞状态的开始切换标识用于指示禁止执行操作系统切换。
[0201]本发明实施例中,由解除阻塞的开始切换标识来指示释放硬件资源,提高了硬件资源释放的效率。
[0202]可选地,作为一个实施例,所述处理器601还用于完成所述前台操作系统从所述第一操作系统到所述第二操作系统的切换之后,将所述硬件资源分配给所述第二操作系统使用;在将所述硬件资源分配给所述第二操作系统使用后,将所述解除阻塞的开始切换标识恢复到阻塞状态。
[0203]本发明实施例中,在操作系统切换完毕后,及时将解除阻塞的开始切换标识恢复到阻塞状态,从而进一步提高了多个操作系统对硬件资源使用的互斥性。
[0204]可选地,作为一个实施例,所述处理器601还用于完成所述前台操作系统从所述第一操作系统到所述第二操作系统的切换之后,监测所述移动终端的热插拔接口 ;当监测到第一热插拔设备从所述移动终端拔出,则从所述第一操作系统的资源管理命名空间中清除所述第一热插拔设备的在位标记,以解除所述第一热插拔设备与所述第一操作系统的绑定关系,所述第一热插拔设备的在位标记用于指示所述第一热插拔设备供所述第一操作系统使用。
[0205]本发明实施例中,在当前操作系统发生切换后,热插拔设备可及时解除与切换前的操作系统的绑定关系,保证了多个操作系统对热插拔设备使用的互斥性。
[0206]可选地,作为一个实施例,所述处理器601还用于完成所述前台操作系统从所述第一操作系统到所述第二操作系统的切换之后,监测所述移动终端的热插拔接口 ;当监测到第二热插拔设备插入所述移动终端,则在所述第二操作系统的资源管理命名空间中添加所述第二热插拔设备的在位标记,以建立所述第二热插拔设备与所述第二操作系统的绑定关系,所述第二热插拔设备的在位标记用于指示第二热插拔设备供所述第二操作系统使用。
[0207]本发明实施例中,当前操作系统切换后,热插拔设备可以与切换后的操作系统建立绑定关系,从而保证了多个操作系统对热插拔设备使用的互斥性。
[0208]另外,移动终端600还可执行图1至图6的方法及实施例,本发明实施例在此不再赘述。
[0209]本发明实施例提供的移动终端,可以在操作系统热切换时,先释放掉当前的前台操作系统所占用的硬件资源,并通过资源管理命名空间中的运行状态信息指示硬件资源屏蔽后台操作系统对硬件资源的访问,一定程度上保证多个操作系统对硬件资源的互斥访问和协调使用,从而保证了操作系统切换后硬件资源使用的可靠性。
[0210]另外,本发明实施例提供的移动终端通过热插拔接口实现与热插拔设备的连接,所述处理器601同时运行有多个操作系统,所述多个操作系统包括一个前台操作系统,以及至少一个后台操作系统,每个操作系统各自对应一个资源管理命名空间,每个资源管理命名空间包括与其对应的操作系统的运行状态信息,所述运行状态信息用于指示所述操作系统为前台操作系统或后台操作系统,并用于指示所述移动终端中的硬件开放对前台操作系统的使用或屏蔽对后台操作系统的使用,所述硬件为所述用于与外部交互的硬件,其中,当前的前台操作系统为第一操作系统,所述至少一个后台操作系统包括第二操作系统,以及,所述处理器601,被配置成:
[0211]监测所述移动终端的热插拔接口 ;
[0212]当监测到第一热插拔设备插入所述移动终端时,则在所述第一操作系统的资源管理命名空间中添加所述第一热插拔设备的在位标记,以建立所述第一热拔插设备与所述第一操作系统的绑定关系,所述第一热插拔设备的在位标记用于指示所述第一热插拔设备供所述第一操作系统使用;
[0213]当监测到第二热插拔设备从所述移动终端拔出,则从所述第一操作系统的资源管理命名空间中清除所述第二热插拔设备的在位标记,以解除所述第二热插拔设备与所述第一操作系统的绑定关系,所述第二热插拔设备的在位标记用于指示所述第二热插拔设备供所述第一操作系统使用。
[0214]可选地,作为一个实施例,所述处理器601还用于:当所述前台操作系统从所述第一操作系统到所述第二操作系统;
[0215]当监测到所述第一热插拔设备从所述移动终端拔出,则在所述第一操作系统的资源管理命名空间中清除所述第一热插拔设备的在位标记,以解除所述第一热拔插设备与所述第一操作系统的绑定关系,所述第一热插拔设备的在位标记用于指示所述第一热插拔设备供所述第一操作系统使用;
[0216]当监测到所述第二热插拔设备插入所述移动终端,则在所述第二操作系统的资源管理命名空间中添加所述第二热插拔设备的在位标记,以建立所述第二热插拔设备与所述第二操作系统的绑定关系,所述第二热插拔设备的在位标记用于指示所述第二热插拔设备供所述第二操作系统使用。
[0217]本发明实施例提供的移动设备,可以将热拔插设备与当前操作系统进行绑定或者解除绑定,从而避免了多个操作系统对热插拔设备使用的冲突,保证了多个操作系统对热插拔设备使用的互斥性。
[0218]图15示出的是与本发明实施例提供的移动终端的部分结构的框图。参考图15,移动终端包括:射频(Rad1 Frequency,RF)电路710、存储器720、输入单元730、显示单元740、传感器750、音频电路760、无线保真(wireless fidelity,WiFi)模块770、处理器780、以及电源790等部件。本领域技术人员可以理解,图15中示出的移动终端结构并不构成对移动终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
[0219]下面结合图15对移动终端的各个构成部件进行具体的介绍:
[0220]RF电路710可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器780处理;另外,将设计上行的数据发送给基站。通常,RF电路710包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(Low NoiseAmplifier, LNA)、双工器等。此外,RF电路710还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(Global System of Mobile communicat1n,GSM)、通用分组无线服务(General PacketRad1 Service,GPRS)、码分多址(Code Divis1n Multiple Access,CDMA)、宽带码分多址(Wideband Code Divis1n Multiple Access, WCDMA)、长期演进(Long Term Evolut1n,LTE)、电子邮件、短消息服务(Short Messaging Service, SMS)等。
[0221 ] 存储器720可用于存储软件程序以及模块,处理器780通过运行存储在存储器720的软件程序以及模块,从而执行移动终端的各种功能应用以及数据处理。存储器720可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据移动终端的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器720可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
[0222]输入单元730可用于接收输入的数字或字符信息,以及产生与移动终端的用户设置以及功能控制有关的键信号输入。具体地,输入单元730可包括触控面板731以及其他输入设备732。触控面板731,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板731上或在触控面板731附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板731可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器780,并能接收处理器780发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板731。除了触控面板731,输入单元730还可以包括其他输入设备732。具体地,其他输入设备732可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
[0223]显示单元740可用于显示由用户输入的信息或提供给用户的信息以及移动终端的各种菜单。显示单元740可包括显示面板741,可选的,可以采用液晶显示器(LiquidCrystal Display,LCD)、有机发光二极管(Organic Light-Emitting D1de, OLED)等形式来配置显示面板741。进一步的,触控面板731可覆盖显示面板741,当触控面板731检测到在其上或附近的触摸操作后,传送给处理器780以确定触摸事件的类型,随后处理器780根据触摸事件的类型在显示面板741上提供相应的视觉输出。虽然在图15中,触控面板731与显示面板741是作为两个独立的部件来实现移动终端的输入和输入功能,但是在某些实施例中,可以将触控面板731与显示面板741集成而实现移动终端的输入和输出功能。
[0224]移动终端还可包括至少一种传感器750,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板741的亮度,接近传感器可在移动终端移动到耳边时,关闭显示面板741和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别移动终端姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于移动终端还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
[0225]音频电路760、扬声器761,传声器762可提供用户与移动终端之间的音频接口。音频电路760可将接收到的音频数据转换后的电信号,传输到扬声器761,由扬声器761转换为声音信号输出;另一方面,传声器762将收集的声音信号转换为电信号,由音频电路760接收后转换为音频数据,再将音频数据输出处理器780处理后,经RF电路710以发送给比如另一移动终端,或者将音频数据输出至存储器720以便进一步处理。
[0226]WiFi属于短距离无线传输技术,移动终端通过WiFi模块770可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图15示出了 WiFi模块770,但是可以理解的是,其并不属于移动终端的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
[0227]处理器780是移动终端的控制中心,利用各种接口和线路连接整个移动终端的各个部分,通过运行或执行存储在存储器720内的软件程序和/或模块,以及调用存储在存储器720内的数据,执行移动终端的各种功能和处理数据,从而对移动终端进行整体监控。可选的,处理器780可包括一个或多个处理单元;优选的,处理器780可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器780中。
[0228]移动终端还包括给各个部件供电的电源790(比如电池),优选的,电源可以通过电源管理系统与处理器780逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
[0229]尽管未示出,移动终端还可以包括摄像头、蓝牙模块等,在此不再赘述。
[0230]本发明实施例提供的处理器780同时运行有多个操作系统,所述多个操作系统包括一个前台操作系统,以及至少一个后台操作系统,每个操作系统各自对应一个资源管理命名空间,每个资源管理命名空间包括与其对应的操作系统的运行状态信息,所述运行状态信息用于指示所述操作系统为前台操作系统或后台操作系统,并用于指示所述移动终端中的硬件开放对前台操作系统的使用或屏蔽对后台操作系统的使用,所述硬件为所述用于与外部交互的硬件,其中,当前的前台操作系统为第一操作系统,所述至少一个后台操作系统包括第二操作系统,
[0231]以及,所述处理器780,被配置成:
[0232]获取操作系统切换指令,所述操作系统切换指令包含所述第二操作系统的标识和切换标识,所述第二操作系统的标识用于指示将所述第二操作系统切换为前台操作系统;
[0233]根据所述切换标识,释放所述第一操作系统所占用的所述硬件资源;
[0234]将所述第一操作系统的资源管理命名空间中的运行状态信息修改到后台状态,将所述第二操作系统的资源管理命名空间中的运行状态信息修改到前台状态,完成所述前台操作系统从所述第一操作系统到所述第二操作系统的切换。
[0235]与现有技术中经常会出现多个操作系统同时对同一硬件资源进行使用的情况,导致硬件资源使用异常相比,本发明实施例提供的操作系统热切换的方法,可以在操作系统热切换时,先释放掉当前的前台操作系统所占用的硬件资源,并通过资源管理命名空间中的运行状态信息指示硬件资源屏蔽后台操作系统对硬件资源的访问,一定程度上保证多个操作系统对硬件资源的互斥访问和协调使用,从而保证了操作系统切换后硬件资源使用的可靠性。
[0236]可选地,作为一个实施例,所述处理器780还用于根据所述第二操作系统的标识,从资源全局链表中确定所述第二操作系统的资源管理命名空间,所述资源全局链表包括操作系统的标识与操作系统的资源管理命名空间的对应关系。
[0237]本发明实施例中,通过资源全局链表维护与每个操作系统对应的各资源管理命名空间,可以加快操作系统热切换的速度。
[0238]可选地,作为一个实施例,所述处理器780具体用于根据所述切换标识,解除处于阻塞状态的开始切换标识的阻塞状态,得到解除阻塞的开始切换标识,所述解除阻塞的开始切换标识用于指示资源管理线程通知所述移动终端中的硬件释放所述第一操作系统所占用的硬件资源,所述处于阻塞状态的开始切换标识用于指示禁止执行操作系统切换。
[0239]本发明实施例中,由解除阻塞的开始切换标识来指示释放硬件资源,提高了硬件资源释放的效率。
[0240]可选地,作为一个实施例,所述处理器780还用于完成所述前台操作系统从所述第一操作系统到所述第二操作系统的切换之后,将所述硬件资源分配给所述第二操作系统使用;在将所述硬件资源分配给所述第二操作系统使用后,将所述解除阻塞的开始切换标识恢复到阻塞状态。
[0241]本发明实施例中,在操作系统切换完毕后,及时将解除阻塞的开始切换标识恢复到阻塞状态,从而进一步提高了多个操作系统对硬件资源使用的互斥性。
[0242]可选地,作为一个实施例,所述处理器780还用于完成所述前台操作系统从所述第一操作系统到所述第二操作系统的切换之后,监测所述移动终端的热插拔接口 ;当监测到第一热插拔设备从所述移动终端拔出,则从所述第一操作系统的资源管理命名空间中清除所述第一热插拔设备的在位标记,以解除所述第一热插拔设备与所述第一操作系统的绑定关系,所述第一热插拔设备的在位标记用于指示所述第一热插拔设备供所述第一操作系统使用。
[0243]本发明实施例中,在当前操作系统发生切换后,热插拔设备可及时解除与切换前的操作系统的绑定关系,保证了多个操作系统对热插拔设备使用的互斥性。
[0244]可选地,作为一个实施例,所述处理器780还用于完成所述前台操作系统从所述第一操作系统到所述第二操作系统的切换之后,监测所述移动终端的热插拔接口 ;当监测到第二热插拔设备插入所述移动终端,则在所述第二操作系统的资源管理命名空间中添加所述第二热插拔设备的在位标记,以建立所述第二热插拔设备与所述第二操作系统的绑定关系,所述第二热插拔设备的在位标记用于指示第二热插拔设备供所述第二操作系统使用。
[0245]本发明实施例中,当前操作系统切换后,热插拔设备可以与切换后的操作系统建立绑定关系,从而保证了多个操作系统对热插拔设备使用的互斥性。
[0246]另外,移动终端还可执行图1至图6的方法及实施例,本发明实施例在此不再赘述。
[0247]本发明实施例提供的移动终端,可以在操作系统热切换时,先释放掉当前的前台操作系统所占用的硬件资源,并通过资源管理命名空间中的运行状态信息指示硬件资源屏蔽后台操作系统对硬件资源的访问,一定程度上保证多个操作系统对硬件资源的互斥访问和协调使用,从而保证了操作系统切换后硬件资源使用的可靠性。
[0248]另外,本发明实施例提供的移动终端通过热插拔接口实现与热插拔设备的连接,所述处理器780同时运行有多个操作系统,所述多个操作系统包括一个前台操作系统,以及至少一个后台操作系统,每个操作系统各自对应一个资源管理命名空间,每个资源管理命名空间包括与其对应的操作系统的运行状态信息,所述运行状态信息用于指示所述操作系统为前台操作系统或后台操作系统,并用于指示所述移动终端中的硬件开放对前台操作系统的使用或屏蔽对后台操作系统的使用,所述硬件为所述用于与外部交互的硬件,其中,当前的前台操作系统为第一操作系统,所述至少一个后台操作系统包括第二操作系统,以及,所述处理器780,被配置成:
[0249]监测所述移动终端的热插拔接口 ;
[0250]当监测到第一热插拔设备插入所述移动终端时,则在所述第一操作系统的资源管理命名空间中添加所述第一热插拔设备的在位标记,以建立所述第一热拔插设备与所述第一操作系统的绑定关系,所述第一热插拔设备的在位标记用于指示所述第一热插拔设备供所述第一操作系统使用;
[0251]当监测到第二热插拔设备从所述移动终端拔出,则从所述第一操作系统的资源管理命名空间中清除所述第二热插拔设备的在位标记,以解除所述第二热插拔设备与所述第一操作系统的绑定关系,所述第二热插拔设备的在位标记用于指示所述第二热插拔设备供所述第一操作系统使用。
[0252]可选地,作为一个实施例,所述处理器780还用于:当所述前台操作系统从所述第一操作系统到所述第二操作系统;
[0253]当监测到所述第一热插拔设备从所述移动终端拔出,则在所述第一操作系统的资源管理命名空间中清除所述第一热插拔设备的在位标记,以解除所述第一热拔插设备与所述第一操作系统的绑定关系,所述第一热插拔设备的在位标记用于指示所述第一热插拔设备供所述第一操作系统使用;
[0254]当监测到所述第二热插拔设备插入所述移动终端,则在所述第二操作系统的资源管理命名空间中添加所述第二热插拔设备的在位标记,以建立所述第二热插拔设备与所述第二操作系统的绑定关系,所述第二热插拔设备的在位标记用于指示所述第二热插拔设备供所述第二操作系统使用。
[0255]本发明实施例提供的移动设备,可以将热拔插设备与当前操作系统进行绑定或者解除绑定,从而避免了多个操作系统对热插拔设备使用的冲突,保证了多个操作系统对热插拔设备使用的互斥性。
[0256]本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件(例如处理器)来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:ROM、RAM、磁盘或光盘等。
[0257]以上对本发明实施例所提供的操作系统热切换的方法、装置以及移动终端进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在【具体实施方式】及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
【权利要求】
1.一种操作系统热切换的方法,其特征在于,所述方法应用于运行有多个操作系统的移动终端,所述多个操作系统包括一个前台操作系统,以及至少一个后台操作系统,每个操作系统各自对应一个资源管理命名空间,每个资源管理命名空间包括与其对应的操作系统的运行状态信息,所述运行状态信息用于指示所述操作系统为前台操作系统或后台操作系统,并用于指示所述移动终端中的硬件开放对前台操作系统的使用或屏蔽对后台操作系统的使用,所述硬件为所述用于与外部交互的硬件,其中,当前的前台操作系统为第一操作系统,所述至少一个后台操作系统包括第二操作系统,所述方法包括: 获取操作系统切换指令,所述操作系统切换指令包含所述第二操作系统的标识和切换标识,所述第二操作系统的标识用于指示将所述第二操作系统切换为前台操作系统; 根据所述切换标识,释放所述第一操作系统所占用的硬件资源,所述硬件资源为所述移动终端中用于与外部交互的硬件资源; 将所述第一操作系统的资源管理命名空间中的运行状态信息修改到后台状态,将所述第二操作系统的资源管理命名空间中的运行状态信息修改到前台状态,完成所述前台操作系统从所述第一操作系统到所述第二操作系统的切换。
2.根据权利要求1所述的方法,其特征在于,所述根据所述切换标识,释放所述第一操作系统所占用的硬件资源,所述硬件资源为所述移动终端中用于与外部交互的硬件资源之后,所述方法还包括: 根据所述第二操作系统的标识,从资源全局链表中确定所述第二操作系统的资源管理命名空间,所述资源全局链表包括操作系统的标识与操作系统的资源管理命名空间的对应关系O
3.根据权利要求1或2所述的方法,其特征在于,所述根据所述切换标识,释放所述第一操作系统所占用的硬件资源,包括: 根据所述切换标识,解除处于阻塞状态的开始切换标识的阻塞状态,得到解除阻塞的开始切换标识,所述解除阻塞的开始切换标识用于指示资源管理线程通知所述移动终端中的硬件释放所述第一操作系统所占用的硬件资源,所述处于阻塞状态的开始切换标识用于指示禁止执行操作系统切换。
4.根据权利要求3所述的方法,其特征在于,所述完成所述前台操作系统从所述第一操作系统到所述第二操作系统的切换之后,所述方法还包括: 将所述硬件资源分配给所述第二操作系统使用; 在将所述硬件资源分配给所述第二操作系统使用后,将所述解除阻塞的开始切换标识恢复到阻塞状态。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述完成所述前台操作系统从所述第一操作系统到所述第二操作系统的切换之后,所述方法还包括: 监测所述移动终端的热插拔接口; 当监测到第一热插拔设备从所述移动终端拔出,则从所述第一操作系统的资源管理命名空间中清除所述第一热插拔设备的在位标记,以解除所述第一热插拔设备与所述第一操作系统的绑定关系,所述第一热插拔设备的在位标记用于指示所述第一热插拔设备供所述第一操作系统使用。
6.根据权利要求1-5任一项所述的方法,其特征在于,所述完成所述前台操作系统从所述第一操作系统到所述第二操作系统的切换之后,所述方法还包括: 监测所述移动终端的热插拔接口; 当监测到第二热插拔设备插入所述移动终端,则在所述第二操作系统的资源管理命名空间中添加所述第二热插拔设备的在位标记,以建立所述第二热插拔设备与所述第二操作系统的绑定关系,所述第二热插拔设备的在位标记用于指示第二热插拔设备供所述第二操作系统使用。
7.—种热插拔设备管理的方法,其特征在于,所述方法应用于运行有多个操作系统的移动终端,所述移动终端提供热插拔接口,所述热插拔设备通过所述热插拔接口与所述移动终端实现热插拔,所述多个操作系统包括一个前台操作系统,以及至少一个后台操作系统,每个操作系统各自对应一个资源管理命名空间,每个资源管理命名空间包括与其对应的操作系统的运行状态信息,所述运行状态信息用于指示所述操作系统为前台操作系统或后台操作系统,并用于指示所述移动终端中的硬件开放对前台操作系统的使用或屏蔽对后台操作系统的使用,所述硬件为所述用于与外部交互的硬件,其中,当前的前台操作系统为第一操作系统,所述至少一个后台操作系统包括第二操作系统,所述方法包括: 监测所述移动终端的热插拔接口; 当监测到第一热插拔设备插入所述移动终端时,则在所述第一操作系统的资源管理命名空间中添加所述第一热插拔设备的在位标记,以建立所述第一热拔插设备与所述第一操作系统的绑定关系,所述第一热插拔设备的在位标记用于指示所述第一热插拔设备供所述第一操作系统使用; 当监测到第二热插拔设备从所述移动终端拔出,则从所述第一操作系统的资源管理命名空间中清除所述第二热插拔设备的在位标记,以解除所述第二热插拔设备与所述第一操作系统的绑定关系,所述第二热插拔设备的在位标记用于指示所述第二热插拔设备供所述第一操作系统使用。
8.根据权利要求7所述的方法,其特征在于,当所述前台操作系统从所述第一操作系统到所述第二操作系统,所述方法还包括: 当监测到所述第一热插拔设备从所述移动终端拔出,则在所述第一操作系统的资源管理命名空间中清除所述第一热插拔设备的在位标记,以解除所述第一热拔插设备与所述第一操作系统的绑定关系,所述第一热插拔设备的在位标记用于指示所述第一热插拔设备供所述第一操作系统使用; 当监测到所述第二热插拔设备插入所述移动终端,则在所述第二操作系统的资源管理命名空间中添加所述第二热插拔设备的在位标记,以建立所述第二热插拔设备与所述第二操作系统的绑定关系,所述第二热插拔设备的在位标记用于指示所述第二热插拔设备供所述第二操作系统使用。
9.一种操作系统热切换的装置,其特征在于,所述装置应用于运行有多个操作系统的移动终端,所述多个操作系统包括一个前台操作系统,以及至少一个后台操作系统,每个操作系统各自对应一个资源管理命名空间,每个资源管理命名空间包括与其对应的操作系统的运行状态信息,所述运行状态信息用于指示所述操作系统为前台操作系统或后台操作系统,并用于指示所述移动终端中的硬件开放对前台操作系统的使用或屏蔽对后台操作系统的使用,所述硬件为所述用于与外部交互的硬件,其中,当前的前台操作系统为第一操作系统,所述至少一个后台操作系统包括第二操作系统,所述装置包括: 获取单元,用于获取操作系统切换指令,所述操作系统切换指令包含所述第二操作系统的标识和切换标识,所述第二操作系统的标识用于指示将所述第二操作系统切换为前台操作系统; 释放单元,用于根据所述获取单元获取的切换标识,释放所述第一操作系统所占用的硬件资源,所述硬件资源为所述移动终端中用于与外部交互的硬件资源; 切换单元,用于在所述释放单元释放所述硬件资源后,将所述第一操作系统的资源管理命名空间中的运行状态信息修改到后台状态,将所述第二操作系统的资源管理命名空间中的运行状态信息修改到前台状态,完成所述前台操作系统从所述第一操作系统到所述第二操作系统的切换。
10.根据权利要求9所述的装置,其特征在于,所述装置还包括: 确定单元,用于根据所述获取单元获取的所述第二操作系统的标识,从资源全局链表中确定所述第二操作系统的资源管理命名空间,所述资源全局链表包括操作系统的标识与操作系统的资源管理命名空间的对应关系。
11.根据权利要求9或10所述的装置,其特征在于, 所述释放单元,具体用于根据所述切换标识,解除处于阻塞状态的开始切换标识的阻塞状态,得到解除阻塞的开始切换标识,所述解除阻塞的开始切换标识用于指示资源管理线程通知所述移动终端中的硬件释放所述第一操作系统所占用的硬件资源,所述处于阻塞状态的开始切换标识用于指示禁止执行操作系统切换。
12.根据权利要求11所述的装置,其特征在于,所述装置还包括: 分配单元,用于在所述切换单元完成所述前台操作系统从所述第一操作系统到所述第二操作系统的切换之后,将所述硬件资源分配给所述第二操作系统使用; 修改单元,用于在所述分配单元将所述硬件资源分配给所述第二操作系统使用后,将所述解除阻塞的开始切换标识恢复到阻塞状态。
13.根据权利要求9-12任一项所述的装置,其特征在于,所述装置还包括: 第一监测单元,用于在所述切换单元完成所述前台操作系统从所述第一操作系统到所述第二操作系统的切换之后,监测所述移动终端的热插拔接口 ; 清除单元,用于当所述第一监测单元监测到所述第一热插拔设备从所述移动终端拔出,则从所述第一操作系统的资源管理命名空间中清除所述第一热插拔设备的在位标记,以解除所述第一热插拔设备与所述第一操作系统的绑定关系,所述第一热插拔设备的在位标记用于指示所述第一热插拔设备供所述第一操作系统使用。
14.根据权利要求9-13任一项所述的装置,其特征在于,所述装置还包括: 第二监测单元,用于监测所述移动终端的热插拔接口 ; 添加单元,用于当所述第二监测单元监测到第二热插拔设备插入所述移动终端,则在所述第二操作系统的资源管理命名空间中添加所述第二热插拔设备的在位标记,以建立所述第二热插拔设备与所述第二操作系统的绑定关系,所述第二热插拔设备的在位标记用于指示第二热插拔设备供所述第二操作系统使用。
15.一种热插拔设备管理的装置,其特征在于,所述装置应用于运行有多个操作系统的移动终端,所述移动终端提供热插拔接口,所述热插拔设备通过所述热插拔接口与所述移动终端实现热插拔,所述多个操作系统包括一个前台操作系统,以及至少一个后台操作系统,每个操作系统各自对应一个资源管理命名空间,每个资源管理命名空间包括与其对应的操作系统的运行状态信息,所述运行状态信息用于指示所述操作系统为前台操作系统或后台操作系统,并用于指示所述移动终端中的硬件开放对前台操作系统的使用或屏蔽对后台操作系统的使用,所述硬件为所述用于与外部交互的硬件,其中,当前的前台操作系统为第一操作系统,所述至少一个后台操作系统包括第二操作系统,所述装置包括: 监测单元,用于监测所述移动终端的热插拔接口 ; 添加单元,用于当所述监测单元监测到第一热插拔设备插入所述移动终端时,则在所述第一操作系统的资源管理命名空间中添加所述第一热插拔设备的在位标记,以建立所述第一热拔插设备与所述第一操作系统的绑定关系,所述第一热插拔设备的在位标记用于指示所述第一热插拔设备供所述第一操作系统使用; 清除单元,用于当所述监测单元监测到第二热插拔设备从所述移动终端拔出,则从所述第一操作系统的资源管理命名空间中清除所述第二热插拔设备的在位标记,以解除所述第二热插拔设备与所述第一操作系统的绑定关系,所述第二热插拔设备的在位标记用于指示所述第二热插拔设备供所述第一操作系统使用。
16.根据权利要求15所述的装置,其特征在于, 所述清除单元,还用于所述前台操作系统从所述第一操作系统到所述第二操作系统后,当所述监测单元监测到所述第一热插拔设备从所述移动终端拔出,则在所述第一操作系统的资源管理命名空间中清除所述第一热插拔设备的在位标记,以解除所述第一热拔插设备与所述第一操作系统的绑定关系,所述第一热插拔设备的在位标记用于指示所述第一热插拔设备供所述第一操作系统使用; 所述添加单元,还用于当所述面向用户的操作系统从第一操作系统切换到所述第二操作系统后,当所述监测单元监测到所述第二热插拔设备插入所述移动终端,则在所述第二操作系统的资源管理命名空间中添加所述第二热插拔设备的在位标记,以建立所述第二热插拔设备与所述第二操作系统的绑定关系,所述第二热插拔设备的在位标记用于指示所述第二热插拔设备供所述第二操作系统使用。
17.一种移动终端,其特征在于,所述移动终端包括处理器,存储器和硬件资源,所述硬件资源为所述移动终端中用于与外部交互的硬件资源,其中,所述处理器同时运行有多个操作系统,所述多个操作系统包括一个前台操作系统,以及至少一个后台操作系统,每个操作系统各自对应一个资源管理命名空间,每个资源管理命名空间包括与其对应的操作系统的运行状态信息,所述运行状态信息用于指示所述操作系统为前台操作系统或后台操作系统,并用于指示所述移动终端中的硬件开放对前台操作系统的使用或屏蔽对后台操作系统的使用,所述硬件为所述用于与外部交互的硬件,其中,当前的前台操作系统为第一操作系统,所述至少一个后台操作系统包括第二操作系统, 以及,所述处理器,被配置成: 获取操作系统切换指令,所述操作系统切换指令包含所述第二操作系统的标识和切换标识,所述第二操作系统的标识用于指示将所述第二操作系统切换为前台操作系统; 根据所述切换标识,释放所述第一操作系统所占用的所述硬件资源; 将所述第一操作系统的资源管理命名空间中的运行状态信息修改到后台状态,将所述第二操作系统的资源管理命名空间中的运行状态信息修改到前台状态,完成所述前台操作系统从所述第一操作系统到所述第二操作系统的切换。
18.一种移动终端,其特征在于,所述移动终端包括处理器,存储器、硬件资源和热插拔接口,所述硬件资源为所述移动终端中用于与外部交互的硬件资源,热插拔设备通过所述热插拔接口与所述移动终端实现热插拔,其中,所述处理器同时运行有多个操作系统,所述多个操作系统包括一个前台操作系统,以及至少一个后台操作系统,每个操作系统各自对应一个资源管理命名空间,每个资源管理命名空间包括与其对应的操作系统的运行状态信息,所述运行状态信息用于指示所述操作系统为前台操作系统或后台操作系统,并用于指示所述移动终端中的硬件开放对前台操作系统的使用或屏蔽对后台操作系统的使用,所述硬件为所述用于与外部交互的硬件,其中,当前的前台操作系统为第一操作系统,所述至少一个后台操作系统包括第二操作系统, 以及,所述处理器,被配置成: 监测所述移动终端的热插拔接口; 当监测到第一热插拔设备插入所述移动终端时,则在所述第一操作系统的资源管理命名空间中添加所述第一热插拔设备的在位标记,以建立所述第一热拔插设备与所述第一操作系统的绑定关系,所述第一热插拔设备的在位标记用于指示所述第一热插拔设备供所述第一操作系统使用; 当监测到第二热插拔设备从所述移动终端拔出,则从所述第一操作系统的资源管理命名空间中清除所述第二热插拔设备的在位标记,以解除所述第二热插拔设备与所述第一操作系统的绑定关系,所述第二热插拔设备的在位标记用于指示所述第二热插拔设备供所述第一操作系统使用。
【文档编号】G06F9/445GK104516760SQ201410767954
【公开日】2015年4月15日 申请日期:2014年12月12日 优先权日:2014年12月12日
【发明者】钟建飞, 鲁波 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1