您的位置:首页 > 移动开发 > Android开发

Android--Binder驱动浅析

2015-12-13 23:20 447 查看
/frameworks/native/cmds/servicemanager/service_manager.c

int main(int argc, char const *argv[])
{
/**
struct binder_state
{
int fd;          //open()系统调用返回的文件描述符
void *mapped;    //mmap系统调用返回的映射区的起始地址
unsigned mapsize;//映射区的大小
};
*/
struct binder_state * bs;
void * svcmgr = BINDER_SERVICE_MANAGER;

bs = binder_open(128 * 1024);

if (binder_become_context_manager(bs))
{
ALOGE("cannot become context manager (%s)\n", strerror(errno));
return -1;
}

svcmgr_handle = svcmgr;
binder_loop(bs, svcmgr_handler);

return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: