一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

跨操作系统的调用方法、装置及电子设备与流程

2022-12-06 19:17:17 来源:中国专利 TAG:


1.本公开涉及操作系统技术领域,尤其涉及一种跨操作系统的调用方法、装置及电子设备。


背景技术:

2.设备的操作系统具有多样性,对于设备的不同的操作系统之间的交互,由于需要跨操作系统进行通信,因此存在极大的障碍。例如,电子设备a具有安卓操作系统和linux操作系统,此时,安卓操作系统和linux操作系统之间就无法进行底层硬件设备的调用。
3.因此,亟需一种能够跨操作系统的调用方式,实现不同操作系统之间的资源的调用。


技术实现要素:

4.本公开提供一种跨操作系统的调用方法、装置、电子设备及存储介质,以至少解决相关技术中跨操作系统的资源调用问题。本公开的技术方案如下:
5.根据本公开实施例的第一方面,提供一种跨操作系统的调用方法,包括:获取第一主体的第一操作系统类型;获取第二主体的第二操作系统类型;如果所述第一操作系统类型与所述第二操作系统类型一致,则在所述第一主体和所述第二主体之间建立第一连接桥;所述第一连接桥用于具有相同操作系统类型的所述第一主体和所述第二主体之间进行资源调用;如果所述第一操作系统类型与所述第二操作系统类型不一致,则在所述第一主体和所述第二主体之间建立第二连接桥;所述第二连接桥用于具有不同操作系统类型的所述第一主体和所述第二主体之间进行资源调用。
6.在本公开的一个实施例之中,所述第二主体为多个,所述方法还包括:向多个第二主体发送资源上报消息;接收所述多个第二主体发送的资源信息;将所述多个第二主体发送的资源信息发送至所述第一主体,以使所述第一主体根据所述多个第二主体的资源信息生成资源调用列表,以供所述第一主体进行调用。
7.在本公开的一个实施例之中,所述第二主体为多个,所述方法还包括:接收所述第一主体的资源调用请求,其中,所述资源调用请求之中具有目标资源的资源地址;根据所述目标资源的资源地址确定承载所述目标资源的第二主体;根据所述目标资源的第二主体的第二操作系统类型,调用所述第一连接桥或所述第二连接桥将所述资源调用请求发送至所述目标资源的第二主体,以对所述目标资源的第二主体的资源进行调用。
8.在本公开的一个实施例之中,所述在所述第一主体和所述第二主体之间建立第一连接桥,包括:建立所述第一主体和所述第二主体之间的共享内存,通过所述共享内存建立所述第一连接桥。
9.在本公开的一个实施例之中,所述在所述第一主体和所述第二主体之间建立第一连接桥,还包括:建立所述第一主体和所述第二主体之间的硬件组件映射表,其中,所述硬件组件映射表之中具有所述第一主体和所述第二主体之中的硬件组件的映射关系;通过所
述硬件组件映射表建立所述第一连接桥。
10.在本公开的一个实施例之中,所述在所述第一主体和所述第二主体之间建立第一连接桥之后,还包括:通过所述第一连接桥进入所述第二主体的第二操作系统,检测所述第二主体的多个硬件组件;确定所述第二主体中存在检测失败的所述硬件组件,则通过所述硬件组件映射表中所述硬件组件的映射关系,确定与所述检测失败的所述硬件组件映射的目标硬件组件。在本公开的一个实施例之中,所述资源信息包括所述第二主体之中资源的资源地址,所述在所述第一主体和所述第二主体之间建立第二连接桥,包括:根据所述第二主体之中资源的资源地址建立路由选择适配表,其中,所述路由选择适配表用于建立所述第二连接桥。
11.在本公开的一个实施例之中,所述根据所述目标资源的第二主体的第二操作系统类型,调用所述第二连接桥将所述资源调用请求发送至所述目标资源的第二主体,包括:如果所述目标资源的第二主体的第二操作系统类型与所述第一主体的第一操作系统类型不一致,则从所述资源调用请求之中获取目标资源的资源地址;根据所述目标资源的资源地址查找所述路由选择适配表,以从所述路由选择适配表之中获取对应的路由路径;根据所述路由路径将所述资源调用请求发送至对应的所述目标资源的第二主体。
12.在本公开的一个实施例之中,所述在所述第一主体和所述第二主体之间建立第二连接桥,包括:获取所述第二主体之中每个资源的io接口,并针对所述每个资源的io接口生成对应的虚拟io接口;建立所述第一主体和所述虚拟io接口的映射关系;通过所述映射关系建立所述第二连接桥。
13.在本公开的一个实施例之中,所述在所述第一主体和所述第二主体之间建立第二连接桥,包括:建立所述第一主体和所述第二主体之间的内存映射关系;根据所述内存映射关系建立所述第二连接桥。
14.根据本公开实施例的第二方面,提供一种跨操作系统的调用装置,包括:
15.第一获取模块,用于获取第一主体的第一操作系统类型;
16.第二获取模块,用于获取第二主体的第二操作系统类型;
17.第一建立模块,用于如果所述第一操作系统类型与所述第二操作系统类型一致,则在所述第一主体和所述第二主体之间建立第一连接桥;所述第一连接桥用于具有相同操作系统类型的所述第一主体和所述第二主体之间进行资源调用;
18.第二建立模块,用于如果所述第一操作系统类型与所述第二操作系统类型不一致,则在所述第一主体和所述第二主体之间建立第二连接桥;所述第二连接桥用于具有不同操作系统类型的所述第一主体和所述第二主体之间进行资源调用。
19.根据本公开实施例的第三方面,提供一种电子设备,包括:处理器;用于存储所述处理器可执行调用指令的存储器;其中,所述处理器被配置为执行所述调用指令,以实现如第一方面所述的跨操作系统的调用方法。
20.根据本公开实施例的第四方面,提供一种非临时性计算机可读存储介质,当所述存储介质中的调用指令由电子设备的处理器执行时,使得电子设备能够执行如第一方面所述的跨操作系统的调用方法。
21.根据本公开实施例的第五方面,提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现本公开第一方面实施例提出的跨操作系统的调用方法。
22.本公开实施例提供的跨操作系统的调用方法、装置及电子设备,在确定第一主体和第二主体的操作系统类型后,在第一主体和第二主体之间建立能够实现具有不同操作系统类型的设备之间的资源调用的第二连接桥,以通过第二连接桥实现跨操作系统的资源调用。
23.本公开附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本公开的实践了解到。
附图说明
24.本公开上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
25.图1为本公开实施例提供的一种跨操作系统的调用方法的流程示意图;
26.图2为本公开实施例的跨操作系统的调用系统结构图;
27.图3为本公开实施例的提供的另一种跨操作系统的调用方法的流程示意图;
28.图4为本公开实施例提供的又一种跨操作系统的调用方法的流程示意图;
29.图5为本公开实施例提供的又一种跨操作系统的调用方法的流程示意图;
30.图6为本公开实施例提供的又一种跨操作系统的调用方法的流程示意图;
31.图7为本公开实施例提供的又一种跨操作系统的调用方法的流程示意图;
32.图8为本公开实施例提供的又一种跨操作系统的调用方法的流程示意图;
33.图9为本公开实施例提供的又一种跨操作系统的调用方法的流程示意图;
34.图10为本公开实施例提供的又一种跨操作系统的调用方法的流程示意图;
35.图11为本公开实施例提供的一种跨操作系统的调用装置的结构示意图;
36.图12是本公开实施例所提供的一种电子设备的框图。
具体实施方式
37.这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开实施例相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开实施例的一些方面相一致的装置和方法的例子。
38.在本公开实施例使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本公开实施例。在本公开实施例和所附权利要求书中所使用的单数形式的“一种”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
39.应当理解,尽管在本公开实施例可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本公开实施例范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”及“若”可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”。
40.下面详细描述本公开的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的要素。下面通过参考附图描述的实施例是示例性的,
旨在用于解释本公开,而不能理解为对本公开的限制。
41.在本公开的实施例之中,提出了一种异构计算引擎,该异构计算引擎,可以设置在第一主体,也可以设置在第二主体,本公开实施例对此不做限定。在本公开的一个实施例之中,异构计算引擎可以设置在第一主体之中,该异构计算引擎具有第一接口和第二接口,其中,第一接口符合第一主体的第一操作系统的规范,可以被第一主体所调用,第二接口符合第二操作系统的规范,可以被第二主体所调用,同时,第二接口也可以调用第二主体之中的硬件资源或软件资源。当然在本公开的其他实施例之中,异构计算引擎还可以设置在第二主体。
42.作为一种示例,该跨操作系统的调用系统可以包括第一主体、第二主体和异构计算引擎。异构计算引擎作为第一主体和第二主体之间的通信中介,实现第一主体和第二主体之间资源的相互调用。该异构计算引擎获取第一主体的第一操作系统类型,以及获取第二主体的第二操作系统类型,若确定第一操作系统类型与第二操作系统类型一致,则在第一主体和第二主体之间建立第一连接桥;若确定第一操作系统类型与第二操作系统类型不一致,则在第一主体和第二主体之间建立第二连接桥。由此,通过在第一主体和第二主体之间建立的连接桥,实现了跨操作系统的资源调用。即,第一主体可以调用第二主体中的硬件资源或软件资源,例如,第一主体的第一操作系统类型为ios操作系统,第二主体的第二操作系统类型为安卓操作系统或linux操作系统,在第一主体和第二主体之间建立第二连接桥,使得第一主体可以通过第二连接桥调用具有安卓操作系统或linux操作系统的第二主体的硬件或软件资源。
43.在后续的实施例之中,将结合具体的实施例对本技术的方案进行详细介绍。
44.图1为本公开实施例提供的一种跨操作系统的调用方法的流程示意图。在本公开的一个实施例之中,该方法可以应用于异构计算引擎。当然在本公开的其他实施例之中,该方法还可以用于其他的引擎,只要能实现具有不同操作系统的第一主体和第二主体之间的调用即可,例如,同一设备的不同操作系统下的两个app之间的调用,又或者,不同设备的两个app之间的调用。
45.作为一种示例,图2为本公开实施例的跨操作系统的调用系统结构图。该跨操作系统的调用系统200,可以包括第一主体210,第二主体220以及异构计算引擎230,异构计算引擎230作为第一主体210和第二主体220之间的通信中介,实现第一主体210和第二主体220之间资源的相互调用。例如,第一主体210的操作系统为ios操作系统,第二主体220的操作系统为linux操作系统,可以通过异构计算引擎230获取到第一主体210发送的调用指令后,将调用指令转换为linux操作系统能够识别的调用指令,并将转换后的调用指令发送至第二主体220,第二主体220接收到调用指令后,将该调用指令指向或调用的目标资源发送至异构计算引擎230,异构计算引擎230将接收到的目标资源转换为ios操作系统能够识别的资源后,发送至第一主体210,从而实现了操作系统不同的第一主体210和第二主体220之间的资源调用。
46.在本技术实施例的一种可能的情况下,第一主体210和第二主体220,可以为系统模块、驱动模块、内核、app、设备等等,范围不限。
47.如图1所示,该方法包括以下步骤:
48.步骤101、获取第一主体的第一操作系统类型。
49.其中,操作系统(operating system,简称os),是电子计算机系统中负责支撑应用程序运行环境以及用户操作环境的系统软件,同时也是计算机系统的核心与基石。操作系统是控制和管理计算机软硬件资源、合理组织计算机工作流程,以及方便用户操作的程序集合。它的职责常包括对硬件的直接监管、对各种计算资源(如内存、处理器时间等)的管理、以及提供诸如作业管理之类的面向应用程序的服务等等。操作系统类型,可以为安卓(android)操作系统、ios操作系统、linux操作系统、unix操作系统、macos操作系统以及windows操作系统,等等。
50.在本公开的一个实施例中,第一主体可以为第一操作系统中用于控制智能家电的应用程序或驱动等等。
51.在本公开实施例中,获取到的第一主体的第一操作系统类型可以为任意操作系统类型,例如,第一主体的第一操作系统类型可以为android操作系统、ios操作系统、linux操作系统、unix操作系统、macos操作系统以及windows操作系统中的任意一种。当然,第一主体的第一操作系统类型也可以为其他任意操作系统,在此不做限定。
52.步骤102、获取第二主体的第二操作系统类型。
53.在本公开的一个实施例中,第二主体可以为第二操作系统中的应用程序或驱动等等。
54.在本公开实施例中,获取到的第二主体的第二操作系统类型也可以为任意操作系统类型,例如,第二主体的第二操作系统类型可以为android操作系统、ios操作系统、linux操作系统、unix操作系统、macos操作系统以及windows操作系统中的任意一种。当然,第二主体的第二操作系统类型也可以为其他任意操作系统,在此不做限定。
55.需要说明的是,本公开实施例中对上述步骤101和步骤102的执行顺序不做限定,可以先执行步骤101,再执行步骤102,也可以先执行步骤102,再执行步骤101,也可以同时执行步骤101和步骤102,在本公开实施例中不做限定。
56.步骤103、如果第一操作系统类型与第二操作系统类型一致,则在第一主体和第二主体之间建立第一连接桥。
57.其中,第一连接桥,用于具有相同操作系统类型的第一主体和第二主体之间进行资源调用,能够实现第一主体和第二主体之间的跨进程通信。即第一主体的第一操作系统和第二主体的第二操作系统之间无需对资源进行转换,可以通过第一连接桥进行资源的直接传输。
58.在本公开实施例中,获取到第一主体的第一操作系统类型与第二主体的第二操作系统类型后,确定第一操作系统类型与第二操作系统类型一致,则在第一主体和第二主体之间建立第一连接桥。
59.例如,假设第一主体为设置于移动终端的app,第二主体为控制智能音箱的app,第一主体和第二主体的操作系统类型均为ios操作系统,则在第一主体和第二主体之间建立第一连接桥,以使得第一主体和第二主体之间通过第一连接桥进行资源的调用。步骤104、如果第一操作系统类型与第二操作系统类型不一致,则在第一主体和第二主体之间建立第二连接桥。
60.其中,第二连接桥,用于具有不同操作系统类型的第一主体和第二主体之间进行资源调用,可以根据第一主体的第一操作系统类型和第二主体的第二操作系统类型进行资
源的转换,以实现跨操作系统的调用。
61.在本公开实施例中,获取到第一主体的第一操作系统类型与第二主体的第二操作系统类型后,确定第一操作系统类型与第二操作系统类型不一致,则在第一主体和第二主体之间建立第二连接桥。
62.例如,假设第一主体为设置于移动终端的app,第二主体为控制智能音箱的app,第一主体操作系统类型为ios操作系统,第二主体的操作系统为android操作系统,则在第一主体和第二主体之间建立第二连接桥,以使得第一主体和第二主体之间通过第二连接桥进行资源的调用。
63.本公开实施例的跨操作系统的调用方法,通过获取第一主体的第一操作系统类型和第二主体的第二操作系统类型,如果第一操作系统类型与第二操作系统类型一致,则在第一主体和第二主体之间建立第一连接桥,否则,在第一主体和第二主体之间建立第二连接桥。由此,确定第一主体和第二主体的操作系统类型不一致时,在第一主体和第二主体之间建立能够实现用于不同操作系统的设备之间资源调用的第二连接桥,以通过第二连接桥实现跨操作系统的调用。
64.需要说明的是,上述的这些可能的实现方式可以单独被执行,也可以结合在一起被执行,本公开实施例并不对此作出限定。
65.在本公开实施例的一种可能的情况下,第二主体可以为多个,异构计算引擎可以将多个第二主体的硬件资源和/或软件资源发送至第一主体,以使得第一主体可以直接调用第二主体的资源。下面结合图3进行详细介绍,图3为本公开实施例的提供的另一种跨操作系统的调用方法的流程示意图。在本公开的一个实施例之中,该方法可应用于异构计算引擎。当然在本公开的其他实施例之中,该方法还可以用于其他的引擎,只要能实现第一主体和第二主体之间的调用即可。
66.如图3所示,该跨操作系统的调用方法,还可以包括以下步骤:
67.步骤201,向多个第二主体发送资源上报消息。
68.其中,资源上报消息,是指异构计算引擎向多个第二主体发送的,用于获取多个第二主体的硬件资源信息和/或软件资源信息的消息。
69.本公开实施例中,为了实现将多个第二主体的资源信息存储在第一主体中,异构计算引擎可以向多个第二主体发送资源上报消息,以使得多个第二主体接收到资源上报消息后,将对应的资源信息发送至异构计算引擎。
70.需要说明的是,在本公开的实施例中,第一主体和多个第二主体之间不仅可以实现硬件资源的跨操作系统的调用,也可以实现软件资源的跨操作系统的调用。例如,通过ios操作系统的app调用安卓系统的app之中的一些软件。
71.步骤202,接收多个第二主体发送的资源信息。
72.本公开实施例中,异构计算引擎向多个第二主体发送资源上报消息后,多个第二主体接收到资源上报消息后,将对应的资源信息发送至异构计算引擎,以使得异构计算引擎接收到多个第二主体发送的资源信息。
73.需要说明的是,异构计算引擎接收到的多个第二主体发送的资源信息,可以为硬件资源信息,也可以为软件资源信息,也可以为硬件资源信息和软件资源信息。
74.例如,异构计算引擎可以接收到多个第二主体发送的各硬件资源的能力,例如是
否支持声卡,以及声卡的性能等等。
75.假设第二主体为控制智能音箱的app,异构计算引擎可以接收到第二主体发送的智能音箱的开启控制方法,等等。
76.步骤203,将多个第二主体发送的资源信息发送至第一主体,以使第一主体根据多个第二主体的资源信息生成资源调用列表,以供第一主体进行调用。
77.本公开实施例中,异构计算引擎接收到多个第二主体发送的资源信息后,可以将多个第二主体发送的资源信息发送至第一主体,以使第一主体接收到多个第二主体的资源信息后,根据多个第二主体的资源信息生成资源调用列表,以供第一主体进行调用。
78.本公开实施例中,第一主体接收到多个第二主体的资源信息后,根据多个第二主体的资源信息生成的资源调用列表中,可以包括有多个第二主体的硬件资源信息和/或软件资源信息。
79.本公开实施例的跨操作系统的调用方法,通过异构计算引擎向多个第二主体发送资源上报消息,接收多个第二主体发送的资源信息后,将多个第二主体发送的资源信息发送至第一主体,以使第一主体根据多个第二主体的资源信息生成资源调用列表,以供第一主体进行调用。由此,第一主体根据多个第二主体发送的资源信息生成资源调用列表后,在调用第二主体的资源信息时,可以从资源调用列表中直接调用,不仅实现了跨操作系统的资源调用,还提高了资源调用的效率。
80.需要说明的是,上述的这些可能的实现方式可以单独被执行,也可以结合在一起被执行,本公开实施例并不对此作出限定。
81.作为本公开实施例的一种可能的情况,在第一主体调用第二主体的资源时,异构计算引擎还可以待调用的第二主体的操作系统类型,确定采用第一连接桥或第二连接桥,将第一主体发送的资源调用请求发送至第二主体,以实现对第二主体的资源调用。下面结合图4进行详细介绍,图4为本公开实施例提供的又一种跨操作系统的调用方法的流程示意图。
82.如图4所示,该跨操作系统的调用方法,还可以包括以下步骤:
83.步骤301,接收第一主体的资源调用请求,其中,资源调用请求之中具有目标资源的资源地址。
84.本公开实施例中,在第一主体调用第二主体的资源时,第一主体可以向异构计算引擎发送携带有目标资源的资源地址的资源调用请求,以使得异构计算引擎接收到第一主体的资源调用请求。
85.可选地,目标资源的资源地址,可以为目标资源的路由地址。
86.需要说明的是,第一主体的操作系统类型与多个第二主体的操作系统类型可以一致,也可以不一致,在此不做限定。
87.步骤302,根据目标资源的资源地址确定承载目标资源的第二主体。
88.本公开实施例中,异构计算引擎接收到第一主体发送的具有目标资源的资源地址的资源调用请求之后,可以根据目标资源的资源地址确定承载目标资源的第二主体。
89.步骤303,根据目标资源的第二主体的第二操作系统类型,调用第一连接桥或第二连接桥将资源调用请求发送至目标资源的第二主体,以对目标资源的第二主体的资源进行调用。
90.本公开实施例中,异构计算引擎根据目标资源的资源地址确定承载目标资源的第二主体后,可以获取目标资源的第二主体的第二操作系统类型,以根据目标资源的第二主体的第二操作系统类型,调用第一连接桥或第二连接桥将资源调用请求发送至目标资源的第二主体,以对目标资源的第二主体的资源进行调用。
91.在本公开实施例的一种可能的方式中,异构计算引擎获取到目标资源的第二主体的第二操作系统类型后,确定第一主体的第一操作系统类型和目标资源的第二主体的第二操作系统类型一致时,则调用第一连接桥将资源调用请求发送至目标资源的第二主体,以对目标资源的第二主体的资源进行调用。
92.举例而言,假设第一主体的操作系统为ios操作系统,目标资源的第二主体的操作系统也为ios操作系统,则异构计算引擎调用第一连接桥将资源调用请求发送至目标资源的第二主体。
93.在本公开实施例的另一种可能的方式中,异构计算引擎获取到目标资源的第二主体的第二操作系统类型后,确定第一主体的第一操作系统类型和目标资源的第二主体的第二操作系统类型不一致时,则调用第二连接桥将资源调用请求发送至目标资源的第二主体,以对目标资源的第二主体的资源进行调用。由此,确定第一主体和第二主体的操作系统类型不一致时,通过在第一主体和第二主体之间建立的第二连接桥将资源调用请求发送至目标资源的第二主体,从而实现了跨操作系统的资源调用。
94.举例而言,假设第一主体的操作系统为ios操作系统,目标资源的第二主体的操作系统为windows操作系统,则异构计算引擎调用第二连接桥将资源调用请求发送至目标资源的第二主体,以对目标资源的第二主体的资源进行调用。
95.本公开实施例的跨操作系统的调用方法,异构计算引擎接收第一主体的资源调用请求后,根据资源调用请求携带的目标资源的资源地址确定承载目标资源的第二主体,根据目标资源的第二主体的第二操作系统类型,调用第一连接桥或第二连接桥将资源调用请求发送至目标资源的第二主体,以对目标资源的第二主体的资源进行调用。由此,在确定第一主体调用资源的第二主体后,根据第一主体和第二主体的操作系统类型,确定采用第一连接桥或第二连接桥将资源调用请求发送至目标资源的第二主体,从而实现了跨操作系统的资源调用。
96.需要说明的是,上述的这些可能的实现方式可以单独被执行,也可以结合在一起被执行,本公开实施例并不对此作出限定。
97.本公开提出了另一种跨操作系统的调用方法。图5为本公开实施例提供的又一种跨操作系统的调用方法的流程示意图。该跨操作系统的调用方法可以单独被执行,也可以结合本公开中的任一个实施例或是实施例中的可能的实现方式一起被执行,还可以结合相关技术中的任一种技术方案一起被执行。
98.如图5所示,该跨操作系统的调用方法,可以包括以下步骤:
99.步骤401,获取第一主体的第一操作系统类型。
100.步骤402,获取第二主体的第二操作系统类型。
101.其中,第二主体可以为一个,也可以为多个,在此不做限定。
102.步骤401至402可以分别采用本公开的各实施例中的任一种方式实现,本公开实施例并不对此作出限定,也不再赘述。
103.步骤403,如果第一操作系统类型与第二操作系统类型一致,建立第一主体和第二主体之间的共享内存,通过共享内存建立第一连接桥。
104.本公开实施例中,异构计算引擎获取到第一主体的第一操作系统类型和第二主体的第二操作系统类型后,确定第一操作系统类型与第二操作系统类型一致时,可以在异构计算引擎中划分出一块存储区域,以建立第一主体和第二主体之间的共享内存,以通过共享内存建立第一连接桥。
105.例如,异构计算引擎可以在共享内存中存储第一主体的资源信息和第二主体的资源信息,以第一主体和第二主体之间进行资源调度时,从共享内存中获取到资源信息。
106.需要说明的是,共享内存中可以存储有第一主体和多个第二主体的硬件资源和/或软件资源,在本公开的实施例对此不做限定。
107.由此,确定第一主体的第一操作系统类型和第二主体的第二操作系统类型一致时,建立第一主体和第二主体之间的共享内存,以通过共享内存建立第一连接桥,实现了第一主体和第二主体之间通过共享内存进行资源调度,提高了资源调用的效率。
108.需要说明的是,上述的这些可能的实现方式可以单独被执行,也可以结合在一起被执行,本公开实施例并不对此作出限定。
109.本公开提出了另一种跨操作系统的调用方法。图6为本公开实施例提供的又一种跨操作系统的调用方法的流程示意图。该跨操作系统的调用方法可以单独被执行,也可以结合本公开中的任一个实施例或是实施例中的可能的实现方式一起被执行,还可以结合相关技术中的任一种技术方案一起被执行。
110.如图6所示,该跨操作系统的调用方法,可以包括以下步骤:
111.步骤501,获取第一主体的第一操作系统类型。
112.步骤502,获取第二主体的第二操作系统类型。
113.其中,第二主体可以为一个,也可以为多个,在此不做限定。
114.步骤501至502可以分别采用本公开的各实施例中的任一种方式实现,本公开实施例并不对此作出限定,也不再赘述。
115.步骤503,如果第一操作系统类型与第二操作系统类型一致,建立第一主体和第二主体之间的硬件组件映射表,通过硬件组件映射表建立第一连接桥。其中,硬件组件映射表之中具有第一主体和第二主体之中的硬件组件的映射关系。
116.本公开实施例中,第一主体的第一操作系统和第二主体的第二操作系统类型相同但底层硬件不同时,可以通过硬件组件映射表建立第一连接桥的方式扩展动态选择对接硬件支持能力,比如第一操作系统和第二操作系统的类型均为linux操作系统,但在不同gpu(graphics processing unit,图形处理器)结构下,可以通过硬件组件映射表中第一操作系统的硬件服务备份替换第二操作系统的硬件服务,从而提供了一种动态自动对应支持的组件库的映射的方法。
117.本公开实施例中,在第一主体和第二主体之间建立第一连接桥之后,异构计算引擎通过第一连接桥进入第二主体的第二操作系统,检测第二主体的多个硬件组件,确定第二主体中存在检测失败的硬件组件,则通过硬件组件映射表中硬件组件的映射关系,确定与检测失败的硬件组件映射的目标硬件组件,直至第二主体的多个硬件组件全部通过检测。
118.本公开实施例中,异构计算引擎进入第一主体的第一操作系统后,完成第一主体的硬件启动初始化,第一操作系统开始加载使用第一主体硬件的各个服务,准备进入第二主体的第二操作系统,确定第一主体的第一操作系统和第二主体的第二操作系统类型一致时,可以通过连接桥进入第二主体的第二操作系统。
119.本公开实施例中,当第一次启动第二主体的第二操作系统时,第一连接桥加载运行检测第二主体的各个硬件组件的服务,通过硬件检测过程,检查第二主体的各个硬件组件的功能在第二操作系统是否都可以正常工作。
120.如果第二主体的各个硬件组件的功能在第二操作系统是否都可以正常工作,完成第一连接桥的对接进入第二操作系统。
121.如果有硬件检测失败的硬件组件,向第二操作系统推荐硬件组件映射表,以用表中的硬件组件项进行备份及映射操作。若再次检测有不通过的硬件组件时,硬件组件映射表对该硬件组件有多个映射项支持,则依次尝试各个映射项直到该硬件组件检测通过。如果还有未通过的硬件组件,第一连接桥启动策略算法遍历链接(或备份镜像)第一操作系统与第二操作系统对该硬件组件的服务,直到该硬件组件在第二操作系统能够正确支持通过硬件检测,完成动态适配。并且标记更新自动适配第一连接桥,使得再启动第二操作系统时,通过第一连接桥直接进入第二操作系统。该过程可以提供用户交互接口,可以主动触发重新检测;第二操作系统正常启动后,更新后的硬件组件映射表,在用户允许的前提下,通过服务器可以更新给操作系统的提供商。
122.由此,确定第一主体的第一操作系统类型和第二主体的第二操作系统类型一致时,建立第一主体和第二主体之间的硬件组件映射表,通过硬件组件映射表建立第一连接桥,使得在第一操作系统和第二操作系统类型相同但底层硬件不同时,能够扩展动态选择对接硬件支持能力。
123.需要说明的是,上述的这些可能的实现方式可以单独被执行,也可以结合在一起被执行,本公开实施例并不对此作出限定。
124.本公开提出了另一种跨操作系统的调用方法。图7为本公开实施例提供的又一种跨操作系统的调用方法的流程示意图。该跨操作系统的调用方法可以单独被执行,也可以结合本公开中的任一个实施例或是实施例中的可能的实现方式一起被执行,还可以结合相关技术中的任一种技术方案一起被执行。
125.如图7所示,该跨操作系统的调用方法,可以包括以下步骤:
126.步骤601,获取第一主体的第一操作系统类型。
127.步骤602,获取第二主体的第二操作系统类型。
128.其中,第二主体可以为一个,也可以为多个,在此不做限定。
129.步骤601至5602可以分别采用本公开的各实施例中的任一种方式实现,本公开实施例并不对此作出限定,也不再赘述。
130.步骤603,如果第一操作系统类型与第二操作系统类型不一致,根据第二主体之中资源的资源地址建立路由选择适配表。
131.其中,路由选择适配表用于建立第二连接桥,即第二连接桥可以通过路由选择适配表建立。
132.本公开实施例中,异构计算引擎向多个第二主体发送资源上报信息之后,接收到
多个第二主体发送的资源信息中包括各第二主体之中资源的资源地址。异构计算引擎确定第一主体的第一操作系统类型和第二主体的第二操作系统类型不一致时,根据多个第二主体之中资源的资源地址建立路由选择适配表,以根据路由选择适配表在第一主体和第二主体之间建立第二连接桥。
133.在本公开实施例中,路由选择适配表中可以存储有各目标资源的资源地址与获取各目标资源对应的路由路径之间的对应关系。例如,多个第二主体的目标资源的硬件属于不同的厂商时,各硬件资源的资源地址并不相同,可以从路由选择适配表中确定与各硬件资源的资源地址对应的路由路径。
134.由此,通过建立路由选择适配表,在跨操作系统的调用过程中,根据上层业务逻辑,选择适配路由路径,进行不同模块功能业务处理,最终控制不同类型硬件和/或软件。
135.需要说明的是,上述的这些可能的实现方式可以单独被执行,也可以结合在一起被执行,本公开实施例并不对此作出限定。
136.本公开提出了另一种跨操作系统的调用方法。图8为本公开实施例提供的又一种跨操作系统的调用方法的流程示意图。该跨操作系统的调用方法可以单独被执行,也可以结合本公开中的任一个实施例或是实施例中的可能的实现方式一起被执行,还可以结合相关技术中的任一种技术方案一起被执行。
137.如图8所示,该跨操作系统的调用方法,还可以包括以下步骤:
138.步骤701,接收第一主体的资源调用请求,其中,资源调用请求之中具有目标资源的资源地址。
139.步骤702,根据目标资源的资源地址确定承载目标资源的第二主体。
140.步骤701至702可以分别采用本公开的各实施例中的任一种方式实现,本公开实施例并不对此作出限定,也不再赘述。
141.步骤703,如果目标资源的第二主体的第二操作系统类型与第一主体的第一操作系统类型不一致,则从资源调用请求之中获取目标资源的资源地址。
142.其中,目标资源的资源地址,可以为承载目标资源的第二主体的路由的ip地址。
143.本公开实施例中,异构计算引擎根据目标资源的资源地址确定承载目标资源的第二主体后,获取第二主体的第二操作系统类型后,确定目标资源的第二主体的第二操作系统类型与第一主体的第一操作系统类型不一致,则从资源调用请求之中获取目标资源的资源地址。例如,目标资源的资源地址为智能音箱的路由的ip地址。
144.步骤704,根据目标资源的资源地址查找路由选择适配表,以从路由选择适配表之中获取对应的路由路径。
145.其中,路由选择适配表中存储有目标资源的资源地址和路由路径之间的对应关系。
146.本公开实施例中,异构计算引擎从资源调用请求之中获取到目标资源的资源地址后,可以根据目标资源的资源地址查找路由选择适配表,以根据路由选择适配表中存储的目标资源的资源地址和路由路径之间的关系,获取到与目标资源的资源地址对应的路由路径。
147.步骤705,根据路由路径将资源调用请求发送至对应的目标资源的第二主体。
148.本公开实施例中,异构计算引擎确定目标资源的资源地址对应的路由路径后,根
据路由路径将资源调用请求发送至对应的目标资源的第二主体。
149.可以理解的是,第一主体与不同的第二主体之间进行跨操作系统的资源调用时,第二主体不同时,适配的路由路径也并不相同。
150.由此,通过根据目标资源的资源地址查找路由选择适配表,以根据在路由选择适配表之中确定的路由路径将资源调用请求发送至对应的目标资源的第二主体,实现了在跨操作系统的调用过程中,选择适配的路由路径,进行不同模块功能业务处理,以控制不同类型硬件和/或软件。
151.需要说明的是,上述的这些可能的实现方式可以单独被执行,也可以结合在一起被执行,本公开实施例并不对此作出限定。
152.本公开提出了另一种跨操作系统的调用方法。图9为本公开实施例提供的又一种跨操作系统的调用方法的流程示意图。该跨操作系统的调用方法可以单独被执行,也可以结合本公开中的任一个实施例或是实施例中的可能的实现方式一起被执行,还可以结合相关技术中的任一种技术方案一起被执行。
153.如图9所示,该跨操作系统的调用方法,可以包括以下步骤:
154.步骤801,获取第一主体的第一操作系统类型。
155.步骤802,获取第二主体的第二操作系统类型。
156.其中,第二主体可以为一个,也可以为多个,在此不做限定。
157.步骤801至802可以分别采用本公开的各实施例中的任一种方式实现,本公开实施例并不对此作出限定,也不再赘述。
158.步骤803,如果第一操作系统类型与第二操作系统类型不一致,获取第二主体之中每个资源的io接口,并针对每个资源的io接口生成对应的虚拟io接口。
159.本公开实施例中,异构计算引擎获取到第二主体之中每个资源的io(input/output,输入输出)接口后,可以针对每个资源的io接口生成对应的虚拟io接口。
160.其中,io接口用于通过第二主体的cpu(central processing unit,中央处理器)输入不同的命令和参数,并控制相关的i/o电路和简单的外设作相应的操作。例如,可以获取到第二主体中的io接口芯片如定时/计数器、中断控制器、dma控制器、并行接口等。
161.步骤804,建立第一主体和虚拟io接口的映射关系。
162.本公开实施例中,针对第二主体中每个资源的io接口生成对应的虚拟io接口后,可以建立第一主体和虚拟io接口的映射关系。
163.步骤805,通过映射关系建立第二连接桥。
164.本公开实施例中,建立第一主体和虚拟io接口的映射关系后,可以通过映射关系建立第二连接桥,以通过第二连接桥实现第一主体和第二主体之间的跨系统资源调用。
165.作为一种示例,假设针对第二主体的定时器的io接口生成对应的虚拟io接口后,可以建立第一主体与定时器的虚拟io接口的映射关系,以根据映射关系建立第二连接桥。由此,在第一主体的第一操作系统类型与第二主体的第二操作系统类型不一致时,可以通过第一主体与虚拟io接口的映射关系建立的第二连接桥实现第一主体和第二主体之间的跨操作系统的资源调用。
166.需要说明的是,上述的这些可能的实现方式可以单独被执行,也可以结合在一起被执行,本公开实施例并不对此作出限定。
167.本公开提出了另一种跨操作系统的调用方法。图10为本公开实施例提供的又一种跨操作系统的调用方法的流程示意图。该跨操作系统的调用方法可以单独被执行,也可以结合本公开中的任一个实施例或是实施例中的可能的实现方式一起被执行,还可以结合相关技术中的任一种技术方案一起被执行。
168.如图10所示,该跨操作系统的调用方法,可以包括以下步骤:
169.步骤901,获取第一主体的第一操作系统类型。
170.步骤902,获取第二主体的第二操作系统类型。
171.其中,第二主体可以为一个,也可以为多个,在此不做限定。
172.步骤901至902可以分别采用本公开的各实施例中的任一种方式实现,本公开实施例并不对此作出限定,也不再赘述。
173.步骤903,如果第一操作系统类型与第二操作系统类型不一致,建立第一主体和第二主体之间的内存映射关系。
174.本公开实施例中,异构计算引擎确定第一主体的第一操作系统类型与第二主体的第二操作系统类型不一致时,可以建立第一主体和第二主体之间的内存映射关系。
175.可选地,异构计算引擎可以动态的确定一定区域的内存,并给出内存访问基址,并建立第一主体和内存访问基址之间的内存映射关系,以及建立第二主体和内存访问基址之间的内存映射关系,从而建立第一主体和第二主体之间的内存映射关系。
176.步骤904,根据内存映射关系建立第二连接桥。
177.本公开实施例中,确定第一主体和第二主体之间的内存映射关系后,可以根据内存映射关系建立第二连接桥,以实现第一主体和第二主体之间的跨操作系统的资源调用。
178.由此,在确定第一操作系统类型与第二操作系统类型不一致时,建立第一主体和第二主体之间的内存映射关系,根据内存映射关系建立第二连接桥,从而实现了第一主体和第二主体之间的内存共享,以实现第一主体和第二主体之间的跨操作系统的资源调用。
179.需要说明的是,上述的这些可能的实现方式可以单独被执行,也可以结合在一起被执行,本公开实施例并不对此作出限定。
180.与上述图1、图3至图10实施例提供的跨操作系统的调用方法相对应,本公开还提供一种跨操作系统的调用装置,由于本公开实施例提供的跨操作系统的调用装置与上述图1、图3至图10实施例提供的跨操作系统的调用方法相对应,因此在跨操作系统的调用方法的实施方式也适用于本公开实施例提供的跨操作系统的调用装置,在本公开实施例中不再详细描述。
181.图11为本公开实施例提供的一种跨操作系统的调用装置的结构示意图。
182.如图11所示,该跨操作系统的调用装置900,可以包括:第一获取模块910、第二获取模块920、第一建立模块930以及第二建立模块940。
183.其中,第一获取模块910,用于获取第一主体的第一操作系统类型。
184.第二获取模块920,用于获取第二主体的第二操作系统类型。
185.第一建立模块930,用于如果第一操作系统类型与第二操作系统类型一致,则在第一主体和第二主体之间建立第一连接桥。
186.第二建立模块940,用于如果第一操作系统类型与第二操作系统类型不一致,则在第一主体和第二主体之间建立第二连接桥。
187.在本公开实施例中,第二主体为多个,该跨操作系统的调用装置900,还可以包括:
188.第一发送模块,用于向多个第二主体发送资源上报消息。
189.第一接收模块,用于接收多个第二主体发送的资源信息。
190.第二发送模块,用于将多个第二主体发送的资源信息发送至第一主体,以使第一主体根据多个第二主体的资源信息生成资源调用列表,以供第一主体进行调用。
191.在本公开实施例中,第二主体为多个,该跨操作系统的调用装置900,还可以包括:
192.第二接收模块,用于接收第一主体的资源调用请求,其中,资源调用请求之中具有目标资源的资源地址。
193.确定模块,用于根据目标资源的资源地址确定承载目标资源的第二主体。
194.调用模块,用于根据目标资源的第二主体的第二操作系统类型,调用第一连接桥或第二连接桥将所述资源调用请求发送至目标资源的第二主体,以对目标资源的第二主体的资源进行调用。
195.在本公开实施例中,第一建立模块930,还可以用于:建立第一主体和第二主体之间的共享内存,通过共享内存建立第一连接桥。
196.在本公开实施例中,资源信息包括第二主体之中资源的资源地址,第二建立模块940,还可以用于:根据第二主体之中资源的资源地址建立路由选择适配表,其中,路由选择适配表用于建立第二连接桥。
197.在本公开实施例中,调用模块,还可以用于:如果目标资源的第二主体的第二操作系统类型与第一主体的第一操作系统类型不一致,则从资源调用请求之中获取目标资源的资源地址;根据目标资源的资源地址查找路由选择适配表,以从路由选择适配表之中获取对应的路由路径;根据路由路径将资源调用请求发送至对应的目标资源的第二主体。
198.在本公开实施例中,第二建立模块940,还可以用于:获取第二主体之中每个资源的io接口,并针对每个资源的io接口生成对应的虚拟io接口;建立第一主体和虚拟io接口的映射关系;通过映射关系建立第二连接桥。
199.在本公开实施例中,第二建立模块940,还可以用于:建立第一主体和所述第二主体之间的内存映射关系;根据内存映射关系建立第二连接桥。
200.本公开实施例的跨操作系统的调用装置,通过获取第一主体的第一操作系统类型和第二主体的第二操作系统类型,如果第一操作系统类型与第二操作系统类型一致,则在第一主体和第二主体之间建立第一连接桥,否则,在第一主体和第二主体之间建立第二连接桥。由此,确定第一主体和第二主体的操作系统类型不一致时,在第一主体和第二主体之间建立第二连接桥,以通过第二连接桥实现跨操作系统的调用。
201.需要说明的是,上述的这些可能的实现方式可以单独被执行,也可以结合在一起被执行,本公开实施例并不对此作出限定。
202.为了实现上述实施例,本公开还提出一种电子设备。
203.本公开实施例提供的电子设备,包括处理器;用于存储所述处理器可执行调用指令的存储器;其中,所述处理器被配置为执行所述调用指令,以实现上述任一实施例所述的跨操作系统的调用方法
204.为了实现上述实施例,本公开还提出一种非临时性计算机可读存储介质。
205.本公开实施例提供的非临时性计算机可读存储介质,当所述存储介质中的调用指
令由电子设备的处理器执行时,使得电子设备能够执行上述任一实施例所述的跨操作系统的调用方法。
206.为了实现上述实施例,本公开还提供了一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现上述实施例提出的跨操作系统的调用方法。
207.图12是本公开实施例所提供的一种电子设备1000的框图。例如,电子设备1000可以是移动电话,计算机,数字广播用户设备,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
208.参照图12,电子设备1000可以包括以下至少一个组件:处理组件1002,存储器1004,电源组件1006,多媒体组件1008,音频组件1010,输入/输出(i/o)的接口1012,传感器组件1014,以及通信组件1016。
209.处理组件1002通常控制电子设备1000的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件1002可以包括至少一个处理器1020来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件1002可以包括至少一个模块,便于处理组件1002和其他组件之间的交互。例如,处理组件1002可以包括多媒体模块,以方便多媒体组件1008和处理组件1002之间的交互。
210.存储器1004被配置为存储各种类型的数据以支持在电子设备1000的操作。这些数据的示例包括用于在电子设备1000上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器1004可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(sram),电可擦除可编程只读存储器(eeprom),可擦除可编程只读存储器(eprom),可编程只读存储器(prom),只读存储器(rom),磁存储器,快闪存储器,磁盘或光盘。
211.电源组件1006为电子设备1000的各种组件提供电力。电源组件1006可以包括电源管理系统,至少一个电源,及其他与为电子设备1000生成、管理和分配电力相关联的组件。
212.多媒体组件1008包括在所述电子设备1000和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(lcd)和触摸面板(tp)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括至少一个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的唤醒时间和压力。在一些实施例中,多媒体组件1008包括一个前置摄像头和/或后置摄像头。当电子设备1000处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
213.音频组件1010被配置为输出和/或输入音频信号。例如,音频组件1010包括一个麦克风(mic),当电子设备1000处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器1004或经由通信组件1016发送。在一些实施例中,音频组件1010还包括一个扬声器,用于输出音频信号。
214.i/o接口1012为处理组件1002和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
215.传感器组件1014包括至少一个传感器,用于为电子设备1000提供各个方面的状态评估。例如,传感器组件1014可以检测到电子设备1000的打开/关闭状态,组件的相对定位,例如所述组件为电子设备1000的显示器和小键盘,传感器组件1014还可以检测电子设备1000或电子设备1000一个组件的位置改变,用户与电子设备1000接触的存在或不存在,电子设备1000方位或加速/减速和电子设备1000的温度变化。传感器组件1014可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件1014还可以包括光传感器,如cmos或ccd图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件1014还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
216.通信组件1016被配置为便于电子设备1000和其他设备之间有线或无线方式的通信。电子设备1000可以接入基于通信标准的无线网络,如wifi,2g或3g,或它们的组合。在一个示例性实施例中,通信组件1016经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件1016还包括近场通信(nfc)模块,以促进短程通信。例如,在nfc模块可基于射频识别(rfid)技术,红外数据协会(irda)技术,超宽带(uwb)技术,蓝牙(bt)技术和其他技术来实现。
217.在示例性实施例中,电子设备1000可以被至少一个应用专用集成电路(asic)、数字信号处理器(dsp)、数字信号处理设备(dspd)、可编程逻辑器件(pld)、现场可编程门阵列(fpga)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述图1至图10任一实施例的调用方法。
218.在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器1004,上述指令可由电子设备1000的处理器1020执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是rom、随机存取存储器(ram)、cd-rom、磁带、软盘和光数据存储设备等。
219.本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本公开旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
220.应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献