基于CarAudioManager的调用流程深入学习Vendor Interface(客户端接口部分)
发布时间
阅读量:
阅读量
需求
应对系统升级过程中存在的技术障碍(模块化设计)
a. 在早期阶段,各硬件供应商通过.h头文件形式,分别开发各自的.so文件以实现硬件功能。
如今已转变为.hal文件格式(Binder化),类似于.aidl的实现方式。
HIDL的设计目标在于使框架能够在不重新编译HAL组件的前提下完成替换。HAL组件将由硬件供应商或SOC制造商进行构建,并存放于设备的/vendor分区中,从而允许框架在自身的分区中通过OTA方式进行更新,而无需重新编译HAL组件。
b. 以往的输出内容被封装进system分区中的多个.so文件中。
目前,所有与供应商相关的组件应当作为一个独立的实体进行处理,例如vendor.img(其中包含.so文件)。这样,在系统升级过程中,可以单独提取system.img进行替换。无需逐一联系各个硬件供应商,即可使用更新后的system.img完成系统升级操作。
如图所示(图示较为简略,敬请谅解)


还没有任何评论哟~
