Android开机初始化流程

一、

    首先启动Linux基础系统,然后引导加载Linux kernel并启动初始化进程(init)如图1-1所示,

                                                                   

二、

    接着启动Linux守护进程(daemon)这个过程主要需要启动以下内容: 如图1-2

                

                                                     

    启动Linux守护进程的同时还要启动Zygote进程,它主要包括以下需要注册和启动的内容:如图1-3

   

三、初始化runtime进程在这个过程中需要处理以下操作:如图1-4

   

四、runtime进程发送一个请求到Zygote,开始启动系统服务,这时Zygote将为系统服务进程启动一个dalvik虚拟机实例,并启动系统服务,如图1-5

                                                      

五、系统服务将启动原生系统服务,主要包括surface flinger和Audio Flinger,这些本地服务都将注册到服务管理器(service manager)作为IPC服务的目标,如图1-6

                                                     

六、系统服务将启动Android管理服务,Android管理服务都将被注册到服务管理器上,如图1-7

                                                    

七、最后,当系统启动完所有的服务之后会处于等待状态,等待程序运行。但是,每一个应用程序都将启动一个单独的线程,,如图1-8所示,系统启动了一个Home进程和Contact进程,那么,进程间将如何进行交互呢,这就需要IPC机制了  

                                                  

   

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值