監控vxworks作業系統中已終止任務的裝置及方法
2023-06-12 04:16:01
專利名稱:監控vxworks作業系統中已終止任務的裝置及方法
技術領域:
本發明涉及計算機作業系統領域,尤其涉及一種監控vxworks作業系統中 已終止任務的裝置及方法。
技術背景vxworks作業系統作為一種實時性能良好的作業系統被廣泛地運用於大 量地嵌入式系統中。在vxworks作業系統中,可被調度的最小單元被稱為任務。隨著網路技 術與多媒體技術的發展,嵌入式系統被設計的越來越複雜。基於vxworks操作 系統的嵌入式系統的軟體實現上,設計者往往會在作業系統中生成大量的任 務。vxworks作業系統只提供了簡單的任務監控手段,但是這些手段無法滿足 用戶更多的對系統中各種任務進行實時監控的需求。vxworks作業系統對每一個任務是通過相應的任務控制塊(Task Control Blocks, TCB)進行管理和控制的。TCB中的一個元素作為任務的狀態機體現 了該任務的當前狀態。當一個任務終止時,vxworks才喿作系統將該任務的狀態 機設置為死亡狀態,但是並沒有將相應的TCB所佔用的內存空間釋放掉,造 成了內存空間的浪費。此外,vxworks作業系統沒有提供針對這些已經終止但 仍然佔用TCB內存空間的任務的監控手段。在複雜的應用環境中,系統中存在大量任務,而內存資源在嵌入式系統中 又顯得尤為重要。因此,對系統中當前存在的任務以及已經終止的任務所佔用 的內存資源進行監控的重要性顯得日益重要。 發明內容本發明的目的在於,提供一種監控vxworks作業系統中已終止任務的裝 置,能夠緩解由已終止任務的TCB佔用內存空間所造成的浪費。本發明的另一目的在於,提供一種監控vxworks作業系統中已終止任務的 方法,能夠緩解由已終止任務的TCB佔用內存空間所造成的浪費。本發明的監控vxworks作業系統中已終止任務的裝置,包括消息接收單 元、存儲單元,其中,消息接收單元,用於接收系統中其他任務的消息,並將 接收到的消息發送至存儲單元;存儲單元,用於添加已終止的TCB信息,並 根據所述已終止的TCB信息通知系統釋放所述TCB佔用的內存。其中,進一步包括分析單元,用於對所述消息接收單元發送的消息進行分 析,識別消息類型,然後將不同類型消息對應的已終止的TCB信息加入至所 述存儲單元。進一步地,可以包括判斷單元,用於比較存儲單元中的已終止的TCB內 存佔用是否超過預定的門限,在超過預定門限時,通知系統釋放已經終止任務 的TCB佔用的內存。本發明的監控vxworks作業系統中已終止任務的方法,包括下列步驟監 控裝置判斷是否收到來自系統中已經終止任務的TCB的通知消息,如果是, 則將所述已經終止的任務的TCB信息加入監控任務的已終止任務鍊表,並通 知系統釋放所述已經終止任務的TCB佔用的內存。其中,在將所述已經終止的任務的TCB信息加入監控任務的已終止任務 鍊表之前,可以進一步包括下列步驟對系統發送的所述通知消息進行分析,識別消息類型,然後將不同類型消 息對應的已終止的TCB信息加入所述已終止任務鍊表中。此外,在所述已經終止的任務的TCB信息加入監控任務的已終止任務鏈 表後,並通知系統釋放所述已經終止任務的TCB佔用的內存之前,進一步包 括下列步驟判斷所述已終止任務鍊表中已終止的TCB內存佔用是否超過預定的門 限,如果是,則通知系統釋^t已經終止任務的TCB佔用的內存。另外,在判斷是否收到來自系統中已經終止任務的TCB的通知消息時, 可以包括下列步驟判斷所述消息是否是任務自然終止的通知消息,或者是否是通知某任務被 終止的消息,如果是,則將被終止的任務的TCB信息加入監控任務的已終止 任務鍊表。進一步地,可以包括下列步驟根據所述消息中的預設標識判斷其是任務自然終止的通知消息,或者是通知某任務被終止的消息。其中,所述消息中的預設標識,為在任務自動結束前向監控裝置發送的自 身要終止的消息中添加。另外,所述消息中的預設標識,為在一任務結束另一任務後向監控裝置發 送的消息中添加。本發明的有益效果是依照本發明的監控vxworks作業系統中已終止任務 的裝置及方法,通過引入監控模塊對系統中其他各任務,尤其是已經終止的任 務的監控,可以提供給用戶一個更為強大的任務控制手段,並能得到已終止任 務的TCB所佔用的內存空間的情況,並在必要的時候作出如釋放已終止任務 TCB空間等調整,可有效的緩解由已終止任務的TCB佔用內存空間所造成的浪費。
圖1為本發明的監控vxworks作業系統中已終止任務的裝置結構示意圖; 圖2為本發明實施例的監控vxworks作業系統中已終止任務的方法流程圖;圖3為本發明的任務自動結束前向監控任務發送消息的方法流程圖; 圖4為本發明的任務結束其他任務後向監控任務發送消息的方法流程圖。
具體實施方式
以下,參考附圖1~4詳細描述本發明的監控vxworks作業系統中已終止任 務的裝置及方法。如圖1所示,為本發明的監控vxworks作業系統中已終止任務的裝置結構 示意圖。該監控裝置,包括消息接收單元、存儲單元。其中,消息接收單元, 用於接收系統中其他任務的消息,並將接收到的消息發送至存儲單元;存儲單 元,其包含已終止任務鍊表,用於添加已終止的TCB信息,並根據所述已終 止的TCB信息通知系統釋放所述TCB佔用的內存。此外,該監控裝置可以進一步包括分析單元,用於對消息接收單元發送來 的消息進行分析,識別消息類型,並將不同類型消息對應的已終止的TCB信 息加入至存儲單元中的已終止任務鍊表。另外,該監控裝置可以進一步包括判斷單元,用於比較存儲單元中的已終止的TCB內存佔用是否超過預定的門限,在超過預定門限時,通知系統釋放 部分已經終止任務的TCB佔用的內存。
如圖2所示,為本發明實施例的監控vxworks作業系統中已終止任務的方 法流程圖。該方法包括下列步驟
步驟101:監控裝置判斷是否收到來自系統中的其他任務的消息,如果是, 則執行步驟102;否則,執行步驟106;
步驟102:判斷收到的消息是否是一個任務自然終止的通知消息,如果是, 則執行步驟103;否則,執行步驟104;
步驟103:將該已經終止的任務的TCB信息加入監控任務的已終止任務 鍊表,並執行步驟106;
步驟104:判斷收到的消息是否是一個通知某任務被終止的消息,如果是, 則執行步驟105;否則,執行步驟106;
步驟105:將被終止的任務的TCB信息加入監控任務的已終止任務鍊表, 並執行步驟106;
步驟106:根據已終止任務鍊表中的信息分析當前系統中已終止任務的 TCB所佔用內存空間是否過大,如果是,則執行步驟107;否則,執行步驟 101;
步驟107:如果系統中配置了允許監控任務自動調整權限,則釋放部分已 終止任務的TCB空間,並轉步驟101;否則,向錯誤終端發出告警,並轉步 驟101;
如圖3所示,為本發明的任務自動結束前向監控任務發送消息的方法流程圖。
步驟301:在向監控裝置發送將自然終止的消息之前,在生成的消息中添 加預定的標識(例如,用O標識任務自身要終止的情況)後發送該消息; 步驟302:如果發送消息成功,任務自然終止,否則,繼續發送。 如圖4所示,為本發明的任務結束其他任務後向監控任務發送消息的方法 流程圖。
步驟401:任務執行終止目標任務的操作,如果成功,則執行步驟402; 否則,結束動作;步驟402:在向監控裝置發送目標任務已終止消息之前,在生成的消息中添加預定的標識(例如,用l標識一任務已終止其他任務的情況)後發送該消 自.步驟403:如果發送消息成功,則結束動作。綜上所述,依照本發明的對已終止任務進行監控的vxworks作業系統及方 法,通過引入監控模塊對系統中其他各任務,尤其是已經終止的任務的監控, 可以提供給用戶一個更為強大的任務控制手段,並能得到已終止任務的TCB 所佔用的內存空間的情況,並在必要的時候作出如釋放已終止任務TCB空間 等調整,可有效的緩解由已終止任務的TCB佔用內存空間所造成的浪費。以上是為了使本領域普通技術人員理解本發明,而對本發明所進行的詳細 描述,但可以想到,在不脫離本發明的權利要求所涵蓋的範圍內還可以做出其 它的變化和修改,這些變化和修改均在本發明的保護範圍內。
權利要求
1.一種監控vxworks作業系統中已終止任務的裝置,其特徵在於,包括消息接收單元、存儲單元,其中,消息接收單元,用於接收系統中其他任務的消息,並將接收到的消息發送至存儲單元;存儲單元,用於添加已終止的任務控制塊TCB信息,並根據所述已終止的TCB信息通知系統釋放所述TCB佔用的內存。
2. 如權利要求1所述的監控vxworks作業系統中已終止任務的裝置,其 特徵在於,進一步包括分析單元,用於對所述消息接收單元發送的消息進行分 析,識別消息類型,然後將不同類型消息對應的已終止的TCB信息加入至所 述存儲單元。
3. 如權利要求1所述的監控vxworks作業系統中已終止任務的裝置,其 特徵在於,進一步包括判斷單元,用於比較存儲單元中的已終止的TCB內存 佔用是否超過預定的門限,在超過預定門限時,通知系統釋放已經終止任務的 TCB佔用的內存。
4. 一種監控vxworks作業系統中已終止任務的方法,其特徵在於,監控 裝置判斷是否收到來自系統中已經終止任務的TCB的通知消息,如果是,則 將所述已經終止的任務的TCB信息加入監控任務的已終止任務鍊表,並通知 系統釋放所述已經終止任務的TCB佔用的內存。
5. 如權利要求4所述的監控vxworks作業系統中已終止任務的方法,其 特徵在於,在將所述已經終止的任務的TCB信息加入監控任務的已終止任務 鍊表之前,進一步包括下列步驟對系統發送的所述通知消息進行分析,識別消息類型,然後將不同類型消 息對應的已終止的TCB信息加入所述已終止任務鍊表中。
6. 如權利要求4所述的監控vxworks作業系統中已終止任務的方法,其 特徵在於,在所述已經終止的任務的TCB信息加入監控任務的已終止任務鏈 表後,並通知系統釋放所述已經終止任務的TCB佔用的內存之前,進一步包 括下列步驟判斷所述已終止任務鍊表中已終止的TCB內存佔用是否超過預定的門 限,如果是,則通知系統釋放已經終止任務的TCB佔用的內存。
7. 如權利要求4所述的監控vxworks作業系統中已終止任務的方法,其 特徵在於,判斷是否收到來自系統中已經終止任務的TCB的通知消息,包括 下列步驟判斷所述消息是否是任務自然終止的通知消息,或者是否是通知某任務被 終止的消息,如果是,則將被終止的任務的TCB信息加入監控任務的已終止 任務鍊表。
8. 如權利要求7所述的監控vxworks作業系統中已終止任務的方法,其 特徵在於,包括下列步驟根據所述消息中的預設標識判斷其是任務自然終止 的通知消息,或者是通知某任務被終止的消息。
9. 如權利要求8所述的監控vxworks作業系統中已終止任務的方法,其 特徵在於,所述消息中的預設標識,為在任務自動結束前向監控裝置發送的自 身要終止的消息中添加。
10. 如權利要求8所述的監控vxworks作業系統中已終止任務的方法,其 特徵在於,所述消息中的預設標識,為在一任務終止另一任務後向監控裝置發 送的消息中添加。
全文摘要
本發明提供一種監控vxworks作業系統中已終止任務的裝置及方法,其中,該裝置包括消息接收單元、存儲單元,其中,消息接收單元,用於接收系統中其他任務的消息,並將接收到的消息發送至存儲單元;存儲單元,用於添加已終止的TCB信息,並根據所述已終止的TCB信息通知系統釋放所述TCB佔用的內存。本發明的監控vxworks作業系統中已終止任務的裝置及方法能夠緩解由已終止任務的TCB佔用內存空間所造成的浪費。
文檔編號G06F11/30GK101226496SQ200810006610
公開日2008年7月23日 申請日期2008年1月28日 優先權日2008年1月28日
發明者凡 楊 申請人:中興通訊股份有限公司