b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

linux bin文件怎么安装 【adb使用技巧和usb通信原理探索】(2)

电脑杂谈  发布时间:2018-02-22 06:53:44  来源:网络整理

从usb_vendors.c文件中,可以知道vendor信息是被"固化"adbs里面。linux bin文件怎么安装(那是否就可以解释为啥linux不需要adb驱动呢)

adbs_init_vendors

usb_linux.c文件的函数列表

adbs_usb_linux_functions

里面读取函数,主要封装linux usb 通用的访问device的方式。

5. adbd 访问的device文件

adb shell su (root权限) lsof > /sdcard/lsof.data adb pull /sdcard/lsof.data less lsof.data

adbd_access_file

6. adbd源代码分析

调用栈

main(adb.c)main_adb(adb.c)usb_init(usb_linux_client.c)usb_adb_init(usb_linux_client.c)

usb_adb_init的内容, 可以确定adbd确实访问了/dev/android_adb文件(设备结点)

usb_linux_client.c文件定义读取函数,从实现上看它主要通过/dev/android_adb文件与外界通信。

adbd_usb_linux_client_function

7. 串联adbs和adbd(android kernel)

init(android.c)usb_composite_register[&android_usb_driver](android.c)android_bind(android.c)usb_add_config[cdev, &android_config_driver](android.c)android_bind_config(android.c)adb_function_add(f_adb.c)misc_deregister[&adb_device](f_adb.c)static struct miscdevice adb_device = {.minor = MISC_DYNAMIC_MINOR,.name = shortname,.fops = &adb_fops,};static const char shortname[] = "android_adb";

android.c和f_adb.c代码所在路径是/drivers/usb/gadget/ 注意:这里的代码是kernel的源代码,不是Android的源代码(aosp)。如果你也下载了linux kernel, 会发现没有这两个文件的。返回搜狐,查看更多


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-88243-2.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    • 宍户留美
      宍户留美

      台湾已被大陆牢牢控制

    每日福利
    热点图片
    拼命载入中...