yjy239的博客
Android 重学系列 Binder驱动初始化 Binder的Looper初始化(三) Android 重学系列 Binder驱动初始化 Binder的Looper初始化(三)
如果遇到问题请到:https://www.jianshu.com/p/2ab3aaf2aeb6 ServiceMananger 的初始化第二步 把进程对象注册到Binder驱动中文件:/frameworks/native/cmds/serv
2019-05-03
Android 重学系列 Binder驱动的初始化 映射原理 Android 重学系列 Binder驱动的初始化 映射原理
背景让我们继续看看Binder的初始化流程。上一篇,经过千辛万苦终于到了内核驱动中的open方法。现在到了内存映射的阶段,也是binder为什么高效的主要原因。 注意下面的源码,是来自Android的Linux 内核 3.18 如果遇到问题
2019-05-02
Android 重学系列 Binder驱动的初始化 syscall原理 Android 重学系列 Binder驱动的初始化 syscall原理
背景聊完前面的红黑树算法,让我复习,学习Binder驱动的内容。Binder可以说是整个Android系统中最为常用的进程间通讯。无论是AMS,WMS,PMS,几乎所有的Android核心服务都通过Binder向四面八方的应用通信。可以说是
2019-05-02
Android重学系列 红黑树 Android重学系列 红黑树
背景红黑树,是一个比较复杂的数据结构。让我们分析一下,整个AVL树的性质。AVL最明显的特点就是,每个节点左右子树的高度差不超过1。那么就会势必产生这样的性质:当插入一个新的节点的时候时间复杂度是O(LogN)还有没有办法更快的?因此红黑树
2019-03-31
Android重学系列 AVL树 Android重学系列 AVL树
背景接着上面那个二叉搜索树来讲。有思考过二叉搜索树最差的搜索时间复杂度吗?最差的时候,二叉搜索树插入的数据刚好是一条直线,这样时间复杂度就蜕变和链表没什么区别(就是从O(logN)蜕变到O(n)级别)。因此AVL树因此诞生了。 如下图所示:
2019-03-22
Android重学系列 二叉搜索树 Android重学系列 二叉搜索树
背景Binder这一块涉及的比较广,囫囵吞枣的讲,结果只会把字数堆上多高我不清楚。清楚的是,这样阅读起来吃力。而Binder涉及的知识面比较广,在Binder驱动下层使用到了红黑树,因此我将提前讲红黑树算法(相当于知识点捡漏吧)。本来这个算
2019-03-17
SystemServer到Home的启动 SystemServer到Home的启动
本文简书地址:https://www.jianshu.com/p/a59068928590 如果出错欢迎来到下面指出。 背景很多老哥看了上一篇的博文有点云里雾里,没关系,这些东西贵在坚持,不懂多查查,自然就懂了。毕竟也不是什么高深的数学推导
RxJava 源码浅析 RxJava 源码浅析
https://www.jianshu.com/p/9e3a0bc5680a 如果遇到问题请到这里讨论 背景本来想写底层Binder的原理,但是涉及的范围有点广,正在写binder底层涉及到的红黑树算法解析。与此同时,公司需要升级rxjav
Android 重学系列--系统启动到Activity Android 重学系列--系统启动到Activity
背景为什么要写这个,是因为做android到今天,发现自己的基础不牢固,很多东西早年明白是怎么回事,下意识的知道怎么做,android这一块做久了过多的思考业务与设计,反而原理开始模模糊糊了。但是探究其原因,是过久没接触,成为了下意识行为。
重学系列--系统启动到Activity(下) 重学系列--系统启动到Activity(下)
Zygote 进程间通信原理不熟悉Linux编程的同学看到死循环最后这一段,可能就有点懵。这里我解释一遍,在构造一下整个流程以及模型估计就能明白了。 虽然是socket通信,但是实际上和我们常说Java的socket编程稍微有一点点不一样。
从onRestoreInstanceState报错到源码浅析 从onRestoreInstanceState报错到源码浅析
今天遇到了一个比较有意思的问题,也比较简单,就顺手记录下来。 下面是报错内容: java.lang.IllegalArgumentException: Wrong state class, expecting View State but
2018-12-13
横向浅析Small,RePlugin两个插件化框架 横向浅析Small,RePlugin两个插件化框架
如果,读这篇文章发现错误或者疑惑的欢迎在这里讨论:https://www.jianshu.com/p/d824056f510b 目录 一 背景 二 个人实现思路 1.Activity注册问题 2.源码分析原理 3.越过Android系统检
8 / 9