新四季網

一種微內核系統中軟體模塊的通信方法、系統及裝置的製作方法

2023-06-15 15:21:01 2

專利名稱:一種微內核系統中軟體模塊的通信方法、系統及裝置的製作方法
技術領域:
本發明涉及網絡通信技術領域,尤其涉及一種微內核系統中軟體模塊的通信方 法、系統及裝置。
背景技術:
由於現在處理器性能的快速提升,以及微內核系統結構的改進,微內核系統的可 擴展性、高可用性以及自愈性優勢逐漸的明顯,微內核系統得到了廣泛的應用。微內核系統中包括建立一個系統所必需的幾個核心軟體模塊,例如線程/進程管 理模塊,內存模塊和進程間通信模塊。在微內核中每個模塊都是一個獨立的進程,一旦某一 模塊發生錯誤,不會影響其他模塊的工作,並且當不需要某一功能時,直接將該功能對應的 核心軟體模塊刪除即可,因此模塊之間的獨立性使微內核系統更加便於維護,並且各個模 塊可以獨立的進行升級,減小了升級的開銷。但是,微內核系統中雖然每個核心軟體模塊都是一個獨立的進程,但是核心軟體 模塊之間還是緊密耦合的,需要互相調用才能獲取數據信息。微內核系統中核心軟體模塊 之間的通信只能通過進程間通信的機制來實現。但是由於進程間通信的方式,資源的競爭 往往會拖慢某些線程對重要事件的處理,導致系統性能的降低。例如當微內核系統中包括路由(ROUTING)模塊、協議棧(V6STACK)模塊和簡單 網絡管理協議(Simple Network Management Protocol, SNMP)模塊等核心軟體模塊。當 ROUTING模塊本身正在進行複雜的路由計算時,V6STACK模塊和SNMP模塊向該ROUTING模 塊發送路由查詢請求,ROUTING模塊接收到路由查詢請求後,由於自身要進行複雜的路由計 算,又要向V6STACK模塊和SNMP模塊提供路由信息,因此造成了 ROUTING模塊內資源的競 爭,導致V6 STACK模塊和SNMP模塊的等待,及ROUTING模塊自身路由計算速度的下降。或 者,當ROUTING模塊向接口(INTF)模塊發送接口狀態查詢請求時,INTF模塊向ROUTING模 塊發送路由查詢請求,則此時由於兩個模塊之間通過線程間通信發包等待結果,而造成系 統的死鎖。另外,當微內核系統中的某一核心軟體模塊發生故障,重啟後開始運行時,該出現 故障的核心軟體模塊需要從其他核心軟體模塊獲取自身所需的配置信息,由於其他核心軟 件模塊需要向該出現故障的核心軟體模塊反饋其所需的配置信息,因此其他核心軟體模塊 的處理性能將會受到影響,從而影響了整個微內核系統的性能。因此由於微內核系統中的各核心軟體模塊之間的緊密耦合,在核心軟體模塊在進 行通信時將會影響核心軟體模塊的性能,從而影響整個微內核系統的性能。

發明內容
有鑑於此,本發明實施例提供一種微內核系統中軟體模塊的通信方法、系統及裝 置,用以解決微內核系統中各核心軟體模塊之間耦合的比較緊,導致系統性能降低的問題。本發明實施例提供的一種微內核系統中軟體模塊的通信方法,包括
信息庫模塊接收針對第一核心軟體模塊的信息請求;根據自身保存的針對該第一核心軟體模塊的信息表的信息,在該信息表中根據所 述信息請求進行相應的處理,並發送處理結果。本發明實施例提供的一種微內核系統中軟體模塊的通信裝置,包括接收模塊,用於接收針對第一核心軟體模塊的信息請求;信息提供模塊,用於根據自身保存的針對該第一核心軟體模塊的信息表的信息, 在該信息表中根據所述信息請求進行相應的處理,並發送處理結果。本發明實施例提供的一種微內核系統,包括如上所述的裝置,第一核心軟體模塊及第二核心軟體模塊。一種路由設備,所述路由設備包括如上所述的微內核系統。本發明實施例提供一種微內核系統中軟體模塊的通信方法、系統及裝置,該方法 中,當需要對第一核心軟體模塊進行操作時,向信息庫模塊發送針對第一核心軟體模塊的 信息請求,信息庫模塊根據自身保存的針對第一核心軟體模塊的信息表的信息,在該信息 表中根據該信息請求進行相應處理,並發送處理結果。由於在本發明實施例中在信息庫模 塊中針對每個核心軟體模塊都設置了對應的信息表,在該信息表中針對該信息請求進行相 應的處理,因此其他核心軟體模塊無需再與第一核心軟體模塊進行交互獲取相應信息,從 而降低了微內核系統中核心軟體模塊之間的耦合程度,減小了核心軟體模塊在進行相應信 息操作時的性能下降。


