一种硬件数据获取方法、系统和计算机设备技术方案

技术编号:26596913 阅读:15 留言:0更新日期:2020-12-04 21:18
本申请涉及一种硬件数据获取方法、系统和计算机设备,其中,该硬件数据获取方法包括:在硬件抽象层创建与当前应用相对应的当前的虚拟客户端,获取与当前的虚拟客户端相对应的虚拟提供端,并将当前的虚拟客户端放入虚拟提供端的队列,其中,队列用于存储需要通过虚拟提供端获取到硬件数据的各个虚拟客户端,且在虚拟提供端从硬件中获取到硬件数据时,将虚拟提供端获取的硬件数据复制到队列中的各个虚拟客户端,将当前的虚拟客户端获取的硬件数据,提供给与当前的虚拟客户端相对应的当前应用,解决了相关技术中两个以及两个以上的应用无法同时占用一个硬件资源,存在硬件资源利用率低的问题,提高了硬件资源的利用率。

【技术实现步骤摘要】
一种硬件数据获取方法、系统和计算机设备
本申请涉及操作系统
,特别是涉及一种硬件数据获取方法、系统和计算机设备。
技术介绍
硬件是计算机硬件的简称,是指计算机系统中由电子、机械和光电元件等组成的各种物理装置的总称,这些物理装置按系统结构的要求构成一个有机整体为计算机软件运行提供物质基础。在车载信息娱乐IVI(In-VehicleInfotainment,简称IVI)系统中,其中的硬件资源,例如包括,麦克风(英文全称Microphone,简称为MIC)、照相机等硬件,当一个应用使用这个硬件资源的时候,另一个应用是不可以使用的,例如,蓝牙电话过程中,VR语音是不可以使用MIC来识别用户命令的,也可以理解为当两个以及两个以上的应用同时需要占用一个硬件资源的时候,会产生冲突,因此存在硬件资源利用率低的问题。目前针对相关技术中两个以及两个以上的应用无法同时占用一个硬件资源,存在硬件资源利用率低的问题,尚未提出有效的解决方案。
技术实现思路
本申请实施例提供了一种硬件数据获取方法、系统和计算机设备,以至少解决相关技术中两个以及两个以上的应用无法同时占用一个硬件资源,存在硬件资源利用率低的问题。第一方面,本申请实施例提供了一种硬件数据获取方法,所述方法包括:在接收到当前应用需要获取硬件中的硬件数据指令时,在硬件抽象层创建与所述当前应用相对应的当前的虚拟客户端;获取与所述当前的虚拟客户端相对应的虚拟提供端,并将所述当前的虚拟客户端放入所述虚拟提供端的队列,其中,所述队列用于存储需要通过所述虚拟提供端获取到硬件数据的各个虚拟客户端,且在所述虚拟提供端从所述硬件中获取到所述硬件数据时,将所述虚拟提供端获取的所述硬件数据复制到所述队列中的各个虚拟客户端;将所述当前的虚拟客户端获取的所述硬件数据,提供给与所述当前的虚拟客户端相对应的所述当前应用。在其中一些实施例中,获取与所述当前的虚拟客户端相对应的虚拟提供端,并将所述当前的虚拟客户端放入所述虚拟提供端的队列包括:判断所述硬件抽象层是否存在与所述当前的虚拟客户端相对应的所述虚拟提供端;在所述硬件抽象层不存在与所述当前的虚拟客户端相对应的所述虚拟提供端时,创建与所述当前的虚拟客户端相对应的所述虚拟提供端,并将所述当前的虚拟客户端放入所述虚拟提供端的队列;在所述硬件抽象层存在与所述当前的虚拟客户端相对应的所述虚拟提供端时,将所述当前的虚拟客户端放入所述虚拟提供端的队列。在其中一些实施例中,在所述虚拟提供端从所述硬件中获取到所述硬件数据时,将所述虚拟提供端获取到的所述硬件数据复制到所述队列中的各个所述虚拟客户端包括:将所述虚拟提供端获取到的所述硬件数据保存在所述虚拟提供端的缓存区;从所述队列中依次查找各个虚拟客户端,并将所述缓存区的硬件数据复制到队列中的各个虚拟客户端。在其中一些实施例中,在所述当前的虚拟客户端记录有与所述当前应用相对应的参数时,将所述缓存区的硬件数据复制到各个所述虚拟客户端之后,所述方法还包括:判断所述当前的虚拟客户端得到的所述硬件数据与所述参数的格式是否一致;在所述格式不一致时,所述当前的虚拟客户端通过重采样将得到的所述硬件数据的格式转换为与所述参数匹配的格式。在其中一些实施例中,在所述当前的虚拟客户端记录有与所述当前应用相对应的参数时,创建与所述当前的虚拟客户端相对应的所述虚拟提供端包括:创建与所述当前的虚拟客户端相对应的所述虚拟提供端,并将所述当前的虚拟客户端记录的所述参数提供给所述虚拟提供端,其中,所述虚拟提供端根据所述参数从所述硬件中获取所述硬件数据。在其中一些实施例中,在硬件抽象层创建与所述当前应用相对应的当前的虚拟客户端之前,且在所述当前的虚拟客户端记录有与所述当前应用相对应的参数时,所述方法还包括:在接收到所述当前应用需要获取所述硬件中的硬件数据指令时,在与所述当前应用相对应的应用程序框架层创建记录对象,并将所述当前应用的所述参数提供给所述记录对象,其中,所述记录对象将所记录的所述参数提供给与所述当前应用相对应的所述当前的虚拟客户端;在所述应用程序框架层创建所述记录对象时,将所述当前的虚拟客户端获取的所述硬件数据,提供给与所述当前的虚拟客户端相对应的所述当前应用包括:将所述当前的虚拟客户端获取的所述硬件数据提供给与所述当前的虚拟客户端相对应的所述记录对象,且所述记录对象通过与所述当前应用分享内存的方式,向所述当前应用提供所述硬件数据。在其中一些实施例中,所述虚拟客户端位于所述硬件抽象层的上层,所述虚拟提供端位于所述硬件抽象层的下层。第二方面,本申请实施例提供了一种硬件数据获取系统,所述系统包括:中央处理器和硬件;所述中央处理器用于在接收到当前应用需要获取硬件中的硬件数据指令时,在硬件抽象层创建与所述当前应用相对应的当前的虚拟客户端;所述中央处理器还用于获取与所述当前的虚拟客户端相对应的虚拟提供端,并将所述当前的虚拟客户端放入所述虚拟提供端的队列,其中,所述队列用于存储需要通过所述虚拟提供端获取到硬件数据的各个虚拟客户端,且在所述虚拟提供端从所述硬件中获取到所述硬件数据时,将所述虚拟提供端获取的所述硬件数据复制到所述队列中的各个虚拟客户端;所述中央处理器还用于将所述当前的虚拟客户端获取的所述硬件数据,提供给与所述当前的虚拟客户端相对应的所述当前应用。第三方面,本申请实施例提供了一种计算机设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述第一方面所述的硬件数据获取方法。第四方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述第一方面所述的硬件数据获取方法。相比于相关技术,本申请实施例提供的一种硬件数据获取方法,通过在接收到当前应用需要获取硬件中的硬件数据指令时,在硬件抽象层创建与所述当前应用相对应的当前的虚拟客户端,获取与所述当前的虚拟客户端相对应的虚拟提供端,并将所述当前的虚拟客户端放入所述虚拟提供端的队列,其中,所述队列用于存储需要通过所述虚拟提供端获取到硬件数据的各个虚拟客户端,且在所述虚拟提供端从所述硬件中获取到所述硬件数据时,将所述虚拟提供端获取的所述硬件数据复制到所述队列中的各个虚拟客户端,将所述当前的虚拟客户端获取的所述硬件数据,提供给与所述当前的虚拟客户端相对应的所述当前应用,解决了解决相关技术中两个以及两个以上的应用无法同时占用一个硬件资源,存在硬件资源利用率低的问题,提高了硬件资源的利用率。本申请的一个或多个实施例的细节在以下附图和描述中提出,以使本申请的其他特征、目的和优点更加简明易懂。附图说明此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:图1是根据本申请实施本文档来自技高网...

