本發明專利技術屬于嵌入式實時操作系統開發領域,具體涉及一種基于信息共享處理機制的分區操作系統時間監控方法。該方法包括以下步驟:1、建立共享數據塊;2、建立累積器資源;3、計算分區外運行時間;4、將此分區外運行時間記錄共享數據塊上;5、對分區內運行實體進行時間監控;該方法是實現了對分區、分區內進程和虛中斷運行時間的時間監控,幫助嵌入式實時操作系統開發者從運行時間角度獲取系統真實運行信息。
【技術實現步驟摘要】
本專利技術屬于嵌入式實時操作系統開發領域,具體涉及。
技術介紹
隨著綜合化、模塊化系統的發展,嵌入式操作系統從單一平板式結構的操作系統,發展到復雜的多分區結構的操作系統。在分區操作系統中,存在兩個層次的調度。在核心中,多個分區按照調度表配置分配的時間順序運行,在一個分區時間窗口運行完成后,會切換到下一個分區運行;在分區中,分區中的進程采用基于優先級的調度算法,分區內虛中斷也會占用分區的運行時間,進程和虛中斷無法感知在其運行時間是否發生了分區切換。時間對嵌入式應用是極其關鍵的資源,嵌入式系統開發者通常很關心分區和分區內進程、虛中斷的執行時間,需要通過時間監控數據獲取系統的真實運行信息。對于分區操作系統,由于分區內進程、虛中斷無法感知核心中分區的切換,給監控分區內的進程、虛中斷真實運行時間帶來了困難。
技術實現思路
為了解決
技術介紹
中的問題,本專利技術提供一種使系統開發者可以獲取分區及分區內進程、虛中斷的時間監控數據的基于信息共享處理機制的分區操作系統時間監控方法。本專利技術的具體技術方案:1)在操作系統核心初始化階段為每個分區分配一個供核心和分區共同訪問的共享數據塊;所述共享數據塊用于每個分區的分區外運行時間、分區的本次切入時間;2)在分區初始化過程中,初始化累積器資源;所述累積器資源包括用于記錄一個分區運行時間同時記錄分區的上一次更新時間的分區累積器,用于記錄一個虛中斷運行時間的虛中斷累積器,用于記錄多個進程運行時間的多個進程累積器;3)計算分區外運行時間;3.1)獲取分區切出時間在核心操作系統運行中,當發生分區切換時,對于每一個分區,核心操作系統記錄此分區上一次切出的時間;3.2)獲取分區本次切入時間當再次切入此分區時,核心操作系統記錄切入此分區的本次切入時間;3.3)計算分區外運行時間;根據分區上一次切出的時間和分區的本次切入時間,計算此分區的分區外運行時間;4)將此分區外運行時間,分區的本次切入時間記錄到此分區對應的共享數據塊上;5)對分區內運行實體進行時間監控;所述運行實體包括分區本體、分區內進程以及分區內虛中斷A、分區內進程的時間監控;在分區操作系統運行中,當進程發生切換時,首先查詢步驟4)所述的共享數據塊中記錄的分區外運行時間,判斷是否發生了分區切換;若未發生分區切換,則根據進程開始運行時間和進程結束時間,求差算出分區內進程的本次運行時間;將分區內進程的本次運行時間增加到進程累積器中;若發生了分區切換,則對本次運行時間進行修正,將分區內進程的本次運行時間減去分區外運行時間;將修正后的分區內進程的本次運行時間增加到進程累積器中;B、分區內虛中斷的時間監控;在分區操作系統運行中,當切換到虛中斷處理時,記錄虛中斷處理的開始時間,退出虛中斷時,記錄結束時間;若未發生分區切換,根據結束時間和開始時間計算本次虛中斷處理時間;若發生分區切換,則根據虛中斷開始時間和結束時間,求差算出分區內虛中斷本次運行時間;將分區內虛中斷本次運行時間增加到虛中斷累積器中;C、對分區運行時間進行監控;在分區操作系統運行中,在進程或虛中斷發生切換時,檢查是否發生分區切換,如果發生了分區切換,則同時對分區本次運行時間進行計算;具體如下:通過分區累計器內的上一次分區的更新時間、步驟3)所述的分區外運行時間和當前時間進行計算,公式為:分區本次運行時間=(當前時間)_(上一次分區的更新時間)_(分區外運行時間)將分區本次運行時間增加到分區累積器中;6)重復步驟3)至步驟5),實現對操作系統內所有分區、分區內進程和分區內虛中斷的事件監控。本專利技術的優點在于:1、本專利技術的方法實現了對分區、分區內進程和虛中斷運行時間的時間監控,幫助嵌入式實時操作系統開發者從運行時間角度獲取系統真實運行信息?!靖綀D說明】圖1計算分區外運行時間的示意圖。圖2核心和分區通過共享數據塊完成時間監控信息傳遞的示意圖。圖3分區內進程、分區內虛中斷時間監控流程圖。【具體實施方式】本專利技術提供了,該方法的具體步驟是:1)在操作系統核心初始化階段為每個分區分配一個供核心和分區共同訪問的共享數據塊;所述共享數據塊用于每個分區的分區外運行時間、分區的本次切入時間;2)在分區初始化過程中,初始化累積器資源;所述累積器資源包括用于記錄一個分區運行時間同時記錄分區的上一次更新時間的分區累積器,用于記錄一個虛中斷運行時間的虛中斷累積器,用于記錄多個進程運行時間的多個進程累積器;3)計算分區外運行時間;3.1)獲取分區切出時間在核心操作系統運行中,當發生分區切換時,對于每一個分區,核心操作系統記錄此分區上一次切出的時間;3.2)獲取分區本次切入時間當再次切入此分區時,核心操作系統記錄切入此分區的本次切入時間;當前第1頁1 2 本文檔來自技高網...

