android actviity模糊,Framework启动过程浅析
淺顯的總結一下Framework啟動大概過程
總體
Android底層是linux系統,因而在開機時仍然是運行天字第一號進程inti,讀取init.rc來創建第一個Dalvik進程zygote,下面是個Framework啟動的整體圖
1 、Init進程
Linux系統天字第一號進程,在我們眼中吊的飛起的Android系統在LInux中只不過是一個linux的一個應用程序而已,就通過啟動一個用戶級程序init的方式,完成引導進程。init始終是第一個進程.需要讀取一下配置文件
Init.rc
Init.marvell.rc
然后進入創建zygote(受精卵)
2、zygote
第一個Dalvik虛擬機程序Zygote(受精卵),接下來所有的Dalvik虛擬機進程都是由它孵化出來,他創建時主要做了2件事
(1)Socket服務端:接受啟動新的Dalvik進程的命令
(2)Framework共享類及共享資源:zygote進程啟動后會裝載一些共享的類和資源,這樣新的Dalvik進程就不需要再次裝載
然后就開始孵化第一個Dalvik進程SystemSever
在zygote啟動中時,為了便于理解將其總結為5個部分
3、SystemSever
Android的所有服務循環框架都是建立SystemServer@(SystemServer.java)上。在SystemServer.java中看不到循環結構,只是可以看到建立了init2的實現函數,建立了一大堆服務,并AddService到service Manager。其中最重要的服務當屬ActivityManagerSever(Ams),實在systemReady()調用后啟動的,主要跟管理Activity啟動相關,總結如下
4、啟動Activity
AMS構造Activity對象放入mMainStack隊列,則第一個運行的Actviity就是該Activity
版權聲明:本文為博主原創文章,未經博主允許不得轉載。
原文:http://blog.csdn.net/xsf50717/article/details/47167989
總結
以上是生活随笔為你收集整理的android actviity模糊,Framework启动过程浅析的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: html搜索结果 重置,搜索结果和后退按
- 下一篇: html设置返回的样式,jQuery设置