设为首页 加入收藏

TOP

Android 怎么样调用HAL的
2014-11-24 08:42:18 来源: 作者: 【 】 浏览:1
Tags:Android 怎么样 调用 HAL

Android对硬件的调用,google推荐使用HAL的方式进行调用,对于Andriod HAL的写法,可以参考android源码里的hardware目录下几个模块的模版。


在看HAL的编写方法的过程中,会发现整个模块貌似没有一个入口。一般说来模块都要有个入口,比如应用程序有main函数,可以为加载器进行加载执行,dll文件有dllmain,而对于我们自己写的动态链接库,我们可以对库中导出的任何符号进行调用。


问题来了,Android中的HAL是比较具有通用性的,需要上层的函数对其进行加载调用,Android的HAL加载器是如何实现对不同的Hardware Module进行通用性的调用的呢?


带着这个疑问查看Android源码,会发现Android中实现调用HAL是通过hw_get_module实现的。


int hw_get_module(const char *id, const struct hw_module_t **module);


这是其函数原型,id会指定Hardware的id,这是一个字符串,比如sensor的id是


#define SENSORS_HARDWARE_MODULE_ID “sensors”,如果找到了对应的hw_module_t结构体,会将其指针放入*module中。看看它的实现。


Java代码:


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇使用expect脚本登录到root账号并.. 下一篇Android 中如何添加新的键值

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·有没有哪些高效的c++ (2025-12-27 08:20:57)
·Socket 编程时 Accep (2025-12-27 08:20:54)
·计算机网络知识点总 (2025-12-27 08:20:52)
·一篇说人话的文章, (2025-12-27 07:50:09)
·Python Web框架哪家 (2025-12-27 07:50:06)