• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • 軟件可靠性仿真測試平臺實時技術研究(2)

    發表于:2015-01-04來源:uml.org.cn作者:劉東艷 申功勛點擊數: 標簽:
    從上面的討論知道,仿真器的實時性是通過仿真器的任務調度管理模塊實現的。任務調度管理模塊為仿真器分系統的主控模塊,是分系統的全面管理者。該

      從上面的討論知道,仿真器的實時性是通過仿真器的任務調度管理模塊實現的。任務調度管理模塊為仿真器分系統的主控模塊,是分系統的全面管理者。該模塊根據用戶通過仿真器分系統人機接口界面輸入的參數、顯示過程的控制命令和主控機通過網絡傳送來的控制命令及參數,對并發執行的實時自檢/維護、網絡通信、交聯仿真數據生成、數據/狀態顯示、數據記錄、交聯數據驅動、測試過程分析以及仿真器不同功能模式對應的任務隊列進行管理和調度,協調各模塊的工作,進行各模塊的銜接,實現各線程的管理,完成與目標系統實時交聯仿真任務。

      2.2.2 仿真器分系統任務劃分

      由于仿真器分系統是用于目標軟件的實時仿真測試,每個任務都必須根據目標軟件運行的需要,滿足實時交聯仿真的定時限制,所以,為保證仿真器的實時性能,根據任務和平臺系統工作模式的不同,在調度框架中集中不同的調度策略,任務調度涉及到實時任務和普通分時任務的調度。

      按照仿真器所處的運行模式,將其任務劃分為實時任務和非實時任務。

      實時任務指在仿真測試過程中,仿真器需要在確定時間內完成的任務,包括:

      命令控制(包括測試開始、工作模式切換、驅動通信接口、測試結束等);

      與被測目標軟件之間的實時交聯數據驅動任務;

      與主控機分系統之間的實時網絡通信任務;

      交聯數據實時生成;

      測試數據和測試結果數據的記錄和顯示;

      測試結果數據的初步精度分析和狀態邏輯驗證。

      非實時任務指對于任務完成的時間沒有嚴格約束的任務,包括:

      用戶通過界面進行的分系統參數和有關配置描述;

      分系統初始化及用戶指定分系統自檢和維護;

      測試數據的事后回放;

      數據庫操作。

      為系統任務調度管理的方便,根據任務的屬性、等級和處理周期的不同,將實時任務劃分為動態任務和靜態任務,靜態任務又包括長周期任務和短周期任務。

      動態任務指動態跟蹤系統狀態,根據實際運行狀況,臨時加入的任務,如實時自檢任務、系統發生故障時動態加入的異常處理任務等。

      長周期任務指可以在多個時間標簽內完成的任務,如有必要,這類任務可在時限還沒有完成就終止。包括顯示任務、記錄任務、從數據庫或數據文件中讀取數據到內存的任務。

      短周期任務指對任務完成的時間有嚴格的限定,必須在一個時間標簽內完成的任務,即在25 ms周期內,完成對目標軟件的一次驅動,同時接收目標軟件的對外輸出。包括交聯數據的生成、交聯數據的1553B驅動、從主控機接收和向主控機發送測試數據信息包、仿真器應答信息包的網絡通信任務等周期性的任務。

      上述各類任務在其生命周期內一般都包括創建、就緒、掛起、運行、取消和結束六種狀態,其狀態轉換關系如圖3所示,由總的任務調度控制器將各任務帶入不同的狀態。

      圖3 任務狀態轉換關系示意圖

      2.2.3 仿真器調度模塊的設計

      仿真器對于各類任務采用時間、事件以及數據驅動相結合的調度原則進行控制管理。為了提高系統的實時性和適應性,采用了動態和靜態調度策略相結合、任務發生的周期和優先級相結合的調度方式。

      在調度框架中集中不同的調度策略。在運行模式下:系統測試工作正常,則對于周期性的實時任務采用靜態生成的調度策略;在系統發生故障時,則采用臨時的動態調度策略,它根據系統的運行狀況,實時加入動態任務,并根據動態任務的級別,決定該任務是立即執行還是按順序執行。隨著故障的排除,取消該任務,系統重新恢復到先前的調度策略。

      仿真器根據任務運行占用時間的不同,以不同速率來調度不同模塊,滿足實時驅動的要求。采用優先級調度和分時調度相結合的方式:優先級調度方式即調度模塊對于每一項任務都賦予了嚴格的優先級,按優先級的次序從高到低執行;分時調度方式是采用時間片輪轉的方式來執行各個任務,這種調度方式多是在終止模式下采用(或在運行模式下,系統已經完成短周期的任務,還留有時間余量的情況下)。例如,對于1553B 數據驅動和交聯數據生成等短周期任務在每25 ms定時到時串行化執行,被賦予了較高優先級,而對于顯示和記錄數據等長周期任務分時執行或交叉執行,被賦予了較低優先級,以保證能正常驅動MBI卡。

    原文轉自:http://www.uml.org.cn/Test/200903241.asp

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>