`
yanwenjinhaha
  • 浏览: 15289 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

android vold架构详解(3)_两个Socket

阅读更多
Vold架构最最重要的其实是两个Socket的创建和监听

1. Vold Socket
2. Kernel-Uevent Socket
理解清楚这两个Socket的用途,以及它们什么时候创建和使用,就能清晰理解整个Vold架构了。

首先讲讲Vold架构在整个Android系统的位置。
Android系统从上到下依次是,App、Application Framework、Library、Linux Kernel。
Vold架构处于Library层,它负责接收下层Linux Kernel Usb Driver向上发送的Usb Add、Remove、Change消息。
Vold对这些消息处理后,在向上Application Framework层发送Usb change、mounted、unmounted消息。
同时,Vold也能接收上层Application Framework层向下发送的mount、unmount、format等消息。

问题来了,
Vold怎么接收下层Linux Kernel Usb Driver向上发送的消息?
Vold对这些消息处理后,怎么向上Application Framework层发送的消息?
Vold怎么接收上层Application Framework层向下发送的消息?

答案就是上面提到的两个Socket,
Vold通过Kernel-Uevent Socket接收下层Linux Kernel Usb Driver向上发送的消息。
Vold对这些消息处理后,通过Vold Socket向上Application Framework层发送的消息。
Vold通过Vold Socket接收上层Application Framework层向下发送的消息。
这就是整个Vold架构的最最重要的地方了。

详细看下面复杂的时序图吧。



理解了上面那张图,对于Vold架构也就清楚了。剩余的就是细节,有需要的时候在细细研究解析。
  • 大小: 413.1 KB
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics