android
文章平均质量分 65
BingshuYang
这个作者很懒,什么都没留下…
展开
-
[Binder机制]大管家ServiceManager启动流程
[Binder机制]大管家ServiceManager启动流程 Binder机制作为android系统IPC(Inter-Process Communication,进程间通信)的主要方式,理解Binder机制至关重要。首先简要介绍IPC的个人理解。IPC的概念是随进程产生而产生的,在操作系统相关知识中,进程代表资源管理单位,每个进程享有独立的内存空间,两个不同的进程之间不能直接互相访问内存原创 2017-04-26 19:09:05 · 611 阅读 · 0 评论 -
[Binder机制]众多Service启动流程-java层Service(一)
上一篇文章中讲述了大管家servicemanager的启动流程,其中servicemanager多次与binder驱动交互,最终由于读取不到service们发送的命令而挂起进程。本篇文章将以一个service启动为例,分析service启动的流程,以便大家更好的理解binder机制中各个角色的交互关系。原创 2017-05-12 20:08:49 · 578 阅读 · 0 评论 -
Android应用进程和SurfaceFlinger的关系
首先一个Android进程会在连接SF服务的时候在SF中创建一个Client对象,Client对象和Android进程一一对应。1中创建Client对象是一个Binder实体,会在进程连接SF返回给Android进程。这样Android通过Binder代理可以向SF发送请求,例如创建Surface每个进程都会通过Client的Binder代理向SF申请一块匿名共享内存ShareClient...原创 2018-03-08 17:42:43 · 454 阅读 · 0 评论 -
Vsync事件分发主要过程
创建两个EventThread线程,一个属于SF,一个属于Choreographer,并运行创建DisSyncThread线程并运行两个EventThread初始化时会添加一个Connection,并且把自己注册给DisSyncThread的mListenners,也就是所谓的观察者模式当有信号VSync来的时候,经过HWC到SF到DisSyncThread,DisSyncThread分发...原创 2018-03-08 20:17:16 · 563 阅读 · 0 评论 -
Input流程简述
InputManagerService:system_server中的binder实体,其实只是native层的代理InputManger:native层真正处理事件的类,持有InputReader和InputDispatcherEventHub:硬件驱动读取到事件并将事件信息写入到设备节点,EventHub负责从设备节点读取事件InputReader:持有InputReaderThrea...原创 2018-03-04 19:38:51 · 403 阅读 · 0 评论 -
Android常见内存泄漏
内存泄漏的基本原因还是因为不使用的对象仍然可达,Android中常出现的就是Activity对象,只要切断Activity的引用或者Activiy退出时切断带有Activity引用的对象都可以避免。Context内存泄漏如果Context对象是Activity,当Activity退出后,其他类仍然保存有该Context,则会内存泄漏,因此这种情况使用getApplicationCont...原创 2018-03-04 10:52:15 · 235 阅读 · 0 评论 -
Activity启动流程
Activity调用startActivity主要是当前进程和AMS之间的交互,如果需要创建新进程则还需要AMS通过Socket通讯方式向Zygote请求创建新进程。 1. 当前进程通过Binder告诉AMS让它开始为启动Activity做准备,同时将当前进程的ActiviyThread传递给Activity,ActivityThread是一个Binder实体,AMS用它实现和当前进程的直接通讯...原创 2018-03-04 11:25:35 · 198 阅读 · 0 评论 -
Android贯穿两层的消息机制(Looper)
Android同一进程中线程的消息传递使用的主要方法就是MessageQueue+Message+Handle+Looper,该方法贯穿Native层和Java层,Java层的实现对于Android工程师来说较为容易理解,Native层由于设计到epoll等linux相关内容较难理解,下面将从MessageQueue的角度理解Native层的消息机制。 各个类的角色: java层: * ...原创 2018-03-05 15:26:41 · 253 阅读 · 0 评论