[發明專利]一種基于ARM平臺的Android啟動加速方法有效
| 申請號: | 201410170411.5 | 申請日: | 2014-04-25 |
| 公開(公告)號: | CN104102506B | 公開(公告)日: | 2017-05-31 |
| 發明(設計)人: | 劉發貴;繆漢威 | 申請(專利權)人: | 華南理工大學 |
| 主分類號: | G06F9/445 | 分類號: | G06F9/445 |
| 代理公司: | 廣州粵高專利商標代理有限公司44102 | 代理人: | 何淑珍 |
| 地址: | 511400 廣東省廣州市*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 arm 平臺 android 啟動 加速 方法 | ||
1.一種基于ARM平臺的Android啟動加速方法,其特征在于包括如下步驟:
(1)修改Linux內核編譯選項,添加Enable loadable module support以支持動態模塊加載;編譯基于ARM平臺的Linux內核鏡像;修改Linux內核配置為基于ARM平臺,修改Berkeley Lab Checkpoint/Restart即BLCR內核模塊文件以支持ARM平臺;然后BLCR編譯動態內核模塊;
(2)修改Android的bionic的線程庫文件,添加BLCR動態鏈接庫模塊所需的線程庫API函數接口,修改Android的啟動腳本Init.rc,實現將BLCR的動態內核模塊在系統進入用戶空間后添加進去的功能,以供后續BLCR動態鏈接庫調用;
(3)編寫Android平臺下調用BLCR內核模塊的動態鏈接庫編譯的Android.mk文件,并對BLCR動態鏈接庫模塊進行修改以支持Android系統;將BLCR在X86平臺的API庫移植到ARM平臺;
(4)通過使用BLCR技術實現Android系統的Zygote進程的鏡像備份和從鏡像文件中直接啟動的方法,從而跳過了耗時的Zygote進程預加載類與預加載資源的過程;使用BLCR技術實現Android系統的Zygote進程的鏡像備份包括如下具體執行過程:
(1)將Zygote進程進行阻塞,開始執行進程狀態信息的保存;
(2)保存Zygote進程地址空間信息,主要包括進程的數據段、堆棧段信息,進程的代碼段不需要保存,能通過保存進程的可執行二進制文件路徑;
(3)保存Zygote進程進行上下文切換的CPU信息,主要包括PC程序計數器、PSW寄存器的內容;
(4)保存Zygote進程的打開文件描述符,以便下次從鏡像文件中啟動后能恢復到保存時的狀態;
(5)保存Zygote進程的信號狀態和信號處理函數,以便下次進程能正常捕獲信號并進行相應的處理;
(6)完成將進程保存到鏡像文件后,啟動Zygote進程讓其繼續往下執行,啟動Android系統;
使用BLCR技術實現Android系統的Zygote進程的鏡像恢復包括如下具體執行過程:
(1)阻塞Zygote進程的運行,直接從鏡像文件中加載Zygote進程,進程的代碼段通過保存的進程可執行文件路徑進行恢復;
(2)將鏡像文件中通過斷點保存的Zygote進程地址空間信息進行恢復,主要包括進程的數據段和堆棧段;
(3)將鏡像文件中保存的Zygote進程的上下文切換信息進程恢復,主要有PC程序計數器、PSW狀態寄存器;
(4)根據鏡像文件恢復Zygote進程的打開文件描述符;
(5)根據鏡像文件恢復Zygote進程的信號狀態和信號處理函數;
(6)啟動Zygote進程,然后從斷點處繼續往下執行,這樣便可以跳過耗時的預加載類與預加載資源的過程,實現Android的啟動加速;
(5)編寫Android啟動的Init.rc調用的腳本,判斷鏡像文件是否存在,如果存在則直接從鏡像文件啟動,如果不存在,則生成通過調用BLCR動態內核模塊生成Zygote進程的鏡像文件。
2.根據權利要求1所述的基于ARM平臺的Android啟動加速方法,其特征在于步驟(1)然后通過修改BLCR的內核模塊源碼,使其支持ARM平臺,然后通過交叉編譯鏈將其編譯成基于ARM平臺的動態加載模塊。
3.根據權利要求1或2所述的基于ARM平臺的Android啟動加速方法,其特征在于在步驟(2)中,添加了Android平臺下BLCR動態鏈接庫所需線程庫API函數接口以及修改了Android啟動過程的Init.rc腳本,動態添加了BLCR技術內核模塊。
4.根據權利要求3所述的基于ARM平臺的Android啟動加速方法,所述步驟(3)通過修改BLCR支持Android系統的動態庫源碼以支持ARM平臺的所有Android系統。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于華南理工大學,未經華南理工大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410170411.5/1.html,轉載請聲明來源鉆瓜專利網。





