[發明專利]一種非搶占式實時調度多任務的處理系統及方法有效
| 申請號: | 201210169203.4 | 申請日: | 2012-05-28 |
| 公開(公告)號: | CN102722402A | 公開(公告)日: | 2012-10-10 |
| 發明(設計)人: | 肖春;洪浩;王偉峰 | 申請(專利權)人: | 上海微頻萊機電科技有限公司 |
| 主分類號: | G06F9/46 | 分類號: | G06F9/46 |
| 代理公司: | 上海海頌知識產權代理事務所(普通合伙) 31258 | 代理人: | 何葆芳 |
| 地址: | 201613 上海*** | 國省代碼: | 上海;31 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 搶占 實時 調度 任務 處理 系統 方法 | ||
技術領域
本發明涉及一種實時調度多任務的處理系統及方法,尤其涉及一種適用于電梯單片機系統的非搶占式實時調度多任務的處理系統及使用該系統非搶占式實時調度多任務的處理方法,屬于實時操作系統技術領域。
背景技術
電梯單片機程序包含實時性要求很高的速度控制、安全控制任務,同時還有對時間周期要求嚴格的位置檢測任務,以及大量對時間要求不高的各種邏輯控制任務,所以電梯單片機需要一種可以合理調度以上各類任務的操作系統,來達到實時調度多任務的要求。
所謂調度就是對給定的一組實時任務和系統資源,確定每個任務何時何地執行的整個過程。調度的目的是要盡可能保證每個任務滿足他們的時間約束,及時對外部或內部請求做出響應。
實時操作系統中的非搶占式調度系統的優點是上下文切換少,調度算法簡單,非常適合包含大量復雜邏輯控制的應用場合,但是,傳統的非搶占式任務調度系統不允許任務在執行期間被中斷,任務一旦占用處理器就必須執行完畢或自愿放棄,導致資源利用率低,響應速度慢,對于實時性要求高、時間響應快、或者時間周期要求比較固定的任務無法有效地處理,無法滿足一些關鍵任務對于實時性的要求。
發明內容
針對現有技術存在的上述問題和不足,本發明的目的是提供一種資源利用率高、響應速度快的非搶占式實時調度多任務的處理系統及使用該系統非搶占式實時調度多任務的處理方法,以滿足電梯單片機的高效、低成本運行要求。
為實現上述發明目的,本發明采用的技術方案如下:
一種非搶占式實時調度多任務的處理系統,包括:任務執行單元和任務調度單元,所述任務執行單元包括若干任務模塊,所述任務調度單元包括任務執行狀態控制模塊和優先級處理模塊;其特征在于:所述任務執行單元包括如下3類任務模塊,即,執行周期及執行時間均固定的Ⅰ類任務模塊,執行周期及執行時間均不固定的Ⅱ類任務模塊,執行周期固定但執行時間不固定的Ⅲ類任務模塊;所述任務執行狀態控制模塊由任務定時模塊或/和信號觸發模塊組成;所述Ⅰ類任務模塊依次與任務定時模塊A和優先級處理模塊串聯成一個閉合循環通路;所述Ⅱ類任務模塊依次與信號觸發模塊A和優先級處理模塊串聯成一個閉合循環通路;所述Ⅲ類任務模塊依次與相并聯的任務定時模塊B和信號觸發模塊B及優先級處理模塊串聯成一個閉合循環通路,且在優先級處理模塊返回Ⅲ類任務模塊的循環通路中還設有靜態定時模塊。
作為一種優選方案,將長任務模塊劃分為若干個相互串聯的任務片段模塊,每個任務片段模塊分別串聯有與其相匹配的任務執行狀態控制模塊。
作為進一步優選方案,與由Ⅰ類長任務模塊劃分的每個任務片段模塊相匹配的任務執行狀態控制模塊為任務定時模塊。
作為進一步優選方案,與由Ⅱ類長任務模塊劃分的每個任務片段模塊相匹配的任務執行狀態控制模塊為信號觸發模塊。
作為進一步優選方案,與由Ⅲ類長任務模塊劃分的每個任務片段模塊相匹配的任務執行狀態控制模塊為并聯的任務定時模塊和信號觸發模塊。
所述的任務執行單元是用于任務模塊中的任務或任務片段被調度單元激活后,運行指定激活的任務或任務片段,運行完成后,任務執行單元將系統控制權交給任務調度單元。在同一時間,所述的任務執行單元只能運行一個任務或任務片段。
所述的任務調度單元是用于監控任務或任務片段的執行狀態,一旦監控到任務或任務片段就緒,即進行優先級識別,然后激活需優先激活的任務或任務片段。
所述的任務定時模塊是用于控制所述任務或任務片段的執行時間,當任務或任務片段的執行時間期滿,此任務或任務片段即進入就緒狀態,等待優先級識別和激活。
所述的信號觸發模塊是用于控制所述任務或任務片段等待信號,在信號到達后,使任務或任務片段進入就緒狀態,等待優先級識別和激活。所述信號可以來自系統外部,也可以來自系統內部。
所述的優先級處理模塊是用于識別任務或/和任務片段的優先處理級別,每個任務被賦予一個優先級,每個任務片段具有與對應任務相同的優先級;在已就緒的任務或/和任務片段中,擁有最高優先級的任務或任務片段最先被調度單元激活,而擁有相同優先級的任務或任務片段,依照任務創建的順序依次被激活。
所述的靜態定時模塊是用于控制執行時間不固定任務的執行周期,當所述任務的執行周期期滿,該任務即被激活運行。靜態定時模塊不受任務執行時長的影響。
使用本發明所述處理系統非搶占式實時調度多任務的處理方法,包括如下步驟:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于上海微頻萊機電科技有限公司,未經上海微頻萊機電科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210169203.4/2.html,轉載請聲明來源鉆瓜專利網。





