国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      異構(gòu)多核系統(tǒng)及基于該系統(tǒng)的串口控制自動切換方法

      文檔序號:6461912閱讀:214來源:國知局
      專利名稱:異構(gòu)多核系統(tǒng)及基于該系統(tǒng)的串口控制自動切換方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及計(jì)算機(jī)操作系統(tǒng)領(lǐng)域,尤其涉及一種異構(gòu)多核系統(tǒng)和串口自 動切^:的方法。背景4支術(shù)隨著芯片設(shè)計(jì)水平的提高以及應(yīng)用需求的提升,多核CPU越來越多的 被運(yùn)用到產(chǎn)品中。目前采用多核CPU的異構(gòu)體系大多選用CPU中的一個(gè)核 作為主核,承擔(dān)主要的資源管理和復(fù)雜邏輯運(yùn)算;其余的核作為從核承擔(dān)邏 輯簡單但數(shù)據(jù)量大的工作。操作系統(tǒng)中通常有一個(gè)命令行進(jìn)程用于輸入和輸出字符信息。串口是當(dāng) 前普遍被使用的調(diào)試接口 。當(dāng)CPU控制了串口后,操作系統(tǒng)會將輸入、輸 出等終端掛接在串口上,從CPU輸出到終端的信息則會通過串口顯示在顯 示終端上;另一方面,外部也可以通過串口向CPU輸入信息。在異構(gòu)多核體系中,每個(gè)核運(yùn)行著各自獨(dú)立的操作系統(tǒng)并發(fā)執(zhí)行。在任 意一個(gè)時(shí)刻,只會有一個(gè)核上的操作系統(tǒng)控制著串口,也即意味著只有這個(gè) 核上的操作系統(tǒng)可以從串口上接收信息以及向串口輸出信息,而其它核上的 操作系統(tǒng)會將其輸入、輸出終端掛接在非串口設(shè)備上,無法從串口上打印信 息,同時(shí)也無法從串口接收信息。在異構(gòu)多核系統(tǒng)中,同一時(shí)刻最多只有一個(gè)"串口連接核"(即當(dāng)前控 制串口的核)。當(dāng)用戶更改系統(tǒng)中"串口連接核"時(shí),需要通過串口將更改 命令發(fā)送給當(dāng)前"串口連接核,,;"串口連接核,,從串口收到命令后會放棄 本身對串口的控制,同時(shí)向用戶請求串口連接核發(fā)送消息,后者收到消息后 會接管對串口的控制。但若當(dāng)前"串口連接核"在運(yùn)行時(shí)發(fā)生了異常,造成無法從串口輸入和輸出,則用戶無法再通過串口向系統(tǒng)發(fā)出命令來更換"串口連接核",從而 造成了一個(gè)核發(fā)生了故障,整個(gè)系統(tǒng)都無法調(diào)試的狀態(tài)?,F(xiàn)有的技術(shù)中多為使用外部命令控制串口的切換,或者使用硬件模塊來檢測多CPU系統(tǒng)中CPU對串口的控制狀態(tài)的異常情況。當(dāng)在當(dāng)前連接串口 的CPU本身發(fā)生異常后,外部無法輸入切換命令給CPU,從而無法實(shí)現(xiàn)串 口的切換;另一方面,在多核CPU中,多個(gè)處理單元均集成在同一個(gè)芯片 內(nèi),無法采用外部硬件設(shè)備分別連接多個(gè)CPU的方法來對多核CPU進(jìn)行異 常狀態(tài)檢測。發(fā)明內(nèi)容本發(fā)明要解決的技術(shù)問題是提供一種異構(gòu)多核系統(tǒng)及基于該系統(tǒng)的串 口控制自動切換的方法,以便串口連接核發(fā)生異常時(shí),系統(tǒng)自動切換到其他 核對串口進(jìn)行控制。為了解決上述問題,本發(fā)明提供了一種異構(gòu)多核系統(tǒng),該系統(tǒng)中的各核 采用核間通信方式進(jìn)行消息交互,該系統(tǒng)包括用于控制系統(tǒng)串口的串口連接 核、監(jiān)控核和預(yù)備核,其中,所述串口連接核還用于通過核間通信方式定時(shí)向監(jiān)控核發(fā)送狀態(tài)匯報(bào) 消息;所述監(jiān)控核用于與串口連接核約定匯報(bào)超時(shí)周期,并用于判斷串口連接 核發(fā)送狀態(tài)匯報(bào)消息是否超時(shí),以及在判定超時(shí)時(shí),確定系統(tǒng)中的空閑核作 為預(yù)備核,并通過核間通信方式通知預(yù)備核接管串口控制;所述預(yù)備核用于接管對系統(tǒng)串口的控制,以自動完成串口控制的切換。進(jìn)一步地,所述監(jiān)控核包括監(jiān)控模塊及自動切換控制模塊,其中,所述監(jiān)控模塊用于根據(jù)自動切換控制模塊塊創(chuàng)建的定時(shí)器監(jiān)控串口連 接核是否定時(shí)發(fā)送狀態(tài)匯報(bào)消息,若超時(shí)未收到,則調(diào)用自動切換控制模塊 進(jìn)行串口控制切換,否則定時(shí)器清零;所述自動切換控制模塊用于與串口連接核約定超時(shí)周期,創(chuàng)建定時(shí)器, 以及用于根據(jù)監(jiān)控模塊的調(diào)用通知,選定預(yù)備核,并向預(yù)備核發(fā)送串口切換請求,在收到預(yù)備核切換成功的消息后,用于刪除原定時(shí)器,并為新的串口 連接核創(chuàng)建新的定時(shí)器,并調(diào)用監(jiān)控模塊開始監(jiān)控當(dāng)前串口連接核,否則確 定其他空閑核作為預(yù)備核,并向其發(fā)送串口切換請求。進(jìn)一步地,所述串口連接核還用于向監(jiān)控核轉(zhuǎn)發(fā)收到的外部切換請求, 所述監(jiān)控核還包括外部切換請求響應(yīng)模塊,該模塊用于接收串口連接核轉(zhuǎn)發(fā) 的外部切換請求,并調(diào)用自動切換控制模塊進(jìn)行切換,自動切換控制模塊用 于根據(jù)外部切換請求確定預(yù)備核。進(jìn)一步地,所述監(jiān)控核還用于設(shè)定串口切換請求響應(yīng)時(shí)間,若預(yù)備核超 時(shí)沒有反饋串口切換請求響應(yīng)消息,則確定系統(tǒng)其他空閑核為預(yù)備核,并向 該預(yù)備核發(fā)送串口切換請求。進(jìn)一步地,所述串口連接核采用事先約定的消息格式向監(jiān)控核發(fā)送狀態(tài) 匯報(bào)消息,以便于監(jiān)控核識別。為解決上述技術(shù)問題,本發(fā)明還提供了一種基于以上系統(tǒng)的串口控制自動切換的方法,該方法包4舌以下步驟步驟a:監(jiān)控核與串口連接核約定串口連接核發(fā)送狀態(tài)匯報(bào)消息的匯報(bào) 超時(shí)周期;步驟b:串口連接核利用核間通信方式在匯報(bào)超時(shí)周期內(nèi)定時(shí)向監(jiān)控核 發(fā)送狀態(tài)匯報(bào)消息;步驟c:若監(jiān)控核發(fā)現(xiàn)串口連接核發(fā)送的狀態(tài)匯報(bào)消息超時(shí),監(jiān)控核確 定預(yù)備核;步驟d:監(jiān)控核向預(yù)備核發(fā)送接管串口控制的通知,預(yù)備核接管串口控 制,以自動完成串口控制的切換。進(jìn)一步地,步驟c中,監(jiān)控核為當(dāng)前串口連接核創(chuàng)建定時(shí)器,每個(gè)時(shí)鐘 中斷流程包括以下步-驟步驟cl:監(jiān)控核判斷定時(shí)器是否超時(shí),如果是,則監(jiān)控核確定系統(tǒng)中 的空閑核為預(yù)備核;否則4丸行步驟c2;步驟c2:監(jiān)控核判定是否收到串口連接核發(fā)送的狀態(tài)匯報(bào)消息,如果 收到則執(zhí)行步驟c3 ,否則執(zhí)行步驟c4;步驟c3:監(jiān)控核將定時(shí)器清零;步驟c4:監(jiān)控核將定時(shí)器加l;監(jiān)控核確定預(yù)備核后,步驟d進(jìn)一步包括以下步驟步驟dl:監(jiān)控核向預(yù)備核發(fā)送切換請求消息,以通知預(yù)備核接管串口 控制,如果預(yù)備核反饋的消息顯示預(yù)備核切換串口成功,轉(zhuǎn)步驟d2,否則 重新選擇其他空閑核為預(yù)備核,并重復(fù)步驟dl;步驟d2:監(jiān)控核刪除原定時(shí)器,并為預(yù)備核創(chuàng)建新的定時(shí)器;步驟d3:調(diào)用監(jiān)控模塊開始監(jiān)控當(dāng)前串口連接核預(yù)備核。進(jìn)一步地,步驟dl中,如果監(jiān)控核在事先設(shè)定響應(yīng)時(shí)間內(nèi)沒有收到預(yù) 備核響應(yīng)消息,則重新選擇其他空閑核為預(yù)備核。進(jìn)一步地,若所述串口連接核收到外部切換請求,則向監(jiān)控核轉(zhuǎn)發(fā)該請 求,監(jiān)控核根據(jù)該請求確定預(yù)備核,并向預(yù)備核發(fā)送接管串口控制通知,預(yù) 備核接管串口控制,以完成串口控制的切換。進(jìn)一步地,步驟b中,所述串口連接核用事先約定的消息格式向監(jiān)控核 發(fā)送狀態(tài)匯報(bào)消息,以便于監(jiān)控核識別。與現(xiàn)有技術(shù)相比較,本發(fā)明異構(gòu)多核系統(tǒng)及基于該系統(tǒng)的串口控制自動 切換方法,利用核間通信手段這種最直接,效率最高的方式來實(shí)現(xiàn)串口的自 動切換,并通過串口連接核向監(jiān)控核定時(shí)發(fā)送狀態(tài)匯報(bào)消息的自動檢測CPU 的異常狀態(tài),并不引入其他外部硬件模塊, 一旦發(fā)現(xiàn)串口連接核異常,可以 立即進(jìn)行串口控制的自動切換,防止串口控制掛起。


      圖1是本發(fā)明異構(gòu)多核系統(tǒng)示意圖。圖2是本發(fā)明監(jiān)控核的監(jiān)控模塊的每個(gè)時(shí)鐘中斷的軟件流程3是本發(fā)明監(jiān)控核的自動切換控制模塊的軟件流程4是本發(fā)明監(jiān)控核的外部切換請求響應(yīng)模塊的軟件流程圖;8具體實(shí)施方式
      本發(fā)明基于異構(gòu)多核系統(tǒng)的串口控制自動切換的主要思想是設(shè)定該系 統(tǒng)監(jiān)控核,由該監(jiān)控核利用核間通信方式監(jiān)控串口連接核的狀態(tài),當(dāng)串口連 接核狀態(tài)異常時(shí),控制完成串口控制自動切換的過程。本發(fā)明異構(gòu)多核系統(tǒng)包括監(jiān)控核、串口連接核和預(yù)備核,各核之間采用 核間通信方式進(jìn)行消息交互,其中,串口連接核用于控制系統(tǒng)串口 ,并通過核間通信方式定時(shí)向監(jiān)控核發(fā)送 狀態(tài)匯報(bào)消息,及向監(jiān)控核轉(zhuǎn)發(fā)外部切換請求;為便于監(jiān)控核識別,串口連接核采用事先約定的消息^^各式向監(jiān)控核發(fā)送 狀態(tài)匯報(bào)消息。監(jiān)控核用于與串口連接核約定匯報(bào)超時(shí)周期,并用于判斷串口連接核發(fā) 送狀態(tài)匯報(bào)消息是否超時(shí),若超時(shí)或收到串口連接核轉(zhuǎn)發(fā)的外部切換請求 時(shí),還用于通過核間通信方式通知預(yù)備核接管串口控制,并根據(jù)預(yù)備核的切 換響應(yīng)情況確定是否選用其他核作為預(yù)備核進(jìn)行串口控制切換。預(yù)備核是監(jiān)控核從系統(tǒng)的空閑核(即當(dāng)前未控制串口的核)中選定的或 根據(jù)外部切換請求確定的,用于接管對系統(tǒng)串口的控制,并向監(jiān)控核反饋切 才奐響應(yīng)消息。本發(fā)明基于以上異構(gòu)多核系統(tǒng)的串口控制自動切換方法包括以下步驟步驟A:監(jiān)控核與串口連接核約定串口連接核發(fā)送狀態(tài)匯報(bào)消息的匯報(bào) 超時(shí)周期;步驟B:串口連接核利用核間通信方式在匯報(bào)超時(shí)周期內(nèi)定時(shí)向監(jiān)控核 發(fā)送狀態(tài)匯報(bào)消息,若收到外部切換請求消息,則向監(jiān)控核轉(zhuǎn)發(fā)外部切換請 求消息;步驟C:若監(jiān)控核發(fā)現(xiàn)串口連接核發(fā)送的狀態(tài)匯報(bào)消息超時(shí)或收到串口 連接核轉(zhuǎn)發(fā)的外部切換串口請求消息,監(jiān)控核選擇其他空閑核作為預(yù)備核或 根據(jù)外部切換請求確定預(yù)備核;步驟D:監(jiān)控核向預(yù)備核發(fā)送串口切換請求消息,預(yù)備核"f妄管對串口的控制,并根據(jù)切換結(jié)果向監(jiān)控核發(fā)送串口切換請求響應(yīng),完成串口控制自動 切換。本發(fā)明監(jiān)控核可以選用異構(gòu)多核系統(tǒng)中其中 一 個(gè)核來實(shí)現(xiàn),用以監(jiān)控當(dāng) 前串口連接核是否運(yùn)行正常,當(dāng)發(fā)現(xiàn)串口連接核異常時(shí),監(jiān)控核控制進(jìn)行串 口控制自動切換,監(jiān)控核包括監(jiān)控模塊、自動切換控制模塊和外部切換請求響應(yīng)才莫塊,其中監(jiān)控模塊用于根據(jù)自動切換控制模塊創(chuàng)建的定時(shí)器監(jiān)控串口連接核是 否定時(shí)發(fā)送狀態(tài)匯報(bào)消息,若超時(shí)未收到,則調(diào)用自動切換控制模塊進(jìn)行串 口控制切換,否則定時(shí)器清零;自動切換控制模塊用于與串口連接核約定超時(shí)周期,創(chuàng)建定時(shí)器,以 及根據(jù)監(jiān)控模塊的調(diào)用通知,選定預(yù)備核,并向預(yù)備核發(fā)送串口切換請求, 以及在收到預(yù)備核切換成功的消息后通知監(jiān)控模塊,否則確定其他空閑核作 為預(yù)備核,并向其發(fā)送串口切換請求;外部切換請求響應(yīng)模塊用于接收串口連接核轉(zhuǎn)發(fā)的外部切換請求,并 判斷切換請求核是否是監(jiān)控核本身,若是則阻止切換,否則調(diào)用自動切換控 制模塊進(jìn)行切換。本發(fā)明把外部切換請求觸發(fā)的串口控制切換也采由監(jiān)控核進(jìn)行控制,可 以防止因切換請求核異常,而導(dǎo)致的切換后掛起現(xiàn)象。以下結(jié)合附圖,對以上各模塊的工作流程及本發(fā)明串口控制自動切換方 法進(jìn)行詳細(xì)說明。監(jiān)控模塊監(jiān)控模塊對當(dāng)前串口連接核的監(jiān)控可以通過以下方法實(shí)現(xiàn)由當(dāng)前串口 連接核通過核間通信方式定時(shí)向監(jiān)控核發(fā)送狀態(tài)匯報(bào)信息,若監(jiān)控模塊在超 時(shí)周期內(nèi)收到當(dāng)前"串口連接核"的狀態(tài)匯報(bào)信息,則將定時(shí)器清零,重新 計(jì)時(shí)。反之,如果定時(shí)器超時(shí)尚未收到"串口連接核"的狀態(tài)匯報(bào)信息,則 認(rèn)為當(dāng)前"串口連接核,,在運(yùn)行時(shí)發(fā)生了異常,則會調(diào)用自動切換控制模塊 來嘗試切換串口控制到系統(tǒng)中的其他核上。監(jiān)控模塊每個(gè)時(shí)鐘中斷的軟件流程圖如圖2所示步驟201:判斷定時(shí)器是否超時(shí),如果是,調(diào)用自動切換控制模塊;否 則轉(zhuǎn)步驟202步驟202:判斷是否收到來自"串口連接核"的消息。如果是,轉(zhuǎn)步驟 3,否則轉(zhuǎn)步驟205步驟203:根據(jù)雙方事先約定的消息格式判斷是否是狀態(tài)匯報(bào)消息,如 果是,轉(zhuǎn)步驟204,否則轉(zhuǎn)步驟205;核間通信是多核CPU的通用手段,除了本發(fā)明定義的狀態(tài)匯報(bào)消息, 系統(tǒng)中可能還有其他應(yīng)用也在通過核間通信在多個(gè)核之間傳遞信息,所以要 力口以區(qū)分。步驟204:監(jiān)控模塊將定時(shí)器清零,結(jié)束該流程;步驟205:監(jiān)控模塊將定時(shí)器加1,結(jié)束該流程,即繼續(xù)在該超時(shí)周期 內(nèi)監(jiān)控串口連接核的狀態(tài)。自動切換控制模塊當(dāng)監(jiān)控模塊斷定當(dāng)前"串口連接核"發(fā)生了異常后,自動切換控制模塊 選擇系統(tǒng)中另外一個(gè)核(稱為預(yù)備核)作為準(zhǔn)備控制串口的核,并向預(yù)備核 發(fā)送切換請求消息,如果該預(yù)備核的狀態(tài)正常,則收到消息后會自行接管串 口,并一切就緒后向監(jiān)控核反饋串口切換成功的消息,如果預(yù)備核串口切換 失敗,則向監(jiān)控核發(fā)送一個(gè)切換失敗的消息。自動切換控制模塊在收到切換 成功的反饋消息后刪除原"串口連接核"的定時(shí)器,同時(shí)為預(yù)備核創(chuàng)建并啟 動新的定時(shí)器,然后調(diào)用監(jiān)控模塊來重新監(jiān)視該新的串口連接核。反之如果 選出的預(yù)備核狀態(tài)也不正常,無法正常接管串口或反饋信息,串口切換模塊 重新選擇系統(tǒng)中的其他核作為預(yù)備核,并重復(fù)上述過程。該自動切換控制模塊的工作流程如圖3所示,包括以下步驟步驟301:從系統(tǒng)中選擇一個(gè)預(yù)備核,若是由外部切換請求觸發(fā)的串口 控制切換,則是根據(jù)切換請求確定預(yù)備核,如果選擇成功,轉(zhuǎn)步驟302,如 果沒有可選擇的預(yù)備核,則斷定當(dāng)前系統(tǒng)中所有核均已異常,放棄自動切換;以上所說的預(yù)備核是指運(yùn)行正常的非串口連接核,系統(tǒng)中的空閑核作為預(yù)備核的順序可以由系統(tǒng)才艮據(jù)各核對串口控制需求的緩急預(yù)先排定。步驟302:向預(yù)備核發(fā)送切換請求消息,并等待預(yù)備核的切換請求響應(yīng)消息,如果等待超時(shí)(可以事先設(shè)定反饋時(shí)間),轉(zhuǎn)步驟301,否則轉(zhuǎn)步驟 303;事先設(shè)定預(yù)備核反饋時(shí)間可以防止因預(yù)備核狀態(tài)異常,無法反饋切換請 求響應(yīng)消息,而造成監(jiān)控核長時(shí)間等待。步驟303:分析反饋消息,如果消息顯示預(yù)備核切換串口成功,轉(zhuǎn)步驟 304,否則轉(zhuǎn)步驟301;步驟304:刪除原定時(shí)器,并為預(yù)備核創(chuàng)建新的定時(shí)器;步驟305:調(diào)用監(jiān)控模塊開始監(jiān)控當(dāng)前串口連接核預(yù)備核。外部切換請求響應(yīng)模塊當(dāng)外部通過串口發(fā)送給當(dāng)前"連接串口核" 一個(gè)切換串口請求后,"串 口連接核"轉(zhuǎn)發(fā)該請求給監(jiān)控核。2 )自動切換控制模塊采用如圖4的流程監(jiān)控核的外部串口切換響應(yīng)模塊采用如圖3的流程步驟401:判斷是否收到從當(dāng)前"串口連接核"轉(zhuǎn)發(fā)的切換串口請求消 息,如果是,轉(zhuǎn)步驟402,否則結(jié)束流程;步驟402:分析消息來判斷請求切換的核是否是監(jiān)控核本身。如果是, 轉(zhuǎn)步驟403;否則轉(zhuǎn)步驟404;步驟403:向當(dāng)前"串口連接核"反饋?zhàn)柚骨袚Q的消息;步驟404:調(diào)用"自動切換控制模塊"。以上是以監(jiān)控核本身永遠(yuǎn)不能作為"串口連接核,,為例進(jìn)行說明的,正 常情況不會有切換到監(jiān)控核的請求,但為了防止誤操作,所以監(jiān)控核收到該 請求后需要判斷請求切換的是否是監(jiān)控核本身,如果是則反饋?zhàn)柚骨袚Q的消 息,否則調(diào)用"自動切換控制模塊,,,同時(shí)向"串口連接核"反饋允許切換 的消息,另一方面,當(dāng)前"連接串口核"如果收到阻止切換的反饋消息,則 放棄本次切換;如果收到允許切換的消息,則主動放棄它對串口的掌控。如果在實(shí)際應(yīng)用中,異構(gòu)多核系統(tǒng)中的核都有可能稱為串口連接核,則 可以通過設(shè)定"預(yù)備監(jiān)控核,,的方法來解決,即如果根據(jù)外部命令需由當(dāng)前 監(jiān)控核作為下一個(gè)串口連接核,則調(diào)用"預(yù)備監(jiān)控核"來監(jiān)控當(dāng)前監(jiān)控核, 實(shí)現(xiàn)本發(fā)明。與現(xiàn)有技術(shù)相比較,本發(fā)明異構(gòu)多核系統(tǒng)及基于該系統(tǒng)的串口控制自動 切換方法,利用核間通信手段這種最直接,效率最高的方式來實(shí)現(xiàn)串口的自 動切換,并通過串口連接核向監(jiān)控核定時(shí)發(fā)送狀態(tài)匯才艮消息的自動檢測CPU 的異常狀態(tài),并不引入其他外部硬件模塊, 一旦發(fā)現(xiàn)串口連接核異常,可以 立即進(jìn)行串口控制的自動切換,防止串口控制掛起。
      權(quán)利要求
      1、一種異構(gòu)多核系統(tǒng),該系統(tǒng)中的各核采用核間通信方式進(jìn)行消息交互,該系統(tǒng)包括用于控制系統(tǒng)串口的串口連接核,其特征在于該系統(tǒng)還包括監(jiān)控核和預(yù)備核,其中,所述串口連接核還用于通過核間通信方式定時(shí)向監(jiān)控核發(fā)送狀態(tài)匯報(bào)消息;所述監(jiān)控核用于與串口連接核約定匯報(bào)超時(shí)周期,并用于判斷串口連接核發(fā)送狀態(tài)匯報(bào)消息是否超時(shí),以及在判定超時(shí)時(shí),確定系統(tǒng)中的空閑核作為預(yù)備核,并通過核間通信方式通知預(yù)備核接管串口控制;所述預(yù)備核用于接管對系統(tǒng)串口的控制,以自動完成串口控制的切換。
      2、 如權(quán)利要求l所述的系統(tǒng),其特征在于所述監(jiān)控核包括監(jiān)控模塊 及自動切換控制模塊,其中,所述監(jiān)控模塊用于根據(jù)自動切換控制模塊塊創(chuàng)建的定時(shí)器監(jiān)控串口連 接核是否定時(shí)發(fā)送狀態(tài)匯報(bào)消息,若超時(shí)未收到,則調(diào)用自動切換控制模塊 進(jìn)行串口控制切換,否則定時(shí)器清零;所述自動切換控制模塊用于與串口連接核約定超時(shí)周期,創(chuàng)建定時(shí)器, 以及用于根據(jù)監(jiān)控模塊的調(diào)用通知,選定預(yù)備核,并向預(yù)備核發(fā)送串口切換 請求,在收到預(yù)備核切換成功的消息后,用于刪除原定時(shí)器,并為新的串口 連接核創(chuàng)建新的定時(shí)器,并調(diào)用監(jiān)控模塊開始監(jiān)控當(dāng)前串口連接核,否則確 定其他空閑核作為預(yù)備核,并向其發(fā)送串口切換請求。
      3、 如權(quán)利要求2所述的系統(tǒng),其特征在于所述串口連接核還用于向 監(jiān)控核轉(zhuǎn)發(fā)收到的外部切換請求,所述監(jiān)控核還包括外部切換請求響應(yīng)模 塊,該模塊用于接收串口連接核轉(zhuǎn)發(fā)的外部切換請求,并調(diào)用自動切換控制 模塊進(jìn)行切換,自動切換控制模塊用于根據(jù)外部切換請求確定預(yù)備核。
      4、 如權(quán)利要求l所述的系統(tǒng),其特征在于所述監(jiān)控核還用于設(shè)定串 口切換請求響應(yīng)時(shí)間,若預(yù)備核超時(shí)沒有反饋串口切換請求響應(yīng)消息,則確 定系統(tǒng)其他空閑核為預(yù)備核,并向該預(yù)備核發(fā)送串口切換請求。
      5、 如權(quán)利要求l所述的系統(tǒng),其特征在于所述串口連接核采用事先 約定的消息格式向監(jiān)控核發(fā)送狀態(tài)匯報(bào)消息,以便于監(jiān)控核識別。
      6、 一種基于權(quán)利要求1所述的系統(tǒng)的串口控制自動切換的方法,其特 ^E在于,該方法包括以下步驟步驟a:監(jiān)控核與串口連接核約定串口連接核發(fā)送狀態(tài)匯報(bào)消息的匯報(bào) 超時(shí)周期;步驟b:串口連接核利用核間通信方式在匯報(bào)超時(shí)周期內(nèi)定時(shí)向監(jiān)控核 發(fā)送狀態(tài)匯報(bào)消息;步驟c:若監(jiān)控核發(fā)現(xiàn)串口連接核發(fā)送的狀態(tài)匯報(bào)消息超時(shí),監(jiān)控核確 定預(yù)備核;步驟d:監(jiān)控核向預(yù)備核發(fā)送接管串口控制的通知,預(yù)備核接管串口控 制,以自動完成串口控制的切換。
      7、 如權(quán)利要求6所述的方法,其特征在于,步驟c中,監(jiān)控核為當(dāng)前 串口連接核創(chuàng)建定時(shí)器,每個(gè)時(shí)鐘中斷流程包括以下步驟步驟cl:監(jiān)控核判斷定時(shí)器是否超時(shí),如果是,則監(jiān)控核確定系統(tǒng)中 的空閑核為預(yù)備核;否則執(zhí)行步驟c2;步驟c2:監(jiān)控核判定是否收到串口連接核發(fā)送的狀態(tài)匯報(bào)消息,如果 收到則執(zhí)行步驟c3 ,否則執(zhí)行步驟c4;步驟c3:監(jiān)控核將定時(shí)器清零;步驟c4:監(jiān)控核將定時(shí)器加l;監(jiān)控核確定預(yù)備核后,步驟d進(jìn)一步包括以下步驟步驟dl:監(jiān)控核向預(yù)備核發(fā)送切換請求消息,以通知預(yù)備核接管串口 控制,如果預(yù)備核反饋的消息顯示預(yù)備核切換串口成功,轉(zhuǎn)步驟d2,否則 重新選擇其他空閑核為預(yù)備核,并重復(fù)步驟dl;步驟d2:監(jiān)控核刪除原定時(shí)器,并為預(yù)備核創(chuàng)建新的定時(shí)器;步驟d3:調(diào)用監(jiān)控模塊開始監(jiān)控當(dāng)前串口連接核預(yù)備核。
      8、 如權(quán)利要求7所述的方法,其特征在于步驟dl中,如果監(jiān)控核在 事先設(shè)定響應(yīng)時(shí)間內(nèi)沒有收到預(yù)備核響應(yīng)消息,則重新選擇其他空閑核為預(yù) 備核。
      9、 如權(quán)利要求6所述的方法,其特征在于若所述串口連"^妻核收到外 部切換請求,則向監(jiān)控核轉(zhuǎn)發(fā)該請求,監(jiān)控核根據(jù)該請求確定預(yù)備核,并向 預(yù)備核發(fā)送接管串口控制通知,預(yù)備核接管串口控制,以完成串口控制的切換。
      10、 如權(quán)利要求6所述的方法,其特征在于步驟b中,所述串口連接 核用事先約定的消息格式向監(jiān)控核發(fā)送狀態(tài)匯報(bào)消息,以便于監(jiān)控核識別。
      全文摘要
      本發(fā)明提供了一種異構(gòu)多核系統(tǒng)及基于該系統(tǒng)的串口控制自動切換方法,該系統(tǒng)中的各核采用核間通信方式進(jìn)行消息交互,該系統(tǒng)包括用于控制系統(tǒng)串口的串口連接核、監(jiān)控核和預(yù)備核,其中,所述串口連接核還用于通過核間通信方式定時(shí)向監(jiān)控核發(fā)送狀態(tài)匯報(bào)消息;所述監(jiān)控核用于與串口連接核約定匯報(bào)超時(shí)周期,并用于判斷串口連接核發(fā)送狀態(tài)匯報(bào)消息是否超時(shí),以及在判定超時(shí)時(shí),確定系統(tǒng)中的空閑核作為預(yù)備核,并通過核間通信方式通知預(yù)備核接管串口控制;所述預(yù)備核用于接管對系統(tǒng)串口的控制,以自動完成串口控制的切換。本發(fā)明系統(tǒng)和方法可以在串口連接核發(fā)生異常時(shí),使系統(tǒng)自動切換到其他核對串口進(jìn)行控制。
      文檔編號G06F11/00GK101256519SQ20081008801
      公開日2008年9月3日 申請日期2008年3月27日 優(yōu)先權(quán)日2008年3月27日
      發(fā)明者凡 楊 申請人:中興通訊股份有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
      1