1.一種車載計算裝置,所述車載計算裝置包括:
處理器;以及
存儲裝置,所述存儲裝置存儲用于初始化所述車載計算裝置的操作系統(tǒng)的指令,所述指令可由所述處理器執(zhí)行來:
起始服務加載進程;
通過所述服務加載進程加載關鍵服務;
啟動人機接口;
通過所述人機接口啟動最后一次使用的應用程序;并且
響應于使用其余服務的請求而啟動所述其余服務。
2.如權利要求1所述的車載計算裝置,其中通過所述人機接口啟動所述最后一次使用的應用程序包括啟動所述最后一次使用的應用程序的依賴性服務和/或應用程序。
3.如權利要求1或2中任一項所述的車載計算裝置,其中所述指令可被進一步執(zhí)行來初始化虛擬機,從第一類別列表加載類別,并且在起始所述服務加載進程之前選擇性地加載所述車載計算裝置的資源,所述第一類別列表中的所述類別的每一個具有小于加載時間閾值的加載時間并且被多于進程閾值的多個進程所利用。
4.如權利要求3所述的車載計算裝置,其中所述指令可被進一步執(zhí)行來在起始所述服務加載進程之后從第二類別列表加載類別,所述第二類別列表中的每個類別具有大于所述加載時間閾值的加載時間并且被多于所述進程閾值的多個進程所利用。
5.如權利要求1-4中任一項所述的車載計算裝置,其中所述指令可被進一步執(zhí)行來在所述計算裝置的服務管理器處從應用程序接收對請求的服務的請求,確定所述請求的服務是否已經(jīng)在所述計算裝置上運行,如果所述請求的服務尚未運行則起始所述請求的服務。
6.如權利要求5所述的車載計算裝置,其中所述指令可被進一步執(zhí)行來在所述請求的服務正在運行的情況下將與所述請求的服務相關聯(lián)的服務句柄返回至所述應用程序。
7.如權利要求1-6中任一項所述的車載計算裝置,所述指令可被進一步執(zhí)行來接收將被使用的驅(qū)動程序的通知、初始化所述驅(qū)動程序并且選擇性地初始化由所述驅(qū)動程序支持的硬件實例。
8.如權利要求7所述的車載計算裝置,其中選擇性地初始化由所述驅(qū)動程序支持的硬件實例包括:確定與由所述驅(qū)動程序支持的每個硬件實例相關聯(lián)的初始化階段,并且針對與第一初始化階段相關聯(lián)的每個硬件實例,初始化所述硬件實例。
9.如權利要求8所述的車載計算裝置,其中選擇性地初始化由所述驅(qū)動程序支持的硬件實例包括:對于不與第一初始化階段相關聯(lián)的每個硬件實例,將所述硬件實例的條目添加在同與所述硬件實例相關聯(lián)的所述階段匹配的相關聯(lián)的階段列表中。
10.如權利要求9所述的車載計算裝置,所述指令可被進一步執(zhí)行來針對第一初始化階段之后的每個初始化階段,取回與所述初始化階段相關聯(lián)的階段列表,并且初始化包括在與所述初始化階段相關聯(lián)的所述階段列表中的每個硬件實例。
11.如權利要求1-10中任一項所述的車載計算裝置,其中所述人機接口包括在所述車載計算裝置的顯示裝置上顯示的圖形用戶界面。
12.一種用于初始化計算裝置的操作系統(tǒng)中的應用程序的方法,所述方法包括:
起始服務加載進程;
通過所述服務加載進程加載關鍵服務;
啟動人機接口;
通過所述人機接口啟動最后一次使用的應用程序;以及
響應于使用其余服務的請求而啟動所述其余服務。
13.如權利要求12所述的方法,其還包括初始化虛擬機,加載選自第一類別列表的類別,以及在起始所述服務加載進程之前加載所述計算裝置的資源,所述第一類別列表中的每個類別具有小于加載時間閾值的加載時間并且被多于進程閾值的多個進程所利用。
14.如權利要求12或13中任一項所述的方法,其還包括:在起始所述服務加載進程之后加載選自第二類別列表的類別,所述第二類別列表中的每個類別具有大于所述加載時間閾值的加載時間并且被多于所述進程閾值的多個進程所利用。
15.如權利要求13或14中任一項所述的方法,其中所述服務加載進程被配置來初始化所述操作系統(tǒng)的服務并且向服務管理器注冊所述服務,其中所述虛擬機是Dalvik虛擬機,并且其中所述方法還包括調(diào)用Zygote進程來加載選自所述第一類別列表的所述類別。