新四季網

一種通信系統中具有高擴展性的通用軟體架構實現方法與流程

2023-09-11 05:24:51 2


本發明屬於無線通信領域,尤其涉及集群通信系統設備。



背景技術:

數字集群通信是二十世紀末興起的新型移動通信系統,它除了具備一般通信業務中的點對點呼叫功能外,還能實現點對多點的群組呼叫業務,同時在此基礎上,還定義了優先級呼叫、呼叫等待等補充業務。除此之外,數字集群系統還具有呼叫建立快、延遲短、保密性高等特點。基於數字集群通信在技術上的特點和優勢,被廣泛引用於公安、消防、應急指揮調度等專用通信領域。

數字集群通信系統功能非常龐大和複雜,結合降低實現成本和提高軟體擴展性的考慮,設計一個具有高擴展性和快速實現的通用軟體架構是非常必要的。



技術實現要素:

本發明所解決的技術問題是:在集群通信系統設計開發中,提出了一種能夠具有高擴展性和快速實現的通用軟體架構,為在此架構中的開發人員提供了進行模塊化實體開發的快速集成和移植功能。

本發明採用的技術方案為:

一種通信系統中具有高擴展性的通用軟體架構實現方法,其特徵在於,包括以下步驟:

步驟1:啟動主線程,根據配置選擇應用程式運行的作業系統,聲明模塊接口,初始化應用程式參數;

步驟2:為主線程和每一個子線程分別建立一個線程驅動上下文,並在每一個線程驅動上下文中定義該線程的線程序號、建立模塊隊列、建立內部消息優先隊列和建立外部消息優先隊列;

步驟3:註冊外部模塊實體的服務通道,並分別給各個服務通道分配一個通道號;

步驟4:為主線程和每一個子線程分別註冊應用程式的內部模塊實體,並分別將內部模塊實體添加到對應的模塊隊列中;給所有的內部模塊實體和所有的外部模塊實體分別分配一個模塊號,將外部模塊實體的模塊號和通道號一一對應進行關聯;

步驟5:根據模塊接口聲明分別對主線程和每一個子線程上的內部模塊實體進行配置,並在每一個內部模塊實體上分別配置內外事件的消息處理程序;

步驟6:啟動子線程,分別將每一個子線程返回的系統線程號和線程上下文中定義的線程序號一一對應進行關聯;

步驟7:主線程和每一個子線程循環監聽外部模塊實體和內部模塊實體的消息事件,並按優先級分別對應存入該線程的外部消息優先隊列和內部消息優先隊列中,無消息事件則進入等待狀態;所述的消息事件中包括該消息事件的目的模塊號;

步驟8:分別按優先級從外部消息優先隊列和內部消息優先隊列中取出優先級最高的消息事件,根據消息事件的目的模塊號將消息事件發送至內部模塊實體,內部模塊實體進入消息事件處理程序;根據消息事件的處理結果判斷是否需要對外發送消息,若是,則進入發送消息事件程序,執行步驟9;否則執行步驟9;

步驟9:查詢主線程和每一個子線程中的外部消息優先隊列和內部消息優先隊列中是否還有未處理的消息事件,若有,則轉入步驟8,否則轉入步驟7。

其中,步驟8中發送消息事件程序具體為:

生成消息事件,填充目的模塊號和線程序號,根據目的模塊號判斷是外部模塊實體還是內部模塊實體;

如果是外部模塊實體,則根據目的模塊號找到關聯的通道號和服務通道,通過服務通道發送消息事件到外部模塊實體;

如果是內部模塊實體,則通過線程序號找到該模塊註冊的線程,將該消息事件插入到該線程的內部消息優先隊列中,根據線程序號關聯的系統線程號找到該線程並發送喚醒信號給該線程,通知線程進行消息處理。

與現有技術相比本發明的優點在於:

本發明所述軟體架構設計的控制流和事件機制便於集成新的業務模塊到系統中,具備高擴展性,同時能夠促使開發人員專注於自己的業務邏輯設計,具備實現快速開發業務的能力。

附圖說明

圖1是本發明多線程運行模式流程圖。

圖2是本發明軟體框架運行模型。

圖3是本發明收消息模型。

具體實施方式

下面結合附圖1-3,對本發明做進一步詳細的說明。

本發明的軟體架構具有下列內容:

1、控制流

軟體架構的核心特徵是處理內外消息的事件驅動,在一個典型的實時或者其他作業系統中,控制流通常體現為進程、任務、線程的概念。事件驅動程序是基於無限事件循環來實現的,其中包含等待行為,在等待行為中,作業系統將阻塞直到等待事件的到來,當等待事件發生時,喚醒處理線程,處理事件並返回等待狀態。

