Android--Binder驱动浅析

来源:互联网 发布:2017网络最火歌曲 编辑:程序博客网 时间:2024/06/04 18:56
/frameworks/native/cmds/servicemanager/service_manager.cint 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;}
0 0