沉淀、分享、成长,让自己和他人都能有所收获!😄
📢Android HAL采用HAL module和HAL stub结合的形式进行架构,HAL stub不是一个Share Library(共享程序),在编译时上层只拥有访问HAL stub的函数指针,并不需要HAL stub。上层通过HAL module提供的统一接口获取并操作HAL stub,so文件只会被mapping到一个进程,也不存在重复mapping和重入问题。
在Android系统中,HAL module架构主要分为如下3个结构体。
- struct hw_module_t
- struct hw_module_methods_t
- struct hw_device_t
以上3个抽象概念在文件hardware.c中进行了具体描述,而HAL模块的源代