zoukankan      html  css  js  c++  java
  • Android驱动学习-内部机制_回顾binder框架关键点

    内部机制_回顾binder框架关键点
    server注册服务时, 对每个服务都提供不同的ptr/cookie,
    在驱动程序里对每个服务都构造一个binder_node, 它也含有ptr/cookie

    client使用服务前要先getService:会在驱动程序里对该服务构造一个binder_ref,
    binder_ref含有desc, node成员, desc是整数, node指向对应服务的binder_node

    使用服务时, client构造数据,调用ioctl:数据里含有handle

    驱动程序根据handle找到binder_ref(desc==handle), 找到binder_node, 再找到server,
    从binder_node取出ptr/cookie连同那些数据发给server

    server根据ptr/cookie知道要调用哪一个服务,....

    最核心函数: ioctl
    client的最核心数据是:handle
    server的最核心数据是:ptr/cookie

  • 相关阅读:
    NOIP2012 借教室
    bzoj1816 扑克牌
    TYVJ1359 收入计划
    NOIP2015 跳石头
    易错点
    散列表
    数学模板
    12. 17 哈理工网络赛
    哈理工 网络赛
    三角形
  • 原文地址:https://www.cnblogs.com/ynxf/p/6920340.html
Copyright © 2011-2022 走看看