圖1為本發明實施例提供的微內核系統中軟體模塊的通信過程;圖2為本發明實施例提供的該信息請求為信息表內容修改請求時,微內核系統中 軟體模塊的通信過程;圖3為本發明實施例提供的第二核心軟體模塊發送的針對第一核心軟體模塊的 獲取該第二核心軟體模塊自身所需信息的請求時,該微內核系統中軟體模塊的通信過程;圖4為本發明實施例提供的當該信息請求為重新啟動請求時,微內核系統中軟體 模塊的通信過程;圖5為本發明實施例提供的一種微內核系統的組成結構示意圖;圖6為本發明實施例提供的一種微內核系統中軟體模塊的通信裝置的結構示意 圖。
具體實施例方式本發明實施例為了有效的降低微內核系統中各核心軟體模塊的耦合程度,解決微 內核系統中各核心軟體模塊通信導致的系統性能降低的問題,提供了一種微內核系統中軟 件模塊的通信方法,該方法中信息庫模塊根據接收到的針對第一核心軟體模塊的信息請 求,確定為該信息請求提供服務的該第一核心軟體模塊的信息表的信息,對該信息表進行 操作,並發送處理結果。由於本發明實施例信息庫模塊中針對每個核心軟體模塊都設置了 對應的信息表,在需要從第一核心軟體模塊請求信息時,直接與信息庫模塊進行交互,無需 再與第一核心軟體模塊進行交互,因此減小了對第一核心軟體模塊性能的影響,也降低了微內核系統中各核心軟體模塊之間的耦合程度,從而提高了微內核系統的性能。下面結合說明書附圖,對本發明實施例進行詳細說明。在本發明實施例中為了有效的降低微內核系統中核心軟體模塊之間的耦合程度, 在該微內核系統中增加信息庫模塊,當核心軟體模塊之間需要進行請求信息時,將之前發 送給該需要請求信息的核心軟體模塊的信息請求,發送到信息庫模塊。信息庫模塊為了便 於向每個核心軟體模塊提供服務,在該信息庫模塊中針對每個核心軟體模塊保存了對應該 核心軟體模塊的信息表,該信息表中記錄有該核心軟體模塊重啟後運行所需的恢復數據和 對外提供的接口數據。信息庫模塊根據接收到的針對第一核心軟體模塊的信息請求時,在自身保存的針 對每個核心軟體模塊的信息表中,查找針對該第一核心軟體模塊的信息表的信息,在該查 找到的信息表中根據該信息請求對該信息表進行相應的處理,並在處理完成後返回處理結^ o具體在本發明實施例中為了進一步提高信息庫模塊處理針對各核心軟體模塊的 信息請求的處理效率,可以在該信息庫模塊中針對每個信息表,創建維護該信息表的子線 程。在信息表中針對信息請求進行相應的處理時,可以通過對該信息表進行維護的子線程 對該信息請求進行相應的處理。圖1為本發明實施例提供的微內核系統中軟體模塊的通信過程,該過程包括以下 步驟S101 信息庫模塊接收針對第一核心軟體模塊的信息請求。在本發明實施例中當微內核系統中的核心軟體模塊需要對第一核心軟體模塊請 求信息時,例如需要從第一核心軟體模塊獲取接口數據時,或者當該第一核心軟體模塊需 要對信息庫模塊中保存的自身的信息表中的信息進行修改時,或,第一核心軟體模塊需要 從信息庫中保存的自身的信息表中獲取重啟後運行所需恢復數據時,向該信息庫模塊發送 針對該第一核心軟體模塊的信息請求。具體的,第一核心軟體模塊在確定恢復數據或接口數據變化時,向所述信息庫模 塊發送針對第一核心軟體模塊的信息請求,其中該信息請求中攜帶變化後的恢復數據或接 口數據;或,第一核心軟體模塊在重啟後開始運行時,向所述信息庫模塊發送針對第一核心軟 件模塊的信息請求;或,第二核心軟體模塊在確定需要調用第一核心軟體模塊的接口數據時,向所述信息 庫模塊發送針對第一核心軟體模塊的信息請求。S102:根據該信息請求,確定為該信息請求提供信息的第一核心軟體模塊的信息 表的信息。在本發明實施例中信息庫模塊針對每個核心軟體模塊創建並分配了對應的信息 表,並且在該信息庫模塊中針對每個核心軟體模塊創建相應的子線程,每個信息表由對應 的子線程維護。例如在該信息庫模塊中包括核心軟體模塊A、核心軟體模塊B和核心軟體模塊C 等,信息庫模塊創建第一信息表、第二信息表以及第三信息表。其中該第一信息表用於向請 求該核心軟體模塊A的信息請求提供信息,第二信息表用於向請求核心軟體模塊B的信息請求提供信息,第三信息表用於向請求核心軟體模塊C的信息請求提供信息,而第一子線 程用於維護第一信息表,第二子線程用於維護第二信息表,第三子線程用於維護第三信息 表。S103:根據該信息表的信息確定對該信息表進行維護的子線程,通過該子線程在 該信息表中根據所述信息請求進行相應的處理,並發送處理結果。具體的信息庫模塊將所述信息請求掛載到該信息表的請求鍊表上,喚醒該確定的 子線程,通過喚醒的所述子線程,在該信息表中根據所述信息請求進行相應的處理,將處理 結果掛載在處理結果鍊表上,通告所述主線程處理完成,該主線程從處理結果鍊表上取下 處理結果並發送。在本發明實施例中該信息庫模塊為獨立於各核心軟體模塊的模塊,在該信息庫模 塊中針對每個核心軟體模塊,創建對應該核心軟體模塊的信息表,並且該創建的信息表可 以為一個、兩個或多個,具體根據核心軟體模塊的特性決定。同時該信息庫模塊針對每個核 心軟體模塊創建對應的子線程,每個信息表只能由一個子線程維護,而一個子線程可以維 護多個信息表。另外,該信息庫模塊為獨立於各核心軟體模塊的模塊,由於該信息庫模塊的邏輯 比較簡單,其自身無須像其他核心軟體模塊一樣進行自身邏輯的處理,因此通過信息庫模 塊可以更加有效的解決微內核系統中核心軟體模塊間的通信問題,提高微內核系統的性 能。在本發明實施例中可以在信息庫模塊中創建多個信息表,其中每個信息表對應一 個核心軟體模塊。每個信息表中保存有對應的核心軟體模塊重啟後運行所需的恢復數據和 對外提供的接口數據。即在微內核系統中核心軟體模塊自身重啟後運行所需的配置數據和 在重啟前運行時的狀態數據,及向其他核心軟體模塊提供的接口數據都可以保存在對應該 核心軟體模塊的信息表中。例如當該核心軟體模塊為ROUTING模塊,對應該核心軟體模塊創建的信息表中保 存了路由信息,該路由信息為該ROUTING模塊向外提供的接口數據,即該ROUTING模塊需 要向其他核心軟體模塊提供的信息,該信息為其他核心軟體模塊需要與ROUTING模塊進行 通信獲取的信息。對於V6 STACK模塊,對應該核心軟體模塊創建的信息表中保存了傳 輸控制協議(TransmissionControl Protocol, TCP)狀態信息及用戶數據報文協議(User Datagram Protocol,UDP)狀態信息等。對於INTF模塊,對應該核心軟體模塊創建的信息表 中保存有最大傳輸單元(Maximum Transmission Unit, MTU)信息及運行所需參數信息等。根據每個核心軟體模塊的特性,可以針對該核心軟體模塊創建兩個或多個信息 表。例如信息庫模塊可以針對ROUTING模塊創建第一信息表和第二信息表,其中第一信息 表中可以記錄V4路由信息,第二信息表中可以記錄V6路由信息。信息庫模塊針對每個核心軟體模塊創建了對應的信息表後,該信息表通過針對該 核心軟體模塊創建的子線程維護。即信息庫模塊針對每個核心軟體模塊創建子線程,該子 線程用於維護為該核心軟體模塊創建的信息表。由於信息庫模塊針對某一核心軟體模塊可能創建了兩個或多個信息表,該信息庫 模塊可以針對該核心軟體模塊只創建一個子線程,通過創建的這一個子線程維護為該核心 軟體模塊創建的每個信息表。或者為了提高對信息請求處理的效率,進一步提高微內核系統的性能,當信息庫模塊針對某一核心軟體模塊創建了兩個或多個信息表後,可以針對為 該核心軟體模塊創建的信息表的數量,創建對應數量的子線程,每個子線程維護一個信息 表。上述信息庫模塊為每個核心軟體模塊創建信息表及子線程的過程,用戶可以根據自身 的需要靈活的選擇相應的實現方式,只要能夠實現通過子線程維護信息表的實現方式都應 包含在本發明的保護範圍內。本發明實施例該信息庫模塊中接收針對第一核心軟體模塊的信息請求的為該信 息庫模塊中的主線程,該主線程當接收到每個信息請求後,根據該信息請求中攜帶的被請 求的第一核心軟體模塊的信息,可以確定為該信息請求提供信息的該第一核心軟體模塊的 信息表的信息,並且該主線程可以根據該信息表的信息,確定維護該信息表的子線程,從而 可以通過該子線程根據該信息請求對該信息表進行相應的處理。並在子線程處理完成時將 處理結果掛載在處理結果鍊表上,通告主線程處理完成,主線程接收到該通告後,從該處理 結果鍊表上取下該處理結果,發送給發送該信息請求的核心軟體模塊。由於信息庫模塊中針對每個核心軟體模塊都創建了相應的信息表,並且每個信息 表都通過對應的子線程進行維護,即每個信息表只能由一個子線程進行維護,因此核心軟 件模塊無需使用數據保護,從而可以降低核心軟體模塊的設計難度,並且可以有效的保證 核心軟體模塊有效的獲取到自身所需的數據信息。另外,由於核心軟體模塊之間無需進行 直接的通信,因此避免了核心軟體模塊之間相互等待發包造成的死鎖問題,有效的提高了 核心軟體模塊從其他核心軟體模塊獲取接口數據的效率,提高了微內核系統的性能。另外,在本發明實施例中由於在核心軟體模塊重啟後開始運行時,將重新啟動請 求也發送到信息庫模塊,通過信息庫模塊向該核心軟體模塊提供該核心軟體模塊重啟後運 行所需的恢復數據,該重啟後運行時所需的恢復數據包括該核心軟體模塊的配置數據及該 核心軟體模塊重啟前運行時的狀態數據,由於其他核心軟體模塊無需再向該重啟後需要運 行的核心軟體模塊提供配置信息及重啟前運行時的狀態信息,因此減小了對其他核心軟體 模塊處理性能的影響,從而提高了微內核處理系統的整體性能。在本發明實施例中信息庫模塊接收到的請求從第一核心軟體模塊獲取信息的信 息請求可以為信息表內容修改請求、重新啟動請求和獲取接口數據的請求等操作,下面分 別針對不同的信息請求對本發明實施例中微內核系統中軟體模塊的通信過程進行說明。圖2為本發明實施例提供的當該信息請求為信息表內容修改請求時,微內核系統 中軟體模塊的通信過程,該過程包括以下步驟S201 信息庫模塊的主線程接收到第一核心軟體模塊發送的,針對第一核心軟體 模塊的信息表內容修改請求,其中該信息表內容修改請求中攜帶待添加的內容信息。S202 信息庫模塊的主線程根據為每個核心軟體模塊創建被分配的信息表,確定 為信息表內容修改請求提供信息的該第一核心軟體模塊的信息表的信息。由於在本發明實施例中信息庫模塊針對每個核心軟體模塊創建並分配了對應的 信息表,因此當信息庫模塊的主線程接收到第一核心軟體模塊發送的針對第一核心軟體模 塊的信息表內容修改請求後,需要確定為該第一核心軟體模塊的信息表內容修改請求提供 信息的為哪個信息表,從而可以在該確定的該信息表中,根據該信息表內容修改請求對該 信息表進行相應的處理。S203 根據該信息表的信息確定對該信息表進行維護的子線程。
由於信息庫模塊針對每個核心軟體模塊創建分配了對應的信息表,而每個信息表 由對應的子線程進行維護,因此當確定了進行信息提供的信息表的信息後,可以根據該信 息表的信息,確定對該信息表進行維護的子線程。S204 將該信息表內容修改請求掛載到該信息表的請求鍊表上,喚醒對該信息表 進行處理的子線程。在本發明實施例中信息庫模塊為每個核心軟體模塊分配了子線程,每個子線程用 於維護為該核心軟體模塊創建的信息表。為了避免信息庫模塊在處理與每個核心軟體模塊 進行通信的信息請求的過程中,向其他核心軟體模塊返回處理結果過程中的相互影響,在 本發明實施例中為每個核心軟體模塊分配的子線程只有在存在待處理的信息請求時才被 激活,否則一直處於掛起狀態。由於信息庫模塊中為每個核心軟體模塊分配的子線程,在不 存在待處理的信息請求時,該子線程一直處於掛起狀態,因此可以有效的節省信息庫模塊 的資源,提高信息庫模塊的工作效率。S205:該被喚醒的子線程,從待處理請求鍊表上取下該信息表內容修改請求,根據 該信息表內容修改請求攜帶的待添加的內容信息,在對應該第一核心軟體模塊的信息表中 修改該內容信息。S206:該被喚醒的子線程在寫入成功時,將處理完成通告掛載在處理結果鍊表上 並通告主線程處理完成。S207:主線程接收到通告後,從處理結果鍊表上取下該處理結果,將處理結果發送 給第一核心軟體模塊。上述過程中以該信息表內容修改請求中攜帶待添加的內容信息為例進行說明,當 該信息表內容修改請求中攜帶待更改的內容信息,或待刪除的內容信息,或當核心軟體模 塊確定恢復數據或接口數據變化,向信息庫模塊發送信息請求時,其處理過程與上述過程 類似,在這裡就不一一贅述。當信息庫模塊接收到的信息請求為,第二核心軟體模塊發送的針對第一核心軟體 模塊的獲取接口數據的請求時,該微內核系統中軟體模塊的通信過程如圖3所示S301 信息庫模塊的主線程接收到第二核心軟體模塊發送的針對第一核心軟體模 塊的獲取接口數據的請求。即第二核心軟體模塊在運行的過程中,需要通過與第一核心軟體模塊進行信息交 互,獲取第一核心軟體模塊中的接口數據,以便該第二核心軟體模塊能夠進行後續動作時, 該第二核心軟體模塊生成該獲取接口數據的請求。S302 信息庫模塊的主線程根據為每個核心軟體模塊創建的信息表,確定為該獲 取接口數據的請求提供信息的該第一核心軟體模塊的信息表的信息。S303 根據該信息表的信息確定對該信息表進行維護的子線程。S304:將該獲取接口數據的請求掛載到該信息表的請求鍊表上,喚醒對該信息表 進行處理的子線程。S305:該被喚醒的子線程,從待處理請求鍊表上取下該獲取接口數據的請求,根據 該獲取接口數據的請求在確定的該信息表中進行查找,獲取相應的處理結果。S306 該被喚醒的子線程在獲取到相應的處理結果時,將獲取到的相應的處理結 果掛載在處理結果鍊表上,並通告主線程處理完成。
S307:主線程接收到通告後,從處理結果鍊表上取下該處理結果,將該處理結果發 送給第二核心軟體模塊。圖4為本發明實施例提供的當該信息請求為重新啟動請求時,微內核系統中軟體 模塊的通信過程,該過程包括以下步驟S401 信息庫模塊的主線程接收第一核心軟體模塊發送的重新啟動請求。即在第一核心軟體模塊在重啟後開始運行時,該第一核心軟體模塊在需要獲取重 啟後運行所需恢復數據時,即該第一核心軟體模塊在需要獲取重啟後運行所需的配置數 據,及在重啟前運行時的狀態數據時,生成重新啟動請求,將該重新啟動請求發送到該信息 庫模塊。S402 信息庫模塊的主線程根據為每個核心軟體模塊創建的信息表,確定為該重 新啟動請求提供信息的該第一核心軟體模塊的信息表的信息。S403 根據該信息表的信息確定對該信息表進行維護的子線程。S404 將該重新啟動請求掛載到該信息表的請求鍊表上,喚醒對該信息表進行處 理的子線程。S405:該被喚醒的子線程,從待處理請求鍊表上取下該重新啟動請求,根據該重新 啟動請求,在確定的該信息表中進行查找,獲取相應的處理結果。S406 該被喚醒的子線程在獲取到相應的處理結果時,將該處理結果掛載在處理 結果鍊表上,並通告主線程處理完成。S407:主線程接收到通告後,從處理結果鍊表上取下該處理結果,將該處理結果發 送給第一核心軟體模塊。在本發明實施例中,第一核心軟體模塊重啟後開始運行時需要從其他核心軟體模 塊獲取的重啟後運行所需的恢復數據,都保存在信息庫模塊針對該第一核心軟體模塊的信 息表中,因此當該信息庫模塊接收到第一核心軟體模塊發送的重新啟動請求請求時,可以 從為該第一核心軟體模塊分配的信息表中中獲取該該第一核心軟體模塊重啟後運行所需 的恢復數據,由於第一核心軟體模塊在獲取重啟後運行所需的恢復數據過程中無需直接與 其他核心軟體模塊進行直接信息交互,從而減小了對其他核心軟體模塊的影響,提高了微 內核系統的可靠性。並且由於信息庫模塊的邏輯簡單,處理信息請求的速度較快,還可以有 效的提高核心軟體模塊獲取重新啟動所需恢復數據的效率,提高核心軟體模塊重啟後開始 運行的速度。下面結合一個具體的實施例進行說明,圖5為本發明實施例提供的一種微內核系 統的組成結構示意圖,在該微內核系統中的核心軟體模塊包括R0UTING模塊、V6 STACK模 塊和SNMP模塊,並且在該微內核系統中還包括信息庫模塊。微內核系統中的每個核心軟體 模塊在需要從外界模塊中獲取接口數據,以便進行後續運行時,都直接從信息庫模塊中獲 取。信息庫模塊為ROUTING模塊創建並分配了第一信息表和第二信息表,其中第一信息表 中保存V6路由信息,第二信息表中保存V4路由信息,並通過第一子線程維護該第一信息表 和第二信息表,為V6 STACK模塊創建並分配了第三信息表,並通過第二子線程維護該第三 信息表,為SNMP模塊創建並分配了第四信息表,並通過第四子線程維護該第三信息表。當ROUTING模塊由於靜態配置或者接收到路由協議的通告,確定新增了一條V6路 由信息時,ROUTING模塊向信息庫模塊發送針對自身的信息表內容修改請求,其中該信息表內容修改請求中攜帶該待添加的V6路由信息。信息庫模塊的主線程接收到ROUTING模塊發送的信息表內容修改請求後,信息庫 模塊根據該信息表內容修改請求中攜帶的待添加的V6路由信息,確定需要對為該ROUTING 模塊創建並分配的第一信息表進行操作。同時,由於該第一信息表通過第一子線程維護, 因此信息庫模塊將該信息表內容修改請求掛載在第一信息表的請求鍊表上,喚醒第一子線程。被喚醒的第一子線程從自身維護的第一信息表的請求鍊表上取下該信息表內容 修改請求,將該信息表內容修改請求中攜帶的待添加的V6路由信息,寫入該第一信息表 中,並確定該V6路由信息的索引。第一子線程在處理完成時將處理完成的信息攜帶在處理 結果中掛載在主線程的處理結果鍊表上,並通告主線程處理完成。主線程接收到通告後,從 處理結果鍊表上取下該處理結果,將該處理結果發送給ROUTING模塊。V6 STACK模塊在進行數據包的發送時,需要與ROUTING模塊進行通信獲取接口數 據,即獲取路由信息,因此該V6 STACK模塊向信息庫模塊發送與ROUTING模塊進行通信獲 取接口數據的請求。信息庫模塊的主線程接收到V6 STACK模塊發送的與ROUTING模塊進行通信獲取 接口數據的請求後,確定需要對為該ROUTING模塊創建並分配的第一信息表進行操作。同 時,由於該第一信息表通過第一子線程維護,信息庫模塊將該獲取接口數據的請求掛載在 第一信息表的請求鍊表上,喚醒第一子線程。被喚醒的第一子線程從自身維護的第一信息表的請求鍊表上取下該獲取接口數 據的請求,根據該獲取接口數據的請求,從第一信息表中查找路由信息,並將查找到的路由 信息掛載在主線程的處理結果鍊表上,並通告主線程處理完成。主線程接收到通告後,從處 理結果鍊表上取下該路由信息,並發送給V6STACK模塊。圖6為本發明實施例提供的一種微內核系統中軟體模塊的通信裝置的結構示意 圖,該裝置包括接收模塊61,用於接收針對第一核心軟體模塊的信息請求;信息提供模塊62,用於根據自身保存的針對該第一核心軟體模塊的信息表的信 息,在該信息表中根據所述信息請求進行相應的處理,並發送處理結果。所述信息提供模塊62具體用於,根據該信息表的信息,確定對該信息表進行維護的子線程,通過所述子線程在該 信息表中根據所述信息請求進行相應的處理。所述信息提供模塊62具體用於,將所述信息請求掛載到該信息表的請求鍊表上,喚醒該確定的子線程,通過喚醒 的所述子線程,在該信息表中根據所述信息請求進行相應的處理,接收所述子線程發送的 通告,取下所述子線程掛載在處理結果鍊表上的處理結果並發送。所述信息提供模塊62具體用於,當所述信息請求為信息表內容修改請求時,根據 所述信息表內容修改請求,通過所述子線程修改該信息表。所述信息提供模塊62具體用於,當所述信息請求為重新啟動請求時,根據所述重 新啟動信息請求,通過所述子線程在所述信息表中查找重啟後運行所需恢復數據。所述信息提供模塊62具體用於,當所述信息請求為從第一核核心軟體模塊獲取接口數據的請求時,根據所述獲取接口數據的請求,通過所述子線程在所述信息表中查找 所述接口數據。所述裝置還包括創建模塊63,用於根據每個第一核心軟體模塊,創建針對每個核心軟體模塊的至 少一個信息表,其中該信息表中保存該核心軟體模塊運行過程中產生的信息,及運行過程 中所需的信息。所述裝置中,所述接收模塊61還用於,接收第一核心軟體模塊在確定恢復數據接口數據變化 時,發送的針對第一核心軟體模塊的信息請求,其中該信息請求中攜帶變化後的恢復數據 或接口數據;或,接收第一核心軟體模塊在重啟後開始運行時,發送針對第一核心軟體模塊 的信息請求;或,在第二核心軟體模塊在確定需要調用第一核心軟體模塊的接口數據時,發 送的針對第一核心軟體模塊的信息請求。本發明實施例還提供了一種微內核系統,所述系統包括上述微內核系統中軟體模 塊的通信裝置,第一核心軟體模塊及第二核心軟體模塊。本發明實施例提供了一種路由設備,所述路由設備包括上述所述的微內核系統。本發明實施例提供一種微內核系統中軟體模塊的通信方法、系統及裝置,該方法 中,當需要對第一核心軟體模塊進行操作時,向信息庫模塊發送針對第一核心軟體模塊的 信息請求,根據自身保存的針對第一核心軟體模塊的信息表的信息,在該信息表中根據該 信息請求進行相應處理,並發送處理完成通告。由於在本發明實施例中在信息庫模塊中針 對每個核心軟體模塊都設置了對應的信息表,在該信息表中針對該信息請求進行相應的處 理,因此其他核心軟體模塊無需再與第一核心軟體模塊進行交互獲取相應信息,從而降低 了微內核系統中核心軟體模塊之間的耦合程度,減小了核心軟體模塊在進行相應信息操作 時的性能下降。顯然,本領域的技術人員可以對本發明進行各種改動和變型而不脫離本發明的精 神和範圍。這樣,倘若本發明的這些修改和變型屬於本發明權利要求及其等同技術的範圍 之內,則本發明也意圖包含這些改動和變型在內。
權利要求
一種微內核系統中軟體模塊的通信方法,其特徵在於,包括信息庫模塊接收針對第一核心軟體模塊的信息請求;根據自身保存的針對該第一核心軟體模塊的信息表的信息,在該信息表中根據所述信息請求進行相應的處理,並發送處理結果。
2.如權利要求1所述的方法,其特徵在於,所述在該信息表中根據所述信息請求進行 相應的處理包括根據該信息表的信息,確定對該信息表進行維護的子線程; 通過所述子線程在該信息表中根據所述信息請求進行相應的處理。
3.如權利要求2所述的方法,其特徵在於,所述發送處理結果包括所述子線程將所述處理結果發送給所述信息庫模塊的主線程,並通告所述主線程處理 完成;所述主線程根據接收的所述通告,發送處理結果。
4.如權利要求3所述的方法,其特徵在於,通過所述子線程在該信息表中根據所述信 息請求進行相應的處理包括信息庫模塊的主線程將所述信息請求掛載到該信息表的請求鍊表上,喚醒該確定的子 線程;通過喚醒的所述子線程,在該信息表中根據所述信息請求進行相應的處理; 所述發送處理結果包括將處理結果掛載在處理結果鍊表上,通告所述主線程處理完成;所述主線程接收到通告後,從處理結果鍊表上取下處理結果並發送。
5.如權利要求2所述的方法,其特徵在於,當所述信息請求為信息表內容修改請求時, 通過所述子線程在該信息表中根據所述信息請求進行相應的處理包括根據所述信息表內容修改請求,通過所述子線程修改該信息表。
6.如權利要求2所述的方法,其特徵在於,當所述信息請求為重新啟動請求時,通過所 述子線程在該信息表中根據所述信息請求進行相應的處理包括根據所述重新啟動請求,通過所述子線程在所述信息表中查找重啟後運行所需恢復數據。
7.如權利要求2所述的方法,其特徵在於,當所述信息請求為從第一核心軟體模塊獲 取接口數據的請求時,通過所述子線程在該信息表中根據所述信息請求進行相應的處理包 括根據所述獲取接口數據的請求,通過所述子線程在所述信息表中查找所述接口數據。
8.如權利要求1所述的方法,其特徵在於,所述信息庫模塊接收針對第一核心軟體模 塊的信息請求之前,所述方法進一步包括所述信息庫模塊根據每個核心軟體模塊,創建針對每個核心軟體模塊的至少一個信息 表,其中該信息表中保存該核心軟體模塊重啟後運行所需的恢復數據和對外提供的接口數 據。
9.如權利要求8所述的方法,其特徵在於,所述方法還包括第一核心軟體模塊在確定恢復數據或接口數據變化時,向所述信息庫模塊發送針對第 一核心軟體模塊的信息請求,其中該信息請求中攜帶變化後的恢復數據或接口數據;或,第一核心軟體模塊在重啟後開始運行時,向所述信息庫模塊發送針對第一核心軟體模 塊的信息請求;或,第二核心軟體模塊在確定需要調用第一核心軟體模塊的接口數據時,向所述信息庫模 塊發送針對第一核心軟體模塊的信息請求。
10.一種微內核系統中軟體模塊的通信裝置,其特徵在於,所述裝置包括接收模塊,用於接收針對第一核心軟體模塊的信息請求;信息提供模塊,用於根據自身保存的針對該第一核心軟體模塊的信息表的信息,在該 信息表中根據所述信息請求進行相應的處理,並發送處理結果。
11.如權利要求10所述的裝置,其特徵在於,所述信息提供模塊具體用於,根據該信息表的信息,確定對該信息表進行維護的子線程,通過所述子線程在該信息 表中根據所述信息請求進行相應的處理,接收所述子線程發送的通告,取下所述子線程掛 載在處理結果鍊表上的處理結果並發送。
12.如權利要求11所述的裝置,其特徵在於,所述信息提供模塊具體用於,當所述信息 請求為信息表內容修改請求時,根據所述信息表內容修改請求,通過所述子線程修改該信 息表。
13.如權利要求11所述的裝置,其特徵在於,所述信息提供模塊具體用於,當所述信息 請求為重新啟動請求時,根據所述重新啟動請求,通過所述子線程在所述信息表中查找重 啟後運行所需恢復數據。
14.如權利要求11所述的裝置,其特徵在於,所述信息提供模塊具體用於,當所述信息 請求為從第一核核心軟體模塊獲取接口數據的請求時,根據所述獲取接口數據的請求,通 過所述子線程在所述信息表中查找所述接口數據。
15.如權利要求10所述的裝置,其特徵在於,所述裝置還包括創建模塊,用於根據每個核心軟體模塊,創建針對每個核心軟體模塊的至少一個信息 表,其中該信息表中保存該核心軟體模塊重啟後運行時所需的恢復數據和對外提供的接口 數據。
16.如權利要求15所述的裝置,其特徵在於,所述裝置中,所述接收模塊還用於,接收第一核心軟體模塊在確定恢復數據或接口數據變化時,發 送的針對第一核心軟體模塊的信息請求,其中該信息請求中攜帶變化後的恢復數據或接口 數據;或,接收第一核心軟體模塊在重啟後開始運行時,發送針對第一核心軟體模塊的信息 請求;或,在第二核心軟體模塊在確定需要調用第一核心軟體模塊的接口數據時,發送的針 對第一核心軟體模塊的信息請求。
17.一種微內核系統,其特徵在於,所述系統包括如權利要求10 16任一所述的裝 置,第一核心軟體模塊和第二核心軟體模塊。
18.—種路由設備,其特徵在於,所述路由設備包括如權利要求17所述的微內核系統。
全文摘要
本發明公開了一種微內核系統中軟體模塊的通信方法、系統及裝置,用以解決微內核系統中各核心軟體模塊之間的通信,導致系統性能降低的問題。該方法接收到針對第一核心軟體模塊的信息請求的信息庫模塊,確定對信息請求提供信息的第一核心軟體模塊的信息表的信息,在信息表中根據該信息請求進行相應處理,並發送處理完成通告。由於在本發明實施例中在信息庫模塊中針對每個核心軟體模塊都設置了對應的信息表,在該信息表中針對該信息請求進行相應的處理,因此其他核心軟體模塊無需再與第一核心軟體模塊進行交互獲取相應信息,從而降低了微內核系統中核心軟體模塊之間的耦合程度,減小了核心軟體模塊在進行相應信息操作時的性能下降。
文檔編號G06F9/54GK101980170SQ20101051999
公開日2011年2月23日 申請日期2010年10月20日 優先權日2010年10月20日
發明者劉忠東, 胡閩, 陳宏濤, 馬曉靖 申請人:北京星網銳捷網絡技術有限公司

同类文章

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

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有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-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