[發明專利]一種實時應用代碼自動生成工具在審
| 申請號: | 202210768959.4 | 申請日: | 2022-07-01 |
| 公開(公告)號: | CN115291878A | 公開(公告)日: | 2022-11-04 |
| 發明(設計)人: | 陳松;譚一鳴 | 申請(專利權)人: | 麒麟軟件有限公司 |
| 主分類號: | G06F8/41 | 分類號: | G06F8/41;G06F9/48;G06F9/50;G06F11/30 |
| 代理公司: | 北京匯智英財專利代理有限公司 11301 | 代理人: | 張俊閣 |
| 地址: | 300450 天津市濱海新區*** | 國省代碼: | 天津;12 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 實時 應用 代碼 自動 生成 工具 | ||
本發明涉及一種實時應用代碼自動生成工具,包括配置模塊:提供用于手動配置實時應用線程執行信息的接口,并可自動生成相應的配置文件;代碼生成模塊:根據配置模塊生成的配置文件生成實時應用源代碼文件;編譯模塊:用于生成編譯實時應用的Makefile文件,并可將實時應用源代碼文件自動編譯為可執行文件。本發明可保證實時應用能夠按照所期望的時間得到調度,不會影響產生結果的時間,確保能夠正常實現實時特性。
技術領域
本專利申請屬于實時操作系統技術領域,更具體地說,是涉及一種實時應用代碼自動生成工具。
背景技術
實時系統指系統的計算正確性,不僅取決于計算的邏輯正確性,還取決于產生結果的時間。如果未滿足系統的時間約束,則認為系統失效,所以在邏輯結果計算正確的前提下,運行結果還必須在規定的時限之前完成,否則將會產生災難性的后果。
實時應用程序實時性的保證,除了依賴于實時系統以外,也取決于實時應用自身的屬性,包括實時應用的優先級、所屬的調度器等,但在實際工作當中,很多程序員忽視了這些屬性的配置,導致實時應用不能按照所期望的時間得到調度,進而影響了產生結果的時間,導致無法實現實時特性。
此外,很多操作系統的內核,如linux,在為應用分配內存時,使用的是延遲分配的策略,即在應用使用內存的時候,才進入系統異常,將物理內存頁面分配給實時應用,這樣會影響實時應用產生結果的時間,這也是在實時應用開發和調試中困擾軟件工程師很重要的一個問題。
發明內容
本發明需要解決的技術問題是提供一種實時應用代碼自動生成工具,運行結果可以在規定的時限之前完成,保證實時應用的正常進行。
為了解決上述問題,本發明所采用的技術方案是:
一種實時應用代碼自動生成工具,包括如下模塊:
配置模塊:提供用于手動配置實時應用線程執行信息的接口,并可自動生成相應的配置文件;
代碼生成模塊:根據配置模塊生成的配置文件生成實時應用源代碼文件;
編譯模塊:用于生成編譯實時應用的Makefile文件,并可將實時應用源代碼文件自動編譯為可執行文件。
本發明技術方案的進一步改進在于:配置模塊包括:
線程配置子模塊,用于配置實時應用的線程數量,及每個線程的優先級、所屬調度器、運行周期、每周期運行時間、每周期運行截止時間;其中每周期運行時間小于等于每周期運行截止時間,每周期運行截止時間小于等于運行周期;
內存配置子模塊,用于配置實時應用的堆棧內存數量,堆棧內存數量就是堆棧大小;
日志配置子模塊,用于使能實時應用的線程的日志,及其日志輸出信息。這里的使能是專有名詞,對應的英文是enable。
本發明技術方案的進一步改進在于:內存配置子模塊還可以選擇配置是否將應用的堆棧鎖定在內存中,避免由于系統交換和回收引起缺頁異常,進而導致實時應用的響應延遲。
本發明技術方案的進一步改進在于:配置模塊生成的配置文件可為json格式或xml格式。
本發明技術方案的進一步改進在于:代碼生成模塊根據配置模塊生成的配置文件,生成實時應用源代碼文件,實時應用源代碼文件為C或python語言。
本發明技術方案的進一步改進在于:編譯模塊所編譯生成的可執行文件格式為elf。
本發明技術方案的進一步改進在于:編譯模塊可生成多種處理器架構的可執行代碼,處理器架構包括x86、arm、arm64和mips的一種或多種。
本發明技術方案的進一步改進在于:代碼生成模塊的工作步驟為:
S1、生成主函數;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于麒麟軟件有限公司,未經麒麟軟件有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202210768959.4/2.html,轉載請聲明來源鉆瓜專利網。





