[發明專利]一種兼容裸機工具鏈多分區嵌入式配置方法及系統在審
| 申請號: | 202011004916.6 | 申請日: | 2020-09-21 |
| 公開(公告)號: | CN112130929A | 公開(公告)日: | 2020-12-25 |
| 發明(設計)人: | 肖銀皓 | 申請(專利權)人: | 廣東財經大學 |
| 主分類號: | G06F9/445 | 分類號: | G06F9/445;G06F9/448 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 510320 廣*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 兼容 裸機 工具 分區 嵌入式 配置 方法 系統 | ||
本發明公開了一種兼容裸機工具鏈多分區嵌入式配置方法及系統,通過收集模塊讀取系統配置生成各個分區本身的代碼,生成操作系統啟動分區的代碼報告給操作系統,創建各個分區和線程從而初始化分區,可以大大增加在微控制器創建多分區應用程序時的工具鏈的選擇范圍。絕大多數微控制器廠商僅提供裸機工具鏈,而這些工具鏈往往是閉源的。首先,本發明允許在創建多分區系統時使用這些工具鏈,使得多分區系統能夠得到普及。其次,由于各個分區的代碼和供微內核啟動各個分區的代碼是自動生成的,最高優先級的線程會自動得到調用,程序員無需關心具體要在各個分區啟動完成后的主函數中調用哪個線程。
技術領域
本公開涉及嵌入式設備領域,具體涉及一種兼容裸機工具鏈多分區嵌入式配置方法及系統,適用于借助原有的裸機開發環境開發多分區的微控制器嵌入式系統。
背景技術
隨著技術的進步,各類嵌入式設備和非嵌入式設備及其組織方法日益復雜,因此出現了多種組織方式。某些嵌入式系統不具備獨立的保護域,所有代碼均運行在內核態;另一些嵌入式系統具備獨立的保護域,運行在不同保護域的代碼具備不同的特權級別。此時,我們需要將整個嵌入式系統分成多個分區分開編譯運行。然而,對于微控制器而言,雖然每個分區的代碼段(code)和只讀數據段(rodata)已經被存放于Flash等只讀存儲器中,其可讀寫數據段(rwdata)和空數據段(bss)仍然需要在上電時被初始化。而且,如果用戶使用C++,上電初始化還必須包括靜態全局對象的構造函數。
分區是保護區域,每個保護區域由一組MPU寄存器配置描述,記錄了允許被該保護區域訪問的存儲器。一個保護區域內可以有一個或多個線程。
現有的此類系統的配置方法均采用傳統操作系統的方式,令操作系統將可讀寫數據段和空數據段初始化后再由分區本身在運行時調用構造函數。采用此種方法,需要讓操作系統得知可讀寫數據段在ROM中的存儲位置并且完成搬運,以及得知空數據段的位置以及將其清空。然而,不同的工具鏈具備不同的報告rwdata和bss段的方法,而且不同的架構具備不同的特點使得初始化代碼可能各不相同。如果要令操作系統初始化這些段落,那么該分區必須被封裝于某種可被操作系統讀取的可執行文件格式內。
首先,這無疑復雜化了操作系統本身,因為它現在要具備文件系統功能和二進制格式解析器功能,而這些功能僅在系統啟動時使用一次,白白消耗寶貴的ROM和RAM資源。
第二,這還會復雜化對工具鏈的配置,因為大多數微控制器開發環境提供的工具鏈都是為裸機開發準備的,并不具備輸出通用二進制格式(如elf或者pe格式)的能力。
第三,微控制器的裸機開發工具鏈中已經具備了對rwdata和bss段的初始化功能,使用此類配置方法時這些功能只能棄置不用。
第四,由于某些微控制器有其特殊性,因此在初始化rwdata和bss段時有時需要一些特殊配置(比如與C或C++運行時庫相關的一些初始化程序等),這些特殊配置已經被裸機開發工具鏈實現,使用此種方法時我們必須在操作系統中再次實現這些配置流程。
發明內容
為了解決上述問題,本公開提供一種兼容裸機工具鏈多分區嵌入式配置方法及系統,通過收集模塊讀取系統配置生成各個分區本身的代碼,生成操作系統啟動分區的代碼報告給操作系統,創建各個分區和線程從而初始化分區。
為了實現上述目的,根據本公開的一方面,提供一種兼容裸機工具鏈多分區嵌入式配置方法,所述方法包括以下步驟:
S100:線程信息收集模塊讀取系統配置;
S200:代碼生成模塊生成各個分區本身的代碼;
S300:代碼生成模塊生成微內核操作系統啟動分區的代碼,并啟動所述代碼將這些分區的各個線程的主入口點、棧位置和主函數報告給微內核操作系統模塊;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于廣東財經大學,未經廣東財經大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202011004916.6/2.html,轉載請聲明來源鉆瓜專利網。