【技術保護點】
一種基于信息共享處理機制的分區操作系統時間監控方法,其特征在于,包括以下步驟:1)在操作系統核心初始化階段為每個分區分配一個供核心和分區共同訪問的共享數據塊;所述共享數據塊用于每個分區的分區外運行時間、分區的本次切入時間;2)在分區初始化過程中,初始化累積器資源;所述累積器資源包括用于記錄一個分區運行時間同時記錄分區的上一次更新時間的分區累積器,用于記錄一個虛中斷運行時間的虛中斷累積器,用于記錄多個進程運行時間的多個進程累積器;3)計算分區外運行時間;3.1)獲取分區切出時間在核心操作系統運行中,當發生分區切換時,對于每一個分區,核心操作系統記錄此分區上一次切出的時間;3.2)獲取分區本次切入時間當再次切入此分區時,核心操作系統記錄切入此分區的本次切入時間;3.3)計算分區外運行時間;根據分區上一次切出的時間和分區的本次切入時間,計算此分區的分區外運行時間;4)將此分區外運行時間,分區的本次切入時間記錄到此分區對應的共享數據塊上;5)對分區內運行實體進行時間監控;所述運行實體包括分區本體、分區內進程以及分區內虛中斷A、分區內進程的時間監控;在分區操作系統運行中,當進程發生切換時,首先查詢步驟4)所述的共享數據塊中記錄的分區外運行時間,判斷是否發生了分區切換;若未發生分區切換,則根據進程開始運行時間和進程結束時間,求差算出分區內進程的本次運行時間;將分區內進程的本次運行時間增加到進程累積器中;若發生了分區切換,則對本次運行時間進行修正,將分區內進程的本次運行時間減去分區外運行時間;將修正后的分區內進程的本次運行時間增加到進程累積器中;B、分區內虛中斷的時間監控;在分區操作系統運行中,當切換到虛中斷處理時,記錄虛中斷處理的開始時間,退出虛中斷時,記錄結束時間;若未發生分區切換,根據結束時間和開始時間計算本次虛中斷處理時間;若發生分區切換,則根據虛中斷開始時間和結束時間,求差算出分區內虛中斷本次運行時間;將分區內虛中斷本次運行時間增加到虛中斷累積器中;C、對分區運行時間進行監控;在分區操作系統運行中,在進程或虛中斷發生切換時,檢查是否發生分區切換,如果發生了分區切換,則同時對分區本次運行時間進行計算;具體如下:通過分區累計器內的上一次分區的更新時間、步驟3)所述的分區外運行時間和當前時間進行計算,公式為:分區本次運行時間=(當前時間)?(上一次分區的更新時間)?(分區外運行時間)將分區本次運行時間增加到分區累積器中;6)重復步驟3)至步驟5),實現對操作系統內所有分區、分區內進程和分區內虛中斷的事件監控。...
【技術特征摘要】
【專利技術屬性】
技術研發人員:贠海順,李運喜,陳曉磊,梅濤,徐曉光,張東,
申請(專利權)人:中國航空工業集團公司西安航空計算技術研究所,
類型:發明
國別省市:陜西;61
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。