zoukankan      html  css  js  c++  java
  • adb 架构

    adb是什么? adb就是Android调试桥,很形象啊。 先来看adb原理的逻辑图:

    ADB架构
    adb由两个物理文件组成:
    adb/adb.exe
    运行于PC端,包括Linux、Windows、Mac OS等系统之中,通常是x86架构上(下文中,ADB指整个模块,而adb单独指这一部分);
    adbd
    运行于Android设备的底层Linux之中,ARMv5架构上。

    构建不同文件,通过传入Android.mk的$(BUILD_SIMULATOR)变量是否为真。源码中由ADB_HOST宏用来区分本地主机(adb)和目标机(adbd)。
    区分不同OS,通过传入Android.mk的$(HOST_OS)。它的有效取值包括linux、darwin、freebsd和windows。不同平台的主要差异是USB的控制方法和文件路径。

    ADB各模块定义:

    adb server: 计算机上的一个服务进程,进程名为adb
    adbd (adb daemon) : Android 手机上的一个服务进程,进程名为adbd
    adb client:你可以认为是计算机上的一个终端窗口,进程名也为adb
    DDMS:Dalvik Debug Monitor Service
    Jdwp: Java Debug Wire Protocol

    adbd (ADB daemon):

    运行于device/emulator的守护进程(Local service)。其作用如下:
    1,用来连接device/emulator和adb server,device通过USB连接,emulator通过TCP连接。
    2,为device/emulator提供服务--> adb service(adb服务,注意与adb服务端的区别)的概念,指adbd提供的功能。
    在emulator/device端,adbd也创建local socket和remote socket,前者与通过jdwp与dalvik VM进层通信,后者通过TCP/USB与adb server通信。

  • 相关阅读:
    BZOJ 4025: 二分图
    20180803 题解 Winniechen's Tesst
    前尘浮华一场梦 NOI2018 游记
    UOJ#311. 【UNR #2】积劳成疾
    欢迎到我的新Blog!
    弹飞大爷 BZOJ4764 LCT维护内向基环树森林
    [SCOI2007]修车 BZOJ1070
    KD-Tree
    CDQ分治
    深入解析DC/OS 1.8 – 高可靠的微服务及大数据管理平台
  • 原文地址:https://www.cnblogs.com/shengs/p/9340214.html
Copyright © 2011-2022 走看看