Linux系统调用Android HIDL接口的方法、装置及存储介质制造方法及图纸

技术编号:29488707 阅读:19 留言:0更新日期:2021-07-30 19:00
本发明专利技术提供一种Linux系统调用Android HIDL接口的方法、装置及存储介质,包括:Linux系统程序调用Android HAL接口以及Android HAL接口的兼容封装库;HAL兼容封装库基于binder驱动,查询并得到Android HALBinder Service的client实例;基于所述client实例调取相对应的AndroidHIDL接口。基于所述Android HIDL接口调取相应的结果,将所述结果通过Binder返回给HAL兼容封装库。HAL兼容封装库在接收到Binder返回的结果之后,将结果通过函数返回给Linux系统程序。本发明专利技术提供的技术方案,本发明专利技术提供的Android HAL接口兼容方法,保障了Linux系统可以调用AndroidHAL接口。从而可以实现在Android HAL上boot Linux操作系统。

【技术实现步骤摘要】
Linux系统调用AndroidHIDL接口的方法、装置及存储介质
本专利技术涉及操作系统
,尤其涉及一种Linux系统调用AndroidHIDL接口的方法、装置及存储介质。
技术介绍
随着Android生态在移动端的垄断,基本上所有的移动端SOC芯片以及硬件模组等都是只提供适配Android系统的解决方案。Android系统虽然是基于LinuxKernel建立,但是其采用了Bionic以及其他私有核心库,形成了一套封闭生态体系,与目前Linux操作系统无法兼容。无法兼容的存在原因之一是,Linux系统无法调用AndroidHAL接口。
技术实现思路
本专利技术实施例提供一种Linux系统调用AndroidHIDL接口的方法、装置及存储介质,通过兼容封装binder调用的方式,可以实现Linux程序调用AndroidHIDL接口。本专利技术实施例的第一方面,提供一种Linux系统调用AndroidHIDL接口的方法,包括:Linux系统程序调用AndroidHAL接口以及AndroidHAL接口的兼容封装库;HAL兼容封装库基于binder驱动,查询并得到AndroidHALBinderService的client实例;基于所述client实例调取相对应的AndroidHIDL接口。可选地,在第一方面的一种可能实现方式中,在基于所述client实例调取相对应的AndroidHIDL接口的步骤后,还包括:基于所述AndroidHIDL接口调取相应的结果,将所述结果通过Binder返回给HAL兼容封装库。可选地,在第一方面的一种可能实现方式中,在将所述结果通过Binder返回给LinuxBinderClient后,还包括:HAL兼容封装库在接收到Binder返回的结果之后,将结果通过函数返回给Linux系统程序。可选地,在第一方面的一种可能实现方式中,基于所述binder驱动调取AndroidHIDL接口的方式,用于实现Linux程序调用AndroidHIDL接口。本专利技术实施例的第二方面,提供一种一种Linux系统调用AndroidHIDL接口的装置,包括:Linux系统调用模块,用于使Linux系统程序调用AndroidHAL接口以及AndroidHAL接口的兼容封装库;binder驱动调用模块,用于使HAL兼容封装库基于binder驱动,查询并得到AndroidHALBinderService的client实例;AndroidHIDL接口调用模块,用于基于所述client实例调取相对应的AndroidHIDL接口。可选地,在第二方面的一种可能实现方式中,还包括:返回模块,用于基于所述AndroidHIDL接口调取相应的结果,将所述结果通过Binder返回给HAL兼容封装库。可选地,在第二方面的一种可能实现方式中,还包括:所述返回模块还用于执行以下步骤,包括:HAL兼容封装库在接收到Binder返回的结果之后,将结果通过函数返回给Linux系统程序。可选地,在第二方面的一种可能实现方式中,基于所述binder驱动调取AndroidHIDL接口的方式,用于实现Linux程序调用AndroidHIDL接口。本专利技术实施例的第三方面,提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使所述计算机执行上述第一方面中任意一项所述的安卓运行环境构建的方法。本专利技术实施例的第四方面,提供一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器执行上述第一方面中任意一项所述的安卓运行环境构建的方法。本专利技术提供的一种Linux系统调用AndroidHIDL接口的方法、装置及存储介质,。附图说明图1为Linux系统调用AndroidHIDL接口的方法的第一种实施方式的流程图;图2为Linux系统调用AndroidHIDL接口的方法的第二种实施方式的流程图;图3为Linux系统调用AndroidHIDL接口的装置的第一种实施方式的结构图。具体实施方式为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本专利技术的实施例能够以除了在这里图示或描述的那些以外的顺序实施。应当理解,在本专利技术的各种实施例中,各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本专利技术实施例的实施过程构成任何限定。应当理解,在本专利技术中,“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。应当理解,在本专利技术中,“多个”是指两个或两个以上。“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。“包含A、B和C”、“包含A、B、C”是指A、B、C三者都包含,“包含A、B或C”是指包含A、B、C三者之一,“包含A、B和/或C”是指包含A、B、C三者中任1个或任2个或3个。应当理解,在本专利技术中,“与A对应的B”、“与A相对应的B”、“A与B相对应”或者“B与A相对应”,表示B与A相关联,根据A可以确定B。根据A确定B并不意味着仅仅根据A确定B,还可以根据A和/或其他信息确定B。A与B的匹配,是A与B的相似度大于或等于预设的阈值。取决于语境,如在此所使用的“若”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。下面以具体地实施例对本专利技术的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。本专利技术提供的技术技术方案中,Init是一个命令行程序。其主要工作之一就是建立这些与内核空间交互的文件所在的目录。当Linux内核加载完后,要做的第一件事就是调用init程序,也就是说,init是用户空间执行的第一个程序。关于本专利技术提供本文档来自技高网...

【技术保护点】
1.一种Linux系统调用Android HIDL接口的方法,其特征在于,包括:/nLinux系统程序调用Android HAL接口以及Android HAL接口的兼容封装库;/nHAL兼容封装库基于binder驱动,查询并得到Android HAL Binder Service的client实例;/n基于所述client实例调取相对应的Android HIDL接口。/n

【技术特征摘要】
1.一种Linux系统调用AndroidHIDL接口的方法,其特征在于,包括:
Linux系统程序调用AndroidHAL接口以及AndroidHAL接口的兼容封装库;
HAL兼容封装库基于binder驱动,查询并得到AndroidHALBinderService的client实例;
基于所述client实例调取相对应的AndroidHIDL接口。


2.根据权利要求1所述的Linux系统调用AndroidHIDL接口的方法,其特征在于,
在基于所述client实例调取相对应的AndroidHIDL接口的步骤后,还包括:
基于所述AndroidHIDL接口调取相应的结果,将所述结果通过Binder返回给HAL兼容封装库。


3.根据权利要求2所述的Linux系统调用AndroidHIDL接口的方法,其特征在于,
在将所述结果通过Binder返回给LinuxBinderClient后,还包括:
HAL兼容封装库在接收到Binder返回的结果之后,将结果通过函数返回给Linux系统程序。


4.根据权利要求1所述的Linux系统调用AndroidHIDL接口的方法,其特征在于,
基于所述binder驱动调取AndroidHIDL接口的方式,用于实现Linux程序调用AndroidHIDL接口。


5.一种Linux系统调用AndroidHIDL接口的装置,其特征在于,包括:
Linux系统调用模块,用于使Linux系统程序调用AndroidHAL接口以及AndroidHAL接口的兼容封装库;
binder驱动调用模...

【专利技术属性】
技术研发人员:刘成城
申请(专利权)人:北京鲸鲮信息系统技术有限公司
类型:发明
国别省市:北京;11

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

1