- 博客(6)
- 收藏
- 关注
原创 Java中类与类之间的关系
在Java以及其他的面向对象设计模式中,类与类之间主要存在6中关系,他们分别是:依赖,关联,聚合,组合,继承,实现,并且他们的耦合度依次增强1.Dependence依赖对于两个相对独立的对象,当一个对象负责构造另一个对象的实例,或者依赖另一个对象的服务时,这两个对象间体现的就是依赖关系,简单的理解可以是一个类A使用到了另一个类B,在代码层面表现为,类B作为类A的某个方发的参数,或者局部变量,...
2018-08-31 14:17:04 1268
原创 ActivityManagerService解读之进程管理computeOomAdjLocked方法
上一篇文章我们介绍了updateOomAdjLocked,我们将其分为了五个部分更新前的初始化,计算进程oom,设置进程oom,主动回收一些内存,计算进程pss进行扫尾结束工作。本篇将详细介绍部分之二计算进程oom代码分析分析computeOomAdjLocked之前,我们先重温一下进程oom和Android进程分类相关的基础知识以及补充一些相关的后续分析将要用的一些信息。Android中...
2018-08-30 16:57:52 2092
原创 ActivityManagerService解读之进程管理updateOomAdjLocked方法
经过前面的ActivityManagerService解读之进程管理的介绍,我们知道AMS对进程的管理主要体现于更新LRU集合和更新进程OOM值两个方面。限于篇幅,前一篇没有对更新进程OOM的updateOomAdjLocked方法深入分析,只是介绍了原理。本篇将会详细分析updateOomAdjLocked方法。代码分析ActivityManagerService中updateOomAd...
2018-08-30 10:25:32 3196
原创 ActivityManagerService解读之进程管理(相关信息持续补充)
在介绍updateOomAdjLocked方法之前,我们先补充一些进程相关的信息,便于后续更好的理解。进程/轻量级进程状态S:Suspended 可中断的睡眠,可能是由于输出 Trace、GC 或 debug 被暂停 R:Running/Runnable 运行或就绪状态 D:Disk Sleep 不可中断的睡眠,通常是在等待 I/O,比如磁盘 I/O、网络 I/O...
2018-08-29 16:52:34 789
原创 ActivityManagerService解读之进程管理
简介ActivityManagerService(后续简称为ams)是Android系统框架层中的一个很重要的服务,负责Android四大组建的启动和管理,进程的创建和调度。接下来,咱们今天就来聊聊ams对进程的创建和调度。参考于Android P代码。进程Android系统将尽可能的长时间的保持应用进程,当Android系统内存不足的时候,为了新建进程或运行更重要的进程,最终需要移除...
2018-08-28 15:37:53 1780
原创 Android SSWD(system server Watchdog)工作原理
简介一直在想如何介绍Watchdog,思来想去还是源码比较给力“This class calls its monitor every minute. Killing this process if they don't return”简单粗暴。Android系统为了保证系统的稳定性,搞了这么个Watchdog,专门负责监控Android系统的一些核心服务和线程,并且在这些服务和线程发生异常或者...
2018-08-27 11:24:12 2553 2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人