android系統啓動的時候首先會啓動Linux的基礎進程,加載Linux kernel啓動初始化(init)進程。android
接着,回啓動Linux deamon(守護進程)會啓動如下的內容:socket
①啓動USBdusb管理守護進程來管理USB鏈接。debug
②啓動adb守護進程來管理adb鏈接調試
③啓動debugged守護進程來管理調試程序請求。blog
④啓動ridle守護進程來管理無線管理進程. 請看圖:進程
在啓動init進程會啓動守護進程同時,同時還會啓動一個zygnote進程,其步驟以下:虛擬機
①初始化一個davilk虛擬機實例it
②裝載一個socket請求所需的類和監聽基礎
③建立虛擬機實例來管理虛擬機的實例 如圖所示:bug
再接着,須要初始化Runtime進程,其過程以下:
①註冊服務管理器
②註冊服務管理器,他做爲默認的binder做爲context管理器。
經接着,一個Runtime進程請求到zygnote建立一個davilk虛擬機的實例,如圖:
這樣,一個android實例已經啓動了。