Quantcast
Channel: Gityuan
Browsing all 119 articles
Browse latest View live

Image may be NSFW.
Clik here to view.

Android存储系统之架构篇

基于Android 6.0的源码,剖析存储架构的设计一、概述本文讲述Android存储系统的架构与设计,涉及到最为核心的便是MountService和Vold这两个模块以及之间的交互。上一篇文章Android存储系统之源码篇从源码角度介绍相关模块的创建与启动过程,那么本文主要从全局角度把握和剖析Android的存储系统。MountService:Android...

View Article


Image may be NSFW.
Clik here to view.

理解ContentProvider原理(一)

基于Android 6.0源码剖析,本文涉及的相关源码:frameworks/base/core/java/android/app/ActivityThread.java frameworks/base/core/java/android/app/ContextImpl.java frameworks/base/core/java/android/app/IActivityManager.java...

View Article


Android进程调度之adj算法

一、概述提到进程调度,可能大家首先想到的是Linux cpu调度算法,进程优先级之类概念,本文并不打算介绍这些内容,而是介绍Android...

View Article

Image may be NSFW.
Clik here to view.

理解Android线程创建流程

基于Android 6.0源码剖析,分析Android线程的创建过程/android/libcore/libart/src/main/java/java/lang/Thread.java /art/runtime/native/java_lang_Thread.cc /art/runtime/native/java_lang_Object.cc /art/runtime/thread.cc...

View Article

Image may be NSFW.
Clik here to view.

binderDied()过程分析

一. 概述理解Android进程启动之全过程介绍了进程是如何从AMS.startProcessLocked一步步创建的; 当进程不再需要时便会有杀进程的过程; 理解杀进程的实现原理介绍了Process.killProcess()如何一步步地将进程杀死.当系统内存不足时,会触发lmk杀进程; 以及系统本身通过AMS也会控制系统中各个状态的进程个数上限....

View Article


Image may be NSFW.
Clik here to view.

理解Android进程启动之全过程

一. 概述Android系统将进程做得很友好的封装,对于上层app开发者来说进程几乎是透明的. 了解Android的朋友,一定知道Android四大组件,但对于进程可能会相对较陌生. 一个进程里面可以跑多个app(通过share uid的方式), 一个app也可以跑在多个进程里(通过配置Android:process属性).再进一步进程是如何创建的, 可能很多人不知道fork的存在....

View Article

Image may be NSFW.
Clik here to view.

Android进程绝杀技--forceStop

基于Android 6.0源码剖析,force-stop的全过程一.概述1.1...

View Article

Image may be NSFW.
Clik here to view.

理解Binder线程池的管理

基于Android 6.0源码剖析,分析Binder线程池以及binder线程启动过程。frameworks/base/cmds/app_process/app_main.cpp frameworks/native/libs/binder/ProcessState.cpp framework/native/libs/binder/IPCThreadState.cpp...

View Article


Image may be NSFW.
Clik here to view.

PackageManager启动篇

基于Android 6.0源码, 分析PackageManagerService的启动过程frameworks/base/services/core/java/com/android/server/pm/PackageManagerService.java...

View Article


Installd守护进程

基于Android 6.0的源码剖析installd的过程system/core/rootdir/init.rc frameworks/base/cmds/installd/installd.cpp rameworks/base/cmds/installd/commands.cpp rameworks/base/cmds/installd/utils.cpp 一、...

View Article

ART虚拟机之Trace原理

分析Art虚拟机的trace原理,相关源码都位于/art/runtime目录:/art/runtime/ - signal_catcher.cc - runtime.cc - intern_table.cc - thread_list.cc - java_vm_ext.cc - class_linker.cc - gc/heap.cc 一、概述Android...

View Article

Native进程之Trace原理

一. 概述当发生ANR(Application Not Response,对于Java进程可通过kill -3向目标进程发送信号SIGNAL_QUIT, 输出相应的traces信息保存到目录/data/anr/traces.txt;而对于Native进程可通过...

View Article

理解Android ANR的处理过程

基于Android 6.0源码, 分析当发生ANR时系统的处理过程frameworks/base/core/java/android/os/Debug.java frameworks/base/core/jni/android_os_Debug.cpp system/core/libcutils/debugger.c 一....

View Article


Image may be NSFW.
Clik here to view.

Input系统—InputDispatcher线程

基于Android 6.0源码, 分析InputManagerService的启动过程frameworks/base/services/core/java/com/android/server/input/InputManagerService.java...

View Article

Image may be NSFW.
Clik here to view.

Input系统—UI线程

一. 概述前面文章都是介绍了两个线程InputReader和InputDispatcher的工作过程。在InputDispatcher的过程讲到 调用InputChanel通过socket与远程进程通信,本文便展开讲解这个socket是如何建立的。对于InputReader和InputDispatcher都是运行在system_server进程;...

View Article


Image may be NSFW.
Clik here to view.

Input系统—进程交互

基于Android 6.0源码, 分析Input系统的进程交互过程分析InputManagerService的启动过程.一....

View Article

Image may be NSFW.
Clik here to view.

Input系统—ANR原理分析

基于Android 6.0源码, 分析Input事件发生ANR的原理一. ANR概述当input事件处理得慢就会触发ANR,那ANR内部原理是什么,哪些场景会产生ANR呢。 “工欲善其事必先利其器”,为了理解input...

View Article


Image may be NSFW.
Clik here to view.

WindowManagerService启动篇

基于Android 6.0源码, 分析WMS的启动过程。一. 概述Surface:代表画布WMS: 添加window的过程主要功能是添加Surface,管理所有的Surface布局,以及Z轴排序问题;SurfaceFinger: 将Surface按次序混合并显示到物理屏幕上;1.1 类图说明: 点击查看大图WMS继承于IWindowManager.Stub,...

View Article

WMS之启动窗口过程

基于Android 6.0源码, 分析启动窗口的启动和结束过程。一. 概述Activity组件启动后,窗口并非马上显示,而是先显示starting window,作为Activity的预览窗口。startActivity启动过程分析介绍了Activity 的启动过程,那么本文将从window角度再来说说这个过程。二. 启动startingWindowAMS.startActivity...

View Article

Image may be NSFW.
Clik here to view.

Android图形系统概述

基于Android 6.0源码, 简述Android图形系统frameworks/native/services/surfaceflinger/ frameworks/native/libs/gui/ 一. 概述Android系统中图形系统是相当复杂的,包括WindowManager,SurfaceFlinger,Open GL,GPU等模块。...

View Article
Browsing all 119 articles
Browse latest View live