[發(fā)明專利]一種基于片內(nèi)執(zhí)行且在不具有MMU的SoC片上支持應(yīng)用程序動態(tài)加載的系統(tǒng)有效
| 申請?zhí)枺?/td> | 202010016573.9 | 申請日: | 2020-01-08 |
| 公開(公告)號: | CN111190658B | 公開(公告)日: | 2023-02-28 |
| 發(fā)明(設(shè)計)人: | 徐春光 | 申請(專利權(quán))人: | 樂鑫信息科技(上海)股份有限公司 |
| 主分類號: | G06F9/445 | 分類號: | G06F9/445;G06F8/61;G06F8/65;G06F9/50 |
| 代理公司: | 上海滬慧律師事務(wù)所 31311 | 代理人: | 朱九皋 |
| 地址: | 201203 上海市浦東新區(qū)中國(*** | 國省代碼: | 上海;31 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 基于 執(zhí)行 具有 mmu soc 支持 應(yīng)用程序 動態(tài) 加載 系統(tǒng) | ||
1.一種基于片內(nèi)執(zhí)行且在不具有MMU的SoC片上支持應(yīng)用程序動態(tài)加載的系統(tǒng),其特征在于,包含SoC芯片和外部存儲芯片;
所述SoC芯片不具有MMU;所述外部存儲芯片上保存有主程序和應(yīng)用程序;所述主程序包含應(yīng)用程序加載模塊和應(yīng)用程序清除模塊;所述應(yīng)用程序加載模塊負責(zé)從所述外部存儲芯片中解析所述應(yīng)用程序,準備運行環(huán)境,并跳轉(zhuǎn)到應(yīng)用程序入口開始執(zhí)行;所述應(yīng)用程序清除模塊在所述應(yīng)用程序完成業(yè)務(wù)退出的時候執(zhí)行;
所述應(yīng)用程序包括應(yīng)用程序指令段和應(yīng)用程序數(shù)據(jù)段;所述主程序包括主程序指令段和主程序數(shù)據(jù)段;
所述應(yīng)用程序指令段、所述應(yīng)用程序數(shù)據(jù)段和所述主程序指令段相互獨立,不存在編譯階段的依賴關(guān)系;所述應(yīng)用程序指令段、所述應(yīng)用程序數(shù)據(jù)段和所述主程序數(shù)據(jù)段相互獨立,不存在編譯階段的依賴關(guān)系;
所述應(yīng)用程序以指令重定向方式的訪問所述主程序指令段;
所述應(yīng)用程序數(shù)據(jù)段位于動態(tài)分配的動態(tài)內(nèi)存區(qū)域;所述應(yīng)用程序以動態(tài)內(nèi)存映射方式的訪問所述應(yīng)用程序數(shù)據(jù)段。
2.根據(jù)權(quán)利要求1所述的支持應(yīng)用程序動態(tài)加載的系統(tǒng),其特征在于,所述主程序還包含共享函數(shù)集;所述應(yīng)用程序加載模塊在調(diào)用所述應(yīng)用程序入口時,傳遞所述共享函數(shù)集給所述應(yīng)用程序;所述應(yīng)用程序利用所述共享函數(shù)集訪問所述主程序指令段,實現(xiàn)所述指令重定向。
3.根據(jù)權(quán)利要求1所述的支持應(yīng)用程序動態(tài)加載的系統(tǒng),其特征在于,所述應(yīng)用程序數(shù)據(jù)段包含靜態(tài)數(shù)據(jù)區(qū)和全局數(shù)據(jù)區(qū);所述動態(tài)內(nèi)存區(qū)域的大小是所述靜態(tài)數(shù)據(jù)區(qū)和所述全局數(shù)據(jù)區(qū)大小的總和,由所述應(yīng)用程序加載模塊在加載所述應(yīng)用程序時通過解析所述應(yīng)用程序獲得。
4.根據(jù)權(quán)利要求3所述的支持應(yīng)用程序動態(tài)加載的系統(tǒng),其特征在于,所述動態(tài)內(nèi)存區(qū)域由所述主程序動態(tài)分配。
5.根據(jù)權(quán)利要求3所述的支持應(yīng)用程序動態(tài)加載的系統(tǒng),其特征在于,所述動態(tài)內(nèi)存區(qū)域由所述應(yīng)用程序動態(tài)分配。
6.根據(jù)權(quán)利要求3所述的支持應(yīng)用程序動態(tài)加載的系統(tǒng),其特征在于,所述動態(tài)內(nèi)存區(qū)域,在所述應(yīng)用程序被加載時分配,在所述應(yīng)用程序被卸載時釋放。
7.根據(jù)權(quán)利要求 1所述的支持應(yīng)用程序動態(tài)加載的系統(tǒng),其特征在于,編譯器將所述應(yīng)用程序數(shù)據(jù)段鏈接到非法內(nèi)存區(qū)域;當(dāng)所述應(yīng)用程序加載時,所述主程序建立所述非法內(nèi)存區(qū)域和所述動態(tài)內(nèi)存區(qū)域的映射。
8.根據(jù)權(quán)利要求7所述的支持應(yīng)用程序動態(tài)加載的系統(tǒng),其特征在于,當(dāng)所述應(yīng)用程序訪問所述應(yīng)用程序數(shù)據(jù)段時,對所述非法內(nèi)存區(qū)域的操作引起系統(tǒng)異常;所述主程序接管執(zhí)行權(quán),進入異常處理;在所述異常處理中,所述主程序根據(jù)所述映射,將對所述非法內(nèi)存區(qū)域的訪問轉(zhuǎn)換為對所述動態(tài)內(nèi)存區(qū)域的訪問,完成對所述應(yīng)用程序數(shù)據(jù)段的訪問,并在退出所述異常處理后,將執(zhí)行權(quán)交還于所述應(yīng)用程序。
9.根據(jù)權(quán)利要求7所述的支持應(yīng)用程序動態(tài)加載的系統(tǒng),其特征在于,當(dāng)所述主程序指令段中調(diào)用存儲操作時,所述主程序先判斷操作地址是否屬于所述非法內(nèi)存區(qū)域;如果屬于,所述主程序根據(jù)所述映射,將對所述操作地址的訪問轉(zhuǎn)換為對所述動態(tài)內(nèi)存區(qū)域的訪問,完成對所述應(yīng)用程序數(shù)據(jù)段的訪問;如果不屬于,則直接對所述操作地址進行訪問。
10.根據(jù)權(quán)利要求1所述的支持應(yīng)用程序動態(tài)加載的系統(tǒng),其特征在于,所述應(yīng)用程序加載模塊在跳轉(zhuǎn)到所述應(yīng)用程序入口前,檢查所述應(yīng)用程序的完整性。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于樂鑫信息科技(上海)股份有限公司,未經(jīng)樂鑫信息科技(上海)股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010016573.9/1.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 以注射方式執(zhí)行死刑的自動執(zhí)行車的執(zhí)行床
- 過程執(zhí)行裝置、過程執(zhí)行方法以及過程執(zhí)行程序
- 用以執(zhí)行跳舞電子游戲的執(zhí)行系統(tǒng)及其執(zhí)行方法
- 策略執(zhí)行系統(tǒng)及其執(zhí)行方法
- 腳本執(zhí)行系統(tǒng)和腳本執(zhí)行方法
- 命令執(zhí)行設(shè)備、命令執(zhí)行系統(tǒng)、命令執(zhí)行方法以及命令執(zhí)行程序
- 程序執(zhí)行裝置、程序執(zhí)行系統(tǒng)以及程序執(zhí)行方法
- 處理執(zhí)行設(shè)備和由該處理執(zhí)行設(shè)備執(zhí)行的方法
- 有序任務(wù)的執(zhí)行方法、執(zhí)行裝置和執(zhí)行系統(tǒng)
- 執(zhí)行器(閥門執(zhí)行器)
- 基于MMU實現(xiàn)數(shù)據(jù)保護的仿真器
- 包括存儲管理單元的片上系統(tǒng)及其存儲地址轉(zhuǎn)換方法
- 保存及存儲系統(tǒng)存儲器管理單元上下文的方法、設(shè)備及程序產(chǎn)品
- 存儲器管理
- 用于選擇性的檢查針對可轉(zhuǎn)換存儲器的頁的受保護容器頁對常規(guī)頁類型指示的多頁檢查提示
- 使用聚合存儲器管理單元(MMU)提供存儲器管理功能
- 用于圖形處理環(huán)境中的存儲器管理的設(shè)備和方法
- 一種鋁模體系優(yōu)化的型材
- 一種應(yīng)用于交換機成員端口的調(diào)度方法及調(diào)度系統(tǒng)
- 硬件實現(xiàn)的請求取數(shù)周期的系統(tǒng)接口





