[發明專利]有限狀態機的執行系統及執行方法有效
| 申請號: | 201210204651.3 | 申請日: | 2012-06-20 |
| 公開(公告)號: | CN103513971A | 公開(公告)日: | 2014-01-15 |
| 發明(設計)人: | 章國全;王登勇 | 申請(專利權)人: | 鴻富錦精密工業(深圳)有限公司;鴻海精密工業股份有限公司 |
| 主分類號: | G06F9/44 | 分類號: | G06F9/44 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 518109 廣東省深圳市*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 有限狀態機 執行 系統 方法 | ||
技術領域
本發明涉及有限狀態機,特別涉及有限狀態機的執行系統及執行方法。
背景技術
有限狀態機具有有限個狀態,一般包括狀態及狀態之間的轉移關系。在有限狀態機的系統開發中,狀態之間的轉移根據當前狀態及當前的輸入事件設定相應的條件語句而實現。如此,當系統包括大量的狀態時,各個狀態在轉移過程中相互交叉,相互影響,導致系統設計越來越復雜,使得系統難以維護和擴展。
發明內容
有鑒于此,本發明提供了一種易于維護和擴展的有限狀態機的執行系統及執行方法。
一種有限狀態機的執行系統,所述有限狀態機的執行系統包括:引擎單元,用于接收輸入事件,作為有限狀態機的觸發事件;存儲單元,用于存儲有限狀態機的當前狀態以及狀態轉移表;執行單元,用于從存儲單元中獲取有限狀態機的當前狀態,并根據引擎單元提供的輸入事件以及存儲單元中存儲的狀態轉移表獲取當前狀態機要轉移的下一狀態機以及根據獲取的下一狀態機更新有限狀態機的當前狀態;所述狀態轉移表包括N層狀態機,上層狀態機包括若干相斥的下層狀態機,屬于同一上層狀態機的若干個下層狀態機是通過繼承該上層狀態機而獲得,下層狀態機設置有進入其所繼承的上層狀態機的接口模塊,使得下層狀態機可以將消息傳遞給其繼承的上層狀態機,N層狀態機中的每個狀態機只有一個實例,只處理與該實例直接關聯的輸入事件,N層中的狀態機層在接收到與其并無直接聯系的輸入事件時,通過接口模塊將該輸入事件傳送至上層的狀態機處理,如上層的狀態機與該輸入事件也不直接關聯,則上層的狀態機通過其接口模塊將該輸入事件傳送至更上層的狀態機,直至傳送至處理該輸入事件的狀態機。
一種有限狀態機的執行方法,包括步驟:接收輸入事件,作為有限狀態機的觸發事件;獲取有限狀態機的當前狀態,并根據引擎單元提供的輸入事件以及一狀態轉移表,獲取當前狀態機要轉移的下一狀態機,所述狀態轉移表包括N層狀態機,上層狀態機包括若干相斥的下層狀態機,屬于同一上層狀態機的若干個下層狀態機是通過繼承該上層狀態機而獲得,下層狀態機設置有進入其所繼承的上層狀態機的接口模塊,使得下層狀態機可以將消息傳遞給其繼承的上層狀態機,N層狀態機中的每個狀態機只有一個實例,只處理與該實例直接關聯的輸入事件,N層中的狀態機層在接收到與其并無直接聯系的輸入事件時,通過接口模塊將該輸入事件傳送至上層的狀態機處理,如上層的狀態機與該輸入事件也不直接關聯,則上層的狀態機通過其接口模塊將該輸入事件傳送至更上層的狀態機,直至傳送至處理該輸入事件的狀態機;根據獲取的下一狀態機更新有限狀態機的當前狀態。
上述有限狀態機的執行系統及執行方法在刪除某狀態機時只需刪除該狀態機即可,并不影響其他狀態機的設置,而在建立新的狀態機時,只需建立該新的狀態機及該新的狀態機與對應的上層狀態機之間的繼承關系即可,易于維護和擴展。
附圖說明
圖1為一實施方式中有限狀態機的執行系統的模塊圖。
圖2為圖1中的狀態轉移表的示意圖。
圖3為一實施方式中有限狀態機的執行方法的流程圖。
主要元件符號說明
如下具體實施方式將結合上述附圖進一步說明本發明。
具體實施方式
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于鴻富錦精密工業(深圳)有限公司;鴻海精密工業股份有限公司,未經鴻富錦精密工業(深圳)有限公司;鴻海精密工業股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210204651.3/2.html,轉載請聲明來源鉆瓜專利網。