【技术保护点】
1.一种硬件数据获取方法,其特征在于,所述方法包括:/n在接收到当前应用需要获取硬件中的硬件数据指令时,在硬件抽象层创建与所述当前应用相对应的当前的虚拟客户端;/n获取与所述当前的虚拟客户端相对应的虚拟提供端,并将所述当前的虚拟客户端放入所述虚拟提供端的队列,其中,所述队列用于存储需要通过所述虚拟提供端获取到硬件数据的各个虚拟客户端,且在所述虚拟提供端从所述硬件中获取到所述硬件数据时,将所述虚拟提供端获取的所述硬件数据复制到所述队列中的各个虚拟客户端;/n将所述当前的虚拟客户端获取的所述硬件数据,提供给与所述当前的虚拟客户端相对应的所述当前应用。/n

【技术特征摘要】
1.一种硬件数据获取方法,其特征在于,所述方法包括:
在接收到当前应用需要获取硬件中的硬件数据指令时,在硬件抽象层创建与所述当前应用相对应的当前的虚拟客户端;
获取与所述当前的虚拟客户端相对应的虚拟提供端,并将所述当前的虚拟客户端放入所述虚拟提供端的队列,其中,所述队列用于存储需要通过所述虚拟提供端获取到硬件数据的各个虚拟客户端,且在所述虚拟提供端从所述硬件中获取到所述硬件数据时,将所述虚拟提供端获取的所述硬件数据复制到所述队列中的各个虚拟客户端;
将所述当前的虚拟客户端获取的所述硬件数据,提供给与所述当前的虚拟客户端相对应的所述当前应用。


