[發明專利]一種手機嵌入式系統中動態加載的方法無效
| 申請號: | 200810042343.9 | 申請日: | 2008-09-01 |
| 公開(公告)號: | CN101668283A | 公開(公告)日: | 2010-03-10 |
| 發明(設計)人: | 胡鑄韜 | 申請(專利權)人: | 沃勤網絡科技(上海)有限公司 |
| 主分類號: | H04W8/24 | 分類號: | H04W8/24;G06F9/445 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 200235上海*** | 國省代碼: | 上海;31 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 手機 嵌入式 系統 動態 加載 方法 | ||
技術領域
本發明涉及無線通信技術領域,尤其涉及一種增強手機嵌入式系統加載功能的方法。
背景技術
傳統的手機嵌入式系統(例如ARM、Linux、uClinux、WinCE、PalmOS、Symbian、eCos、uCOS-II、VxWorks、pSOS、Nucleus、ThreadX、Rtems、QNX、INTEGRITY、OSE、C?Executive等系統)都是把程序全部燒入只讀存儲器(ROM)中,手機在FLASH上加載并運行程序。動態加載功能目前只有智能機操作系統(SYMBIAN、WINDOWS?MOBILE)才有,采用實時操作系統的手機平臺(例如基于MIPS的RTOS平臺)不具備動態加載功能。因此,程序的使用受到FLASH大小的限制,并且若程序員需要更新程序,則只能全部更新,而無法做到部分地更新。
要解決上述問題,目前市面上有一種系統:高通的BREW,但是BREW必須配套高通專門的芯片才能使用。
因此,手機開發業界存在一種技術需求:提供一種手機嵌入式系統中動態加載的方法,使得實時操作系統具備動態加載功能。
發明內容
本發明的目的是提供一種手機嵌入式系統中動態加載的方法,包含如下步驟:
編譯應用程序,將應用程序獨立編譯為一個程序文件,程序文件描述了程序文件所支持的處理器架構及節頭表所在的位置;
加載程序文件,通過節頭表讀出指令及只讀數據節、初始化的全局變量節和未初始化的全局變量節在程序文件中的位置,將指令及只讀數據節、初始化的全局變量節和未初始化的全局變量節加載到內存的適當位置即實現程序的動態加載;
初始化運行環境,將堆棧和堆的配置參數傳遞給應用程序,重構_rt_stackheap_init()函數;
參數替換,當執行初始化運行環境步驟至函數_rt_init_stackheap()時,用加載器傳入的參數替換_rt_init_stackheap()函數;
繼續初始化,用加載器傳入的參數繼續初始化程序運行環境步驟;
生成目標代碼,將應用程序生成為ROPI(READ?ONLYPOSITION?INDEPENDENT,只讀位置無關)和RWPI(READ?WRITE?POSITION?INDEPENDENT,讀寫位置無關)代碼模式;
調用宿主函數,首先將宿主函數名稱傳遞給符號表函數,符號表函數將宿主函數的地址返回給應用程序,應用程序將宿主函數的入口參數填寫完畢后跳轉至函數地址,即完成調用宿主函數的過程;
中斷C運行時庫的退出部分流程,完成程序文件的動態加載過程。
在本發明的其中一個實施例中,加載應用程序的步驟包含如下步驟:
讀入程序文件頭部的加載信息;
根據加載信息計算程序加載后所需要使用的內存容量;
根據加載信息將程序加載到內存中;
初始化傳遞給程序的參數列表,將參數列表復制到程序的參數區;
跳轉到程序的入口地址。
本發明的優點是:使手機的實時操作系統具有動態加載功能。
附圖說明
下面結合附圖,通過對本發明的具體實施方式的詳細描述,將使本發明的技術方案及其他有益效果顯而易見。
圖1為本發明手機嵌入式系統中動態加載的方法流程圖;
圖2為本發明中加載程序文件的工作流程圖。
具體實施方式
為了更進一步了解本發明的特征,請參閱以下有關本發明的詳細說明與附圖,然而所附圖式僅提供參考與說明之用,并非用來對本發明的保護范圍加以限制。
如圖1所示,為本發明方法的流程圖。首先101程序開始執行,然后執行102編譯應用程序;編譯應用程序:將應用程序獨立編譯為一個程序文件,主流的程序文件格式有ELF(Executable?and?LinkableFormat)、a.out(UNIXv5標準)、PE(Portable?Executable,Microsoft?Windows專用格式)。ARM公司提供的ADS所生成的程序文件格式是ELF,ELF相對于平面結構的a.out格式有著更好的擴展性和平臺無關性,相對于Windows專用的PE格式,ELF能夠更好地支持異構平臺。ELF文件的格式如下表所示:其文件頭部的ELF?header描述了程序文件所支持的處理器架構及節頭表(Section?header?table)所在的位置。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于沃勤網絡科技(上海)有限公司,未經沃勤網絡科技(上海)有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/200810042343.9/2.html,轉載請聲明來源鉆瓜專利網。