本文的軟體架構提供了一個標準化的事件循環工作流的實現,可以用統一的方式移植和集成其他功能實體模塊到框架中,通用框架提供高擴展性的集成其他實體模塊作為一個處理模塊、線程或者單獨的進程的方法。

2、消息流

軟體架構提供了一組運行於單線程或者多線程上的不同模塊實體間的消息通信機制,每個模塊實體都會被分配一個公共的名字用來註冊自己公共名稱標識作為命名目的地,在集成的系統程序中,實體模塊可以通過命名目的地路由到正確的信息實體。事件循環處理機制可以等待和接收外部模塊和內部模塊的消息,收到消息後調用模塊實體處理程序來完成一個完整的消息流程。

本發明的流程圖如圖1所示,具體包括以下步驟:

步驟1:啟動主線程,根據配置選擇應用程式運行的作業系統,聲明模塊接口,初始化應用程式參數;

步驟2:為主線程和每一個子線程分別建立一個線程驅動上下文,並在每一個線程驅動上下文中定義該線程的線程序號、建立模塊隊列、建立內部消息優先隊列和建立外部消息優先隊列;

步驟3:註冊外部模塊實體的服務通道,並分別給各個服務通道分配一個通道號;

步驟4:為主線程和每一個子線程分別註冊應用程式的內部模塊實體,並分別將內部模塊實體添加到對應的模塊隊列中;給所有的內部模塊實體和所有的外部模塊實體分別分配一個模塊號,將外部模塊實體的模塊號和通道號一一對應進行關聯;

步驟5:根據模塊接口聲明分別對主線程和每一個子線程上的內部模塊實體進行配置,並在每一個內部模塊實體上分別配置內外事件的消息處理程序;

步驟6:啟動子線程,分別將每一個子線程返回的系統線程號和線程上下文中定義的線程序號一一對應進行關聯;

步驟7:主線程和每一個子線程循環監聽外部模塊實體和內部模塊實體的消息事件,並按優先級分別對應存入該線程的外部消息優先隊列和內部消息優先隊列中,無消息事件則進入等待狀態;所述的消息事件中包括該消息事件的目的模塊號;

步驟8:分別按優先級從外部消息優先隊列和內部消息優先隊列中取出優先級最高的消息事件,根據消息事件的目的模塊號將消息事件發送至內部模塊實體,內部模塊實體進入消息事件處理程序;根據消息事件的處理結果判斷是否需要對外發送消息,若是,則進入發送消息事件程序,執行步驟9;否則執行步驟9;

進入發送消息事件程序,具體為:生成消息事件,填充目的模塊號和線程序號,根據目的模塊號判斷是外部模塊實體還是內部模塊實體;

如果是外部模塊實體,則根據目的模塊號找到關聯的通道號和服務通道,通過服務通道發送消息事件到外部模塊實體;

如果是內部模塊實體,則通過線程序號找到該模塊註冊的線程,將該消息事件插入到該線程的內部消息優先隊列中,根據線程序號關聯的系統線程號找到該線程並發送喚醒信號給該線程,通知線程進行消息處理。

步驟9:查詢外部消息優先隊列和內部消息優先隊列中是否還有未處理的消息事件,若有,則轉入步驟8,否則轉入步驟7。

如圖2所示:多個分離的實體模塊運行在線程模式中,包括軟體啟動、模塊註冊、無限事件處理循環、消息優先隊列、消息調度、實體模塊,這6部分構成了一個完整的工作流程框架驅動整個程序的運行。運行過程具體為:首先是啟動執行,打開與外部實體的通信機制,註冊實體模塊,啟動無限事件處理循環。事件驅動循環中會收到內外部實體的消息事件,添加到消息優先隊列中,消息調度程序根據消息事件的目的地址,選擇不同的實體模塊來處理該消息事件。最後實體模塊對該消息事件進行處理,處理完畢返回軟體框架事件處理循環中,接著進入下一事件循環。

如圖3所示:消息分為外部消息、內部消息,外部消息通過註冊的通道號和模塊號關聯,然後通過模塊號進入內部尋址,內部消息則直接通過模塊號尋址,程序收到的外部消息放入外部消息隊列,收到的內部消息則放入內部消息隊列,然後通過事件處理程序進行程序處理。

綜上所述,以上僅為本發明的較佳應用示例,並非用於限定本發明的保護範圍。凡在本發明的精神和原則之內,所做的任何修改、等同替換、改進等,均應包含在本發明的保護範圍之內。

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