2.根据权利要求1所述的方法,其特征在于,获取与所述当前的虚拟客户端相对应的虚拟提供端,并将所述当前的虚拟客户端放入所述虚拟提供端的队列包括:
判断所述硬件抽象层是否存在与所述当前的虚拟客户端相对应的所述虚拟提供端;
在所述硬件抽象层不存在与所述当前的虚拟客户端相对应的所述虚拟提供端时,创建与所述当前的虚拟客户端相对应的所述虚拟提供端,并将所述当前的虚拟客户端放入所述虚拟提供端的队列;
在所述硬件抽象层存在与所述当前的虚拟客户端相对应的所述虚拟提供端时,将所述当前的虚拟客户端放入所述虚拟提供端的队列。


3.根据权利要求1所述的方法,其特征在于,在所述虚拟提供端从所述硬件中获取到所述硬件数据时,将所述虚拟提供端获取到的所述硬件数据复制到所述队列中的各个所述虚拟客户端包括:
将所述虚拟提供端获取到的所述硬件数据保存在所述虚拟提供端的缓存区;
从所述队列中依次查找各个虚拟客户端,并将所述缓存区的硬件数据复制到队列中的各个虚拟客户端。


4.根据权利要求3所述的方法,其特征在于,在所述当前的虚拟客户端记录有与所述当前应用相对应的参数时,将所述缓存区的硬件数据复制到各个所述虚拟客户端之后,所述方法还包括:
判断所述当前的虚拟客户端得到的所述硬件数据与所述参数的格式是否一致;
在所述格式不一致时,所述当前的虚拟客户端通过重采样将得到的所述硬件数据的格式转换为与所述参数匹配的格式。


5.根据权利要求2所述的方法,其特征在于,在所述当前的虚拟客户端记录有与所述当前应用相对应的参数时,创建与所述当前的虚拟客户端相对应的所述虚拟提供端包括:
创建与所述当前的虚拟客户端相对应的所述虚拟...

【专利技术属性】
技术研发人员:刘山和
申请(专利权)人:湖北亿咖通科技有限公司
类型:发明
国别省市:湖北;42

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1