Android hwcomposer服务启动流程
客户端 binder远程调用 服务端
surfaceflinger --binder--> hwcomposer

.hal文件编译时生成支持binder进程间远程调用通信的cpp文件
在out/soong/.intermediates/hardware/interfaces/graphics/composer/2.1/
目录下找到对应的.h和.cpp文件



registerAsService()函数就是.hal编译成cpp文件时自动生成的方法,
用于注册成为服务
在out/soong/.intermediates/hardware/interfaces/graphics/composer/2.1
搜索registerAsService()能看到它的实现。


本文详细解释了Android系统中hwcomposer服务的启动过程,涉及binder远程调用、HAL模块加载、loadModule()和createHalWithAdapter()流程,以及hw_module_t和hw_device_t的区别。还介绍了如何通过动态库和接口映射表实现不同模块间的交互。
最低0.47元/天 解锁文章
2073

被折叠的 条评论
为什么被折叠?



