
Android
youngsiri
为未来而战
展开
-
Android Binder机制浅析(一)
Binder是Android系统进程间通信(IPC)方式之一。Linux已经拥有的进程间通信IPC手段包括(Internet Process Connection): 管道(Pipe)、信号(Signal)和跟踪(Trace)、插口(Socket)、报文队列(Message)、共享内存(Share Memory)和信号量(Semaphore)。本文分析的是Binder的实现以及Binder组件Client、Server和Service Manager、Binder驱动的相互关系本文根据网上现有资源进行整合原创 2017-08-17 20:20:19 · 364 阅读 · 0 评论 -
Android Binder机制浅析(二)
Binder是Android系统进程间通信(IPC)方式之一。Linux已经拥有的进程间通信IPC手段包括(Internet Process Connection): 管道(Pipe)、信号(Signal)和跟踪(Trace)、插口(Socket)、报文队列(Message)、共享内存(Share Memory)和信号量(Semaphore)。本文分析的是Binder的实现以及Binder组件Client、Server和Service Manager、Binder驱动的相互关系原创 2017-08-18 14:41:44 · 455 阅读 · 0 评论 -
Android Binder机制浅析(三)
接上文...本文根据网上现有资源进行整合,以及自己的理解,有误之处欢迎指正~~三、MediaService的运行由2.6中的分析,可知defaultServiceManager得到了BpServiceManager,然后MediaPlayerService 实例化后,调用BpServiceManager的addService函数 这个过程中,是servic原创 2017-08-21 19:51:09 · 1195 阅读 · 0 评论 -
Android Binder 设计与实现
[转载] http://blog.youkuaiyun.com/universus/article/details/6211589Binder是android系统进程间通信(IPC)方式之一。linux已经拥有管道,system V IPC,socket等IPC手段,却还要倚赖Binder来实现进程间通信,说明Binder具有无可比拟的优势。深入了解Binder并将之与传统IPC做对比有助于我们深入领会进程间通信的实现和性能优化。本文将对Binder的设计细节做一个全面的阐述,首先通过介绍Binder通信模型和Bi转载 2017-08-22 13:22:02 · 323 阅读 · 0 评论 -
Android BufferQueue生产消费原理概述
Android BufferQueue中核心数据是一个GraphicBuffer的队列。而GraphicBuffer根据使用场合的不同可以从共享内存(即Ashmem,因为这块内存要在应用程序和服务端程序两个进程间共享)或者从硬件图形缓冲区(即Framebuffer,因为它是SurfaceFlinger渲染完要放到屏幕上的)中分配。另外因为用途不同,它的格式,大小,以及在BufferQueue中的数量都可能是不同的原创 2017-08-30 15:32:11 · 2278 阅读 · 0 评论 -
Android 消息处理机制浅析
Android是消息驱动的,平时我们最常使用的就是Message与Handler了,如果使用过HandlerThread或者自己实现类似HandlerThread的东西可能还会接触到Looper,而MessageQueue是Looper内部使用的,对于标准的SDK,我们是无法实例化并使用的(构造函数是包可见性)。我们平时接触到的Looper、Message、Handler都是用JAVA实现的,Android做为基于Linux的系统,底层用C、C++实现的,而且还有NDK的存在,消息驱动的模型怎么可能只存在原创 2017-08-25 17:57:42 · 402 阅读 · 0 评论