30、RTE代碼生成信息生成部140、每RTE生成代碼運行時間數(shù)據(jù)庫 150、以及控制部160。
[0049] 模板文件接收部110接收多個模板文件,并提供至應用程序信息提取部120。其 中,多個模板文件能夠包含對應用程序的軟件組件模板文件、RTE模板文件、以及0S模板文 件中的至少一個文件。
[0050] 應用程序信息提取部120通過分析多個模板文件來提取應用程序的信息,并將其 提供至運行時間分析部130。
[0051] 在一實施例中,應用程序信息提取部120能夠通過分析對應用程序的軟件組件模 板文件來提取應用程序的種類,并能夠根據(jù)應用程序的種類提取網(wǎng)絡(luò)信息。
[0052] 在應用程序的種類是周期運行性應用程序的情況下,應用程序信息提取部120能 夠提取應用程序運行時用于傳輸數(shù)據(jù)的網(wǎng)絡(luò)信息。
[0053] 另一方面,在應用程序的種類是非周期運行性應用程序的情況下,應用程序信息 提取部120能夠提取與在應用程序內(nèi)向其他應用程序傳輸數(shù)據(jù)時所使用的函數(shù)相關(guān)的信 息。
[0054] 在另一實施例中,應用程序信息提取部120能夠通過分析RTE模板文件來提取應 用程序運行時所使用的0S任務(wù)的種類以及應用程序運行方法。
[0055] 在又一實施例中,應用程序信息提取部120能夠通過分析0S模板文件來提取0S 任務(wù)的種類。
[0056] 運行時間分析部130參考每RTE生成代碼運行時間數(shù)據(jù)庫150來分析對由應用程 序信息提取部120提取的應用程序信息的運行時間,并將分析結(jié)果提供至RTE代碼生成信 息生成部140。
[0057] RTE代碼生成信息生成部140基于由運行時間分析部130分析出的、對應用程序信 息的運行時間來生成RTE代碼生成信息。
[0058] 圖3是用于說明根據(jù)本發(fā)明的RTE代碼生成裝置的執(zhí)行過程的例示圖。圖3 所公開的一實施例,涉及RTE代碼生成裝置通過分析多個模板文件而能夠提取調(diào)度信息 (Scheduling Information)的一實施例。
[0059] RTE代碼生成裝置100接收多個模板文件。例如,RTE代碼生成裝置100接收對 applicationl的軟件組件模板文件310、對application2的軟件組件模板文件320、RTE模 板文件330、以及0S模板文件340。
[0060] RTE代碼生成裝置100通過分析對應用程序的軟件組件模板文件來提取應用程序 的種類。
[0061] 例如,RTE代碼生成裝置100通過分析對applicationl的軟件組件模板文件310, 能夠提取出application 1的種類是周期運行性應用程序,且以10ms為周期運行的信息。
[0062] 再例如,RTE代碼生成裝置100通過分析對application〗的軟件組件模板文件 320,能夠提取出application 2的種類是非周期運行性應用程序,且在具有特定請求的情 況下運行的信息。
[0063] RTE代碼生成裝置100通過分析RTE模板文件來提取應用程序運行時所使用的0S 任務(wù)的種類以及應用程序運行方法。
[0064] 例如,RTE代碼生成裝置100通過分析RTE模板文件330,能夠提取出 applicationl的運行時使用的0S任務(wù)是0s任務(wù)_A(0sTask_A)、并通過0sAlarm_A實現(xiàn)運 行的信息。另外,RTE代碼生成裝置100通過分析RTE模板文件,能夠提取出application〗 的運行時使用的0S任務(wù)是0sTask_B、并通過0sEvent_A運行的信息。
[0065] RTE代碼生成裝置100通過分析0S模板文件來提取0S任務(wù)的種類。
[0066] 例如,RTE代碼生成裝置100通過分析0S模板文件340,能夠提取出0s任務(wù)_A的 種類是基本類型(Basic)、0sTask_B的種類是擴展類型(Extended)的信息。
[0067] RTE代碼生成裝置100能夠通過參考每RTE生成代碼運行時間數(shù)據(jù)庫來分析對上 述提取的信息的運行時間,并能夠基于分析結(jié)果生成對應用程序的RTE代碼生成信息350。
[0068] 圖4是用于說明根據(jù)本發(fā)明的RTE代碼生成裝置的執(zhí)行過程的例示圖。圖4所公 開的一實施例,涉及RTE代碼生成裝置通過分析多個模板文件而能夠提取通信方式信息的 一實施例。
[0069] 參考圖4, RTE代碼生成裝置100接收多個模板文件。例如,RTE代碼生成裝置 100接收對applicationl的軟件組件模板文件310、對application2的軟件組件模板文件 320、RTE模板文件330、以及0S模板文件340。
[0070] RTE代碼生成裝置100分析對應用程序的軟件組件模板文件,在應用程序的種類 是周期運行性應用程序的情況下,提取應用程序運行時用于傳輸數(shù)據(jù)的網(wǎng)絡(luò)信息。
[0071] 例如,RTE代碼生成裝置100通過分析對applicationl的軟件組件模板文件310, 能夠提取出applicationl運行時通過CAN網(wǎng)絡(luò)傳輸數(shù)據(jù)的信息。
[0072] RTE代碼生成裝置100通過分析對應用程序的軟件組件模板文件,在應用程序的 種類是非周期運行性應用程序的情況下,提取與在應用程序內(nèi)向其他應用程序傳輸數(shù)據(jù)時 所使用的函數(shù)相關(guān)的信息。
[0073] 例如,RTE代碼生成裝置100通過分析對application2的軟件組件模板文 件320,提取如下信息:application2根據(jù)特定請求而運行,并向內(nèi)部的其他應用程序 (Application)傳輸數(shù)據(jù),因此需要提供使用軟件緩沖(software buffer)的通信形態(tài)的 Rte_Write_applicationl 函數(shù)。
[0074] RTE代碼生成裝置100能夠利用上述提取的信息來生成RTE代碼生成信息350。
[0075] 在一實施例中,RTE代碼生成裝置100參考每RTE生成代碼運行時間數(shù)據(jù)庫,分析 對上述提取的信息的運行時間,且基于分析結(jié)果能夠生成對應用程序的RTE代碼生成信息 350〇
[0076] 圖5是用于說明對根據(jù)本發(fā)明的RTE代碼生成信息的模擬驗證過程的參考圖。
[0077] 參考圖5,以往,RTE代碼生成信息為applicationl每隔10ms運行、運行時所使 用的0S任務(wù)的種類是Basic的情況下,如附圖標記510所示,在10ms、20ms、30ms、40ms時 applicationl 運行。
[0078] 但是,應用程序分析裝置能夠從RTE代碼生成裝置100 (圖1)接收RTE代碼生成 信息,并參考每RTE生成代碼運行時間數(shù)據(jù)庫來分析對RTE代碼生成信息的時機(timing), 且基于分析結(jié)果管理時機錯誤(timing error)。
[0079] 例如,應用程序分析裝置參考每RTE生成代碼運行時間數(shù)據(jù)庫,分析出RTE代碼生 成信息中〇S Alarm代碼的運行時間是10ns、OS Task Activate代碼的運行時間是50ns、 RTE start代碼的運行時間是25ns。應用程序分析裝置可以從時機觀點( 逆苕) 確認是否有運行的完整性(特別是時機觀點)。
[0080] 本發(fā)明RTE代碼生成裝置100基于對應用程序運行時間的分析結(jié)果來生成對應用 程序的RTE代碼生成信息,因此能夠如附圖標記520所示確保運行時機。
[0081] 圖6是用于說明對根據(jù)本發(fā)明的RTE代碼生成信息的模擬驗證過程的參考圖。
[0082] 參考圖6, RTE代碼生成裝置100 (圖1)通過分析對應用程序的軟件組件模板文 件,能夠提取如下信息:應用程序根據(jù)特定請求而運行,并向內(nèi)部的其他應用程序傳輸數(shù) 據(jù),因此需要提供使用軟件緩沖的通信形態(tài)的Rte_Write_applicationl ()函數(shù)。
[0083] 應用程序分析裝置參考每RTE生成代碼運行時間數(shù)據(jù)庫,來分析通過RTE代碼生 成裝置100生成的RTE代碼生成信息中Rte_Write_applicationl ()函數(shù)的運行時間。例 如,RTE代碼生成裝置100參考每RTE生成代碼運行時間數(shù)據(jù)庫能夠?qū)te_內(nèi)部函數(shù)1的 運行時間分析為l〇ns,將Rte_內(nèi)部函數(shù)2的運行時間分析為25ns。
[0084] 另外,RTE代碼生成裝置100通過分析對應用程序的軟件組件模板文件,能夠提取 如下信息:應用程序每隔特定周期運行,應用程序運行時用于傳輸數(shù)據(jù)的網(wǎng)絡(luò)信息。而且, 應用程序分析裝置能夠參考每RTE生成代碼運行時間數(shù)據(jù)庫對通過RTE代碼生成裝置100 生成的RTE代碼生成信息進行時機分析。
[0085] 例如,應用程序分析裝置參考每RTE生成代碼運行時間數(shù)據(jù)庫,能夠分析出執(zhí)行 RTE代碼生成信息中Rte_Write_application2()函數(shù)時用于