《Android内核剖析》笔记 第6章 应用框架Framework概述

本章主要是介绍其中的应用框架层(Application Framework),前面的章节已经提到android是基于多进程设计的,先看看如下手稿图(mac下没找到顺手的UML画图工具),其类名基于4.2.2版本:

从上图中可以看出,核心包括了3+X个进程:

  1. servicemanager守护进程:系统启动时自动启动,通过init.rc设置,主要用来加载binder驱动,实现SystemServer与APP进程之间的消息传递,进而实现IPC中转调用;

  2. surfaceflinger守护进程:系统启动时自动启动,通过init.rc设置,他也是一个驱动,每个窗口都对应一个Surface,该驱动的作用就是把各个Surface显示在同一个屏幕上;

  3. SystemServer进程:该进程是zygote孵化出的第一个进程(详见第9章的描述),可以理解为应用框架的服务端,用来提供各种系统服务,核心的包括窗口管理服务WindowManagerService、活动管理服务ActivityManagerService等;

  4. IActivityManager:管理所有应用程序中的Activity,其实现类是ActivityManagerService;当前台应用APP需要启动某个Activity时,需要先通过binder机制请求IActivityManager,OK之后再回调APP进程中的ActivityThread.ApplicationThread进行真正的Activity加载;

  5. IWindowManager:定义应用窗口各种操作的接口,其实现类是WindowManagerService,基于Binder框架实现各窗口的叠放次序、隐藏或显示;当系统接收到按键或触控事件之后驱动会中转到WindowManagerService,之后他回调APP进程中的PhoneWindow.W实现对各类消息的分发;

  6. IWindo

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值