專利名稱:一種監(jiān)控系統(tǒng)總線的方法及裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計算機領(lǐng)域,特別涉及一種監(jiān)控系統(tǒng)總線的方法及裝置。
背景技術(shù):
隨著工藝的不斷發(fā)展,產(chǎn)品應(yīng)用需要的日新月異,致使通信芯片的集成度越來越大,芯片的功能更加復(fù)雜。通信芯片的集成度大以及功能復(fù)雜會導(dǎo)致通信芯片更加容易受到環(huán)境的影響而發(fā)生軟失效。通信芯片中的系統(tǒng)總線發(fā)生異常是通信芯片發(fā)生的ー種較常見軟失效。其中,通信芯片可以包括多個處理器和加速器等設(shè)備,系統(tǒng)總線是設(shè)備之間的通信通道,設(shè)備之間通過系統(tǒng)總線來完成相互通信和保證數(shù)據(jù)一致性,因此系統(tǒng)總線的健壯性是非常重要的。其中,及時發(fā)現(xiàn)通信芯片中的系統(tǒng)總線發(fā)生的異常是保障系統(tǒng)總線健壯性的重要手段之一,然而目前還未有方法來及時發(fā)現(xiàn)通信芯片中的系統(tǒng)總線發(fā)生的異常。
發(fā)明內(nèi)容
為了及時發(fā)現(xiàn)系統(tǒng)總線發(fā)生的異常,本發(fā)明實施例提供了一種監(jiān)控系統(tǒng)總線的方法及裝置。所述技術(shù)方案如下一種監(jiān)控系統(tǒng)總線的方法,所述方法包括監(jiān)測裝置對其對應(yīng)的系統(tǒng)總線進行實時監(jiān)控,當監(jiān)控到所述系統(tǒng)總線傳輸命令時,獲取所述命令的命令信息,所述命令信息包括命令標識、命令地址和數(shù)據(jù)個數(shù);根據(jù)所述命令標識和命令地址確定所述系統(tǒng)總線是否發(fā)生命令傳輸異常;如果所述系統(tǒng)總線未發(fā)生命令傳輸異常,則當監(jiān)控到所述系統(tǒng)總線傳輸所述命令對應(yīng)的數(shù)據(jù),根據(jù)所述數(shù)據(jù)和所述數(shù)據(jù)個數(shù)確定所述系統(tǒng)總線是否發(fā)生命令異常;以及,當監(jiān)控到所述系統(tǒng)總線傳輸所述命令對應(yīng)的響應(yīng)消息,獲取所述命令的命令等待時間,井根據(jù)所述命令等待時間確定所述系統(tǒng)總線是否發(fā)生超時異常。一種監(jiān)控系統(tǒng)總線的方法,所述方法包括當監(jiān)測裝置對其對應(yīng)的系統(tǒng)總線進行監(jiān)控并監(jiān)控出所述系統(tǒng)總線發(fā)生異常時,接收所述監(jiān)測裝置發(fā)送的所述系統(tǒng)總線發(fā)生的異常和所述系統(tǒng)總線的標識;如果所述系統(tǒng)總線發(fā)生的異常為超時異常,則根據(jù)所述系統(tǒng)總線的標識發(fā)送切換消息給連接到所述系統(tǒng)總線的設(shè)備,使所述設(shè)備使用備份系統(tǒng)總線來收發(fā)命令或數(shù)據(jù);如果所述系統(tǒng)總線發(fā)生的異常為非超時異常,則增加所述系統(tǒng)總線發(fā)生異常的異常次數(shù);當所述異常次數(shù)超過預(yù)設(shè)閾值,根據(jù)所述系統(tǒng)總線的標識發(fā)送切換消息給連接到所述系統(tǒng)總線的設(shè)備,使所述設(shè)備使用備份系統(tǒng)總線來收發(fā)命令或數(shù)據(jù)。一種監(jiān)測裝置,所述設(shè)備包括監(jiān)控模塊,用于對所述監(jiān)測裝置對應(yīng)的系統(tǒng)總線進行實時監(jiān)控,當監(jiān)控到所述系統(tǒng)總線傳輸命令時,獲取所述命令的命令信息,所述命令信息包括命令標識、命令地址和數(shù)據(jù)個數(shù);
第一確定模塊,用于根據(jù)所述命令標識和命令地址確定所述系統(tǒng)總線是否發(fā)生命令傳輸異常;第二確定模塊,用于如果所述系統(tǒng)總線未發(fā)生命令傳輸異常,則當監(jiān)控到所述系統(tǒng)總線傳輸所述命令對應(yīng)的數(shù)據(jù),根據(jù)所述數(shù)據(jù)和所述數(shù)據(jù)個數(shù)確定所述系統(tǒng)總線是否發(fā)生命令異常;第三確定模塊,用于如果所述系統(tǒng)總線未發(fā)生命令傳輸異常,則當監(jiān)控到所述系統(tǒng)總線傳輸所述命令對應(yīng)的響應(yīng)消息,獲取所述命令 的命令等待時間,井根據(jù)所述命令等待時間確定所述系統(tǒng)總線是否發(fā)生超時異常。ー種管理裝置,所述設(shè)備包括接收模塊,用于當監(jiān)測裝置對其對應(yīng)的系統(tǒng)總線進行監(jiān)控并監(jiān)控出所述系統(tǒng)總線發(fā)生異常時,接收所述監(jiān)測裝置發(fā)送的所述系統(tǒng)總線發(fā)生的異常和所述系統(tǒng)總線的標識;第一發(fā)送模塊,用于如果所述系統(tǒng)總線發(fā)生的異常為超時異常,則根據(jù)所述系統(tǒng)總線的標識發(fā)送切換消息給連接到所述系統(tǒng)總線的設(shè)備,使所述設(shè)備使用備份系統(tǒng)總線來收發(fā)命令或數(shù)據(jù);第二發(fā)送模塊,用于如果所述系統(tǒng)總線發(fā)生的異常為非超時異常,則增加所述系統(tǒng)總線發(fā)生異常的異常次數(shù);當所述異常次數(shù)超過預(yù)設(shè)閾值,根據(jù)所述系統(tǒng)總線的標識發(fā)送切換消息給連接到所述系統(tǒng)總線的設(shè)備,使所述設(shè)備使用備份系統(tǒng)總線來收發(fā)命令或數(shù)據(jù)。在本發(fā)明實施例,監(jiān)測裝置對其對應(yīng)的系統(tǒng)總線進行實時監(jiān)控,當監(jiān)控出該系統(tǒng)總線傳輸命令吋,獲取該命令的命令信息包括命令標識、命令地址和數(shù)據(jù)個數(shù),根據(jù)獲取的命令信息和該系統(tǒng)總線上傳輸該命令對應(yīng)的數(shù)據(jù)和響應(yīng)消息來判斷該系統(tǒng)總線是否發(fā)異常;如此能夠及時發(fā)現(xiàn)該系統(tǒng)總線上發(fā)生的異常。
圖I是本發(fā)明實施例提供的ー種通信芯片結(jié)構(gòu)示意圖;圖2是本發(fā)明實施例提供的一種監(jiān)控系統(tǒng)總線的方法流程圖;圖3是本發(fā)明另ー實施例提供的一種監(jiān)控系統(tǒng)總線的方法流程圖;圖4是本發(fā)明另ー實施例提供的一種監(jiān)控系統(tǒng)總線的方法流程圖;圖5是本發(fā)明另ー實施例提供的一種監(jiān)控系統(tǒng)總線的方法流程圖;圖6是本發(fā)明實施例提供的一種監(jiān)測裝置結(jié)構(gòu)示意圖;圖7是本發(fā)明實施例提供的ー種管理裝置結(jié)構(gòu)示意圖。
具體實施例方式為使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合附圖對本發(fā)明實施方式作進ー步地詳細描述。參見圖1,通信芯片中包括處理器、加速器和存儲系統(tǒng)等設(shè)備,設(shè)備之間通過系統(tǒng)總線相連,且每個設(shè)備通過其對應(yīng)的ー個總線接ロ連接到系統(tǒng)總線上,在總線接ロ處設(shè)置監(jiān)測裝置,該監(jiān)測裝置與該總線接ロ相連的系統(tǒng)總線和該總線接ロ對應(yīng)的設(shè)備相對應(yīng),且在本發(fā)明中,設(shè)備之間的系統(tǒng)總線為雙總線結(jié)構(gòu),即設(shè)備之間的系統(tǒng)總線包括兩路系統(tǒng)總線,且設(shè)備使用其中一路系統(tǒng)總線來收發(fā)命令或數(shù)據(jù),并將另一路系統(tǒng)總線作為備份系統(tǒng)總線;命令中包括命令標識、命令傳輸類型、命令地址和數(shù)據(jù)個數(shù),且命令分為讀命令和寫命令,讀命令的命令傳輸類型為讀數(shù)據(jù)類型,寫命令的命令傳輸類型為寫數(shù)據(jù)類型,命令的命令周期包括三個傳輸階段,分別為命令階段、數(shù)據(jù)階段和響應(yīng)階段。其中,在本發(fā)明實施例中,將發(fā)送命令的設(shè)備稱為主設(shè)備,將接收命令的設(shè)備稱為目的設(shè)備;主設(shè)備需要從目的設(shè)備中讀取數(shù)據(jù)時,主設(shè)備在命令階段通過其對應(yīng)的總線接ロ發(fā)送讀命令到系統(tǒng)總線上,且該讀命令中包括命令標識、命令傳輸類型為讀數(shù)據(jù)類型、命令地址和數(shù)據(jù)個數(shù)為讀數(shù)據(jù)個數(shù),該系統(tǒng)總線傳輸該讀命令;目的設(shè)備通過其對應(yīng)的總線 接ロ從該系統(tǒng)總線上接收該讀命令,根據(jù)該讀命令包括的讀數(shù)據(jù)個數(shù)讀取數(shù)據(jù)并在數(shù)據(jù)階段通過其對應(yīng)的總線接ロ發(fā)送該數(shù)據(jù)和該讀命令的命令標識到該系統(tǒng)總線上,該系統(tǒng)總線傳輸該讀命令的命令標識和該數(shù)據(jù);主設(shè)備通過其對應(yīng)的總線接ロ從該系統(tǒng)總線上接收該讀命令的命令標識和該數(shù)據(jù);然后目的設(shè)備在響應(yīng)階段通過其對應(yīng)的總線接ロ發(fā)送響應(yīng)消息到系統(tǒng)總線,且該響應(yīng)消息攜帯響應(yīng)標識,該系統(tǒng)總線傳輸該響應(yīng)消息;然后主設(shè)備通過其對應(yīng)的總線接ロ從該系統(tǒng)總線上接收該響應(yīng)消息。主設(shè)備需要寫數(shù)據(jù)到目的設(shè)備時,主設(shè)備在命令階段通過其對應(yīng)的總線接ロ發(fā)送寫命令到系統(tǒng)總線上,且寫命令中包括命令標識、命令傳輸類型為寫數(shù)據(jù)類型、命令地址和數(shù)據(jù)個數(shù)為寫數(shù)據(jù)個數(shù),該系統(tǒng)總線傳輸寫命令;目的設(shè)備通過其對應(yīng)的總線接ロ從該系統(tǒng)總線上接收寫命令;主設(shè)備在數(shù)據(jù)階段通過其對應(yīng)的總線接ロ發(fā)送需要寫的數(shù)據(jù)和寫命令的命令標識到該系統(tǒng)總線上,該系統(tǒng)總線傳輸寫命令的命令標識和該數(shù)據(jù);目的設(shè)備通過其對應(yīng)的總線接ロ從該系統(tǒng)總線上接收寫命令的命令標識和該數(shù)據(jù);然后目的設(shè)備在響應(yīng)階段通過其對應(yīng)的總線接ロ發(fā)送響應(yīng)消息到系統(tǒng)總線,且該響應(yīng)消息攜帶響應(yīng)標識,該系統(tǒng)總線傳輸該響應(yīng)消息;然后主設(shè)備通過其對應(yīng)的總線接ロ從該系統(tǒng)總線上接收該響應(yīng)消息。其中,在本發(fā)明中,還包括一個管理裝置,該管理裝置通過專用總線與每個監(jiān)測裝置相連,每個監(jiān)測裝置可以將其對應(yīng)的系統(tǒng)總線發(fā)生的異常通過專用總線上報給管理裝置,管理裝置接收該系統(tǒng)總線發(fā)生異常,并對該系統(tǒng)總線進行處理。其中,在本實施例中,主設(shè)備對應(yīng)的監(jiān)測裝置和目的設(shè)備對應(yīng)的監(jiān)測裝置可以對該系統(tǒng)總線上傳輸?shù)拿詈蛿?shù)據(jù)等進行實時監(jiān)測。如圖2所示,本發(fā)明實施例提供了一種監(jiān)控系統(tǒng)總線的方法,包括步驟101 :監(jiān)測裝置對其對應(yīng)的系統(tǒng)總線進行實時監(jiān)控,當監(jiān)控到該系統(tǒng)總線傳輸命令時,獲取該命令的命令信息,該命令信息包括命令標識、命令地址和數(shù)據(jù)個數(shù);步驟102 :監(jiān)測裝置根據(jù)該命令標識和命令地址確定該系統(tǒng)總線是否發(fā)生命令傳輸異常;步驟103 :如果該系統(tǒng)總線未發(fā)生命令傳輸異常,則監(jiān)測裝置當監(jiān)控到該系統(tǒng)總線傳輸該命令對應(yīng)的數(shù)據(jù),根據(jù)該數(shù)據(jù)和該數(shù)據(jù)個數(shù)確定該系統(tǒng)總線是否發(fā)生命令異常;步驟104 :當監(jiān)控到該系統(tǒng)總線傳輸該命令對應(yīng)的響應(yīng)消息,獲取該命令的命令等待時間,井根據(jù)該命令等待時間確定該系統(tǒng)總線是否發(fā)生超時異常。在本發(fā)明實施例,監(jiān)測裝置對其對應(yīng)的系統(tǒng)總線進行實時監(jiān)控,當監(jiān)控出該系統(tǒng)總線傳輸命令吋,獲取該命令的命令信息包括命令標識、命令地址和數(shù)據(jù)個數(shù),根據(jù)獲取的命令信息和該系統(tǒng)總線上傳輸該命令對應(yīng)的數(shù)據(jù)和響應(yīng)消息來判斷該系統(tǒng)總線是否發(fā)異常;如此能夠及時發(fā)現(xiàn)該系統(tǒng)總線上發(fā)生的異常。本發(fā)明實施例提供了一種監(jiān)控系統(tǒng)總線的方法。其中,在本實施例中,主設(shè)備需要從目的設(shè)備中讀取數(shù)據(jù),通過與其相連的系統(tǒng)總線發(fā)送讀命令給目的設(shè)備,目的設(shè)備接收該讀命令,讀取數(shù)據(jù)并通過該系統(tǒng)總線發(fā)送給主設(shè)備;其中,主設(shè)備對應(yīng)的監(jiān)測裝置和/或目的設(shè)備對應(yīng)的監(jiān)測裝置可以利用本實施例的方法對該系統(tǒng)總線上傳輸?shù)拿詈蛿?shù)據(jù)進行實時監(jiān)控,參見圖3,該方法包括步驟201 :監(jiān)測裝置對其對應(yīng)的系統(tǒng)總線進行實時監(jiān)測,當監(jiān)測到該系統(tǒng)總線上傳輸命令時,截獲該命令并獲取該命令的命令信息包括命令傳輸類型、命令地址、命令標識和數(shù)據(jù)個數(shù);其中,在本實施例中,監(jiān)測裝置可以為主設(shè)備對應(yīng)的監(jiān)測裝置和/或目的設(shè)備對應(yīng)的監(jiān)測裝置;主設(shè)備發(fā)送的命令為讀命令;主設(shè)備在命令階段通過其對應(yīng)的總線接ロ發(fā) 送讀命令到與其相連的系統(tǒng)總線上,由該系統(tǒng)總線傳輸該讀命令。其中,監(jiān)測裝置可以通過其對應(yīng)的總線接ロ對其對應(yīng)的系統(tǒng)總線進行實時監(jiān)測,當監(jiān)測到該系統(tǒng)總線上傳輸命令吋,通過該總線接ロ截獲該命令,然后從該命令中提取命令傳輸類型、命令地址、命令標識和數(shù)據(jù)個數(shù)。其中,在本步驟中,該系統(tǒng)總線上傳輸?shù)拿顬橹髟O(shè)備發(fā)送的讀命令,所以監(jiān)測裝置從該系統(tǒng)總線上截獲的命令為讀命令,從該讀命令中提取命令傳輸類型為讀數(shù)據(jù)類型、命令地址、命令標識和數(shù)據(jù)個數(shù)為讀數(shù)據(jù)個數(shù);另外,該讀命令中包括的讀數(shù)據(jù)個數(shù)為主設(shè)備需要從目的設(shè)備中讀取的數(shù)據(jù)個數(shù)。步驟202 :監(jiān)測裝置根據(jù)提取的命令傳輸類型對該命令進行判斷,并判斷出該命令為讀命令,然后執(zhí)行步驟203 ;具體地,監(jiān)測裝置對提取的命令傳輸類型進行判斷,并判斷出提取的命令傳輸類型為讀數(shù)據(jù)類型,并據(jù)此確定出該命令為讀命令。其中,如果該命令的命令傳輸類型為寫數(shù)據(jù)類型,則確定出該命令為寫命令。步驟203 :監(jiān)測裝置根據(jù)該讀命令的命令標識和命令地址,確定該系統(tǒng)總線是否發(fā)生讀命令傳輸異常,如果是,則丟棄該讀命令,發(fā)送讀命令傳輸異常和該系統(tǒng)總線的標識給管理裝置;如果否,則執(zhí)行步驟204 ;其中,監(jiān)測裝置獲取該系統(tǒng)總線對應(yīng)的總線協(xié)議,判斷該總線協(xié)議所定義的合法命令標識范圍內(nèi)是否包括該讀命令的命令標識以及該總線協(xié)議所定義的合法命令地址范圍是否包括該讀命令的命令地址,如果該總線協(xié)議所定義的合法命令標識范圍內(nèi)包括該讀命令的命令標識以及該總線協(xié)議所定義的合法命令地址范圍包括該讀命令的命令地址,則判斷出該系統(tǒng)總線沒有發(fā)生讀命令傳輸異常;如果該總線協(xié)議所定義的合法命令標識范圍內(nèi)不包括該讀命令的命令標識和/或該總線協(xié)議所定義的合法地址范圍不包括該讀命令的命令地址,則判斷出該系統(tǒng)總線發(fā)生讀命傳輸令異常。其中,監(jiān)測裝置中可以事先存儲其對應(yīng)的系統(tǒng)總線對應(yīng)的總線協(xié)議和其對應(yīng)的系統(tǒng)總線的標識。步驟204 :監(jiān)測裝置發(fā)送該讀命令給目的設(shè)備,同時為該讀命令設(shè)置計時器,存儲該讀命令的命令信息,以及存儲該讀命令的命令標識與該計時器的對應(yīng)關(guān)系,并使該計時器開始計時;其中,在本步驟中,如果監(jiān)測裝置為主設(shè)備對應(yīng)的監(jiān)測裝置,則監(jiān)測裝置通過該系統(tǒng)總線(與主設(shè)備相連的系統(tǒng)總線)發(fā)送該讀命令給目的設(shè)備,目的設(shè)備通過其對應(yīng)的總線接ロ從該系統(tǒng)總線上接收該讀命令;如果監(jiān)測裝置為目的設(shè)備對應(yīng)的監(jiān)測裝置,則監(jiān)測裝置直接通過其對應(yīng)的總線接ロ(該總線接ロ也為目的設(shè)備對應(yīng)的總線接ロ)發(fā)送該讀命令給目的設(shè)備,目的設(shè)備接收該讀命令。其中,目的設(shè)備接收該讀命令后,并在該讀命令的數(shù)據(jù)階段根據(jù)該讀命令中包括的讀數(shù)據(jù)個數(shù)讀取主設(shè)備需要讀取的數(shù)據(jù),通過其對應(yīng)的總線接ロ發(fā)送該讀命令的命令標識和該數(shù)據(jù)到該系統(tǒng)總線上,由該系統(tǒng)總線傳輸該讀命令的命令標識和該數(shù)據(jù)。步驟205 :監(jiān)測裝置當監(jiān)測到該系統(tǒng)總線傳輸數(shù)據(jù)和命令標識時,截獲該數(shù)據(jù)和該命令標識,確定出該命令標識對應(yīng)的命令為讀命令,統(tǒng)計該數(shù)據(jù)包括的數(shù)據(jù)個數(shù),獲取該讀命令的讀數(shù)據(jù)個數(shù);
具體地,監(jiān)測裝置通過其對應(yīng)的總線接ロ實時監(jiān)測該系統(tǒng)總線,當監(jiān)測到該系統(tǒng)總線傳輸數(shù)據(jù)和命令標識時,截獲該數(shù)據(jù)和該命令標識,根據(jù)該命令標識從已存儲的命令信息中獲取包括該命令標識的命令信息,根據(jù)該命令信息中包括命令傳輸類型為讀數(shù)據(jù)類型,確定該命令標識對應(yīng)的命令為讀命令,并從該命令信息中提取該讀命令的讀數(shù)據(jù)個數(shù),統(tǒng)計該數(shù)據(jù)包括的數(shù)據(jù)個數(shù)。步驟206 :監(jiān)測裝置根據(jù)統(tǒng)計的數(shù)據(jù)個數(shù)和該讀命令的讀數(shù)據(jù)個數(shù)對該系統(tǒng)總線進行判斷,如果該系統(tǒng)總線發(fā)生第一讀命令異常,則執(zhí)行步驟207,如果該系統(tǒng)總線發(fā)生第ニ讀命令異常,則執(zhí)行步驟208,否則,執(zhí)行步驟209 ;具體地,監(jiān)測裝置比較統(tǒng)計的數(shù)據(jù)個數(shù)和該讀命令的讀數(shù)據(jù)個數(shù),如果統(tǒng)計的數(shù)據(jù)個數(shù)小于該讀命令的讀數(shù)據(jù)個數(shù),則判斷出該系統(tǒng)總線發(fā)生第一讀命令異常,如果統(tǒng)計的數(shù)據(jù)個數(shù)大于該讀命令的讀數(shù)據(jù)個數(shù),則判斷出該系統(tǒng)總線發(fā)生第二讀命令異常;如果兩者相等,則判斷該系統(tǒng)總線沒有發(fā)生第一和第二讀命令異常。其中,如果該系統(tǒng)總線發(fā)生第一讀命令異?;虻诙x命令異常,則當該系統(tǒng)總線傳輸讀命令吋,該讀命令中包括的讀數(shù)據(jù)個數(shù)可能會發(fā)生變化,使得目的設(shè)備根據(jù)該讀命令包括的讀數(shù)據(jù)個數(shù)讀取的數(shù)據(jù)個數(shù)與主設(shè)備需要讀取的數(shù)據(jù)個數(shù)不一致,或者,當該系統(tǒng)總線傳輸數(shù)據(jù)時,該數(shù)據(jù)包括的數(shù)據(jù)個數(shù)可能會發(fā)生變化,使該數(shù)據(jù)包括的數(shù)據(jù)個數(shù)與主設(shè)備需要讀取的數(shù)據(jù)個數(shù)不一致。步驟207 :監(jiān)測裝置向該數(shù)據(jù)補充偽數(shù)據(jù),使補充后的數(shù)據(jù)包括的數(shù)據(jù)個數(shù)與該讀命令的讀數(shù)據(jù)個數(shù)相等,發(fā)送第一讀命令異常和該系統(tǒng)總線的標識給管理裝置以及將補充后的數(shù)據(jù)和該命令標識發(fā)送給主設(shè)備,執(zhí)行步驟210 ;具體地,監(jiān)測裝置根據(jù)統(tǒng)計的數(shù)據(jù)個數(shù)和該讀命令的讀數(shù)據(jù)個數(shù),計算出需要補充數(shù)據(jù)的個數(shù),在該數(shù)據(jù)之后或之前補充計算的個數(shù)個偽數(shù)據(jù),使得補充后的數(shù)據(jù)包括的數(shù)據(jù)個數(shù)與該讀命令的讀數(shù)據(jù)個數(shù)相等,發(fā)送第一讀命令異常和該系統(tǒng)總線的標識給管理裝置,以及,發(fā)送補充后的數(shù)據(jù)和該命令標識給主設(shè)備。其中,偽數(shù)據(jù)可以為全O數(shù)據(jù)或全I數(shù)據(jù)等。在本步驟中,如果監(jiān)測裝置為目的設(shè)備對應(yīng)的監(jiān)測裝置,則監(jiān)測裝置通過該系統(tǒng)總線發(fā)送補充后的數(shù)據(jù)和該命令標識給主設(shè)備,主設(shè)備通過其對應(yīng)的總線接ロ從該系統(tǒng)總線上接收補充后的數(shù)據(jù)和該命令標識;如果監(jiān)測裝置為主設(shè)備對應(yīng)的監(jiān)測裝置,則監(jiān)測裝置直接通過其對應(yīng)的總線接ロ發(fā)送補充后的數(shù)據(jù)和該命令標識給主設(shè)備,主設(shè)備接收補充后的數(shù)據(jù)和該命令標識。步驟208 :監(jiān)測裝置從該數(shù)據(jù)中選擇該讀命令的讀數(shù)據(jù)個數(shù)個數(shù)據(jù),發(fā)送選擇的數(shù)據(jù)和該命令標識給主設(shè)備,發(fā)送第二讀命令異常和該系統(tǒng)總線的標識給管理裝置,執(zhí)行步驟210 ;具體地,監(jiān)測裝置從該數(shù)據(jù)包括的第一個數(shù)據(jù)開始向后選擇該讀命令的讀數(shù)據(jù)個數(shù)個數(shù)據(jù),或從該數(shù)據(jù)包括的最后ー個數(shù)據(jù)開始向前選擇該讀命令的讀數(shù)據(jù)個數(shù)個數(shù)據(jù),丟棄未選擇的數(shù)據(jù),發(fā)送選擇的數(shù)據(jù)和該命令標識給主設(shè)備,以及發(fā)送第二讀命令異常和該系統(tǒng)總線的標識給管理裝置。、
其中,在本步驟中,如果監(jiān)測裝置為目的設(shè)備對應(yīng)的監(jiān)測裝置,則監(jiān)測裝置通過該系統(tǒng)總線發(fā)送選擇的數(shù)據(jù)和該命令標識給主設(shè)備,主設(shè)備通過其對應(yīng)的總線接ロ從該系統(tǒng)總線上接收選擇的數(shù)據(jù)和該命令標識;如果監(jiān)測裝置為主設(shè)備對應(yīng)的監(jiān)測裝置,則監(jiān)測裝置直接通過其對應(yīng)的總線接ロ發(fā)送選擇的數(shù)據(jù)和該命令標識給主設(shè)備,主設(shè)備接收選擇的數(shù)據(jù)和該命令標識。步驟209 :監(jiān)測裝置將該數(shù)據(jù)和該命令標識發(fā)送給主設(shè)備;其中,在本步驟中,如果監(jiān)測裝置為目的設(shè)備對應(yīng)的監(jiān)測裝置,則監(jiān)測裝置通過該系統(tǒng)總線發(fā)送該數(shù)據(jù)和該命令標識給主設(shè)備,主設(shè)備通過其對應(yīng)的總線接ロ從該系統(tǒng)總線上接收該數(shù)據(jù)和該命令標識;如果監(jiān)測裝置為主設(shè)備對應(yīng)的監(jiān)測裝置,則監(jiān)測裝置直接通過其對應(yīng)的總線接ロ發(fā)送該數(shù)據(jù)和該命令標識給主設(shè)備,主設(shè)備接收該數(shù)據(jù)和該命令標識。其中,目的設(shè)備發(fā)送完該數(shù)據(jù)和該讀命令的命令標識后,在該讀命令的響應(yīng)階段,通過其對應(yīng)的總線接ロ發(fā)送響應(yīng)消息到該系統(tǒng)總線,且該響應(yīng)消息攜帯響應(yīng)標識。步驟210 :監(jiān)測裝置當從該系統(tǒng)總線上監(jiān)測到響應(yīng)消息,提取該響應(yīng)消息攜帯的響應(yīng)標識,發(fā)送該響應(yīng)消息給主設(shè)備;其中,在本步驟中,如果監(jiān)測裝置為目的設(shè)備對應(yīng)的監(jiān)測裝置,則監(jiān)測裝置通過該系統(tǒng)總線發(fā)送該響應(yīng)消息給主設(shè)備,主設(shè)備通過其對應(yīng)的總線接ロ從該總線上接收該響應(yīng)消息;如果監(jiān)測裝置為主設(shè)備對應(yīng)的監(jiān)測裝置,則監(jiān)測裝置直接通過其對應(yīng)的總線接ロ發(fā)送該響應(yīng)消息給主設(shè)備,主設(shè)備接收該響應(yīng)消息。步驟211 :監(jiān)測裝置根據(jù)該響應(yīng)標識獲取對應(yīng)的命令標識,即該讀命令的命令標識,井根據(jù)該讀命令的命令標識獲取該讀命令的計時器;具體地,監(jiān)測裝置根據(jù)該響應(yīng)標識,從已存儲的響應(yīng)標識與命令標識的對應(yīng)關(guān)系中獲取對應(yīng)的命令標識,該命令標識為該讀命令的命令標識,根據(jù)該讀命令的命令標識,從命令標識與計時器的對應(yīng)關(guān)系中獲取該讀命令的計時器。步驟212 :監(jiān)測裝置讀取該計時器計時的時間得到該讀命令的命令等待間,根據(jù)該讀命令等待時間確定該系統(tǒng)總線是否發(fā)生超時異常,如果是,發(fā)送超時異常和該系統(tǒng)總線的標識給管理裝置;具體地,監(jiān)測裝置讀取該計時器計時的時間,讀取的時間為該讀命令的命令等待時間,判斷該讀命令的命令等待時間是否超過預(yù)設(shè)的命令截止時間,如果超過,則判斷出該系統(tǒng)總線發(fā)生超時異常并發(fā)送超時異常和該系統(tǒng)總線的標識給管理裝置;如果未超過,則判斷出該系統(tǒng)總線沒有發(fā)生超時異常。其中,監(jiān)測裝置判斷完該系統(tǒng)總線是否發(fā)生超時異常之后,監(jiān)測裝置還繼續(xù)對該系統(tǒng)總線進行實時監(jiān)控,當監(jiān)控出該系統(tǒng)總線上傳輸命令吋,則從上述步驟201開始執(zhí)行。步驟213 :管理裝置接收監(jiān)測裝置發(fā)送該系統(tǒng)總線的標識和發(fā)生的異常,對發(fā)生的異常進行判斷,如果為超時異常,則執(zhí)行步驟214,如果為非超時異常,則執(zhí)行步驟216 ;其中,監(jiān)測裝置可以通過其與管理裝置之間的專用總線發(fā)送系統(tǒng)總線的標識和發(fā)生的異常給管理裝置。步驟214 :管理裝置獲取監(jiān)控該系統(tǒng)總線的監(jiān)測裝置的標識,根據(jù)獲取的監(jiān)測裝置的標識發(fā)送切換消息給對應(yīng)的監(jiān)測裝置,使監(jiān)測裝置使其對應(yīng)的設(shè)備使用備份系統(tǒng)總線來收發(fā)命令或數(shù)據(jù);其中,管理裝置事先將監(jiān)測裝置的標識和該監(jiān)測裝置監(jiān)控的系統(tǒng)總線的標識存儲 在監(jiān)測裝置的標識與系統(tǒng)總線的標識的對應(yīng)關(guān)系中。相應(yīng)地,管理裝置獲取監(jiān)控該系統(tǒng)總線的監(jiān)測裝置的標識的操作,可以具體為管理裝置根據(jù)該系統(tǒng)總線的標識,從已存儲的監(jiān)測裝置的標識與系統(tǒng)總線的標識的對應(yīng)關(guān)系中查找出對應(yīng)的監(jiān)測裝置的標識,且查找的監(jiān)測裝置的標識為監(jiān)控該系統(tǒng)總線的監(jiān)測裝置的標識。其中,管理裝置可以通過其與監(jiān)測裝置之間的專用總線發(fā)送切換消息給監(jiān)測裝置,監(jiān)測裝置接收到切換消息后,轉(zhuǎn)發(fā)該切換消息給其對應(yīng)的設(shè)備,然后該設(shè)備接收使用備份系統(tǒng)總線來收發(fā)命令或數(shù)據(jù)。步驟215 :管理裝置發(fā)送攜帶該系統(tǒng)總線的標識的恢復(fù)請求消息給I/0(Input/Output,輸入/輸出)系統(tǒng),使I/O系統(tǒng)對該系統(tǒng)總線進行恢復(fù),執(zhí)行步驟218 ;其中,I/O系統(tǒng)接收該恢復(fù)請求消息,根據(jù)該恢復(fù)請求消息攜帶該系統(tǒng)總線的標識,對該系統(tǒng)總線進行恢復(fù),恢復(fù)完成后發(fā)送恢復(fù)完成消息管理裝置,且該恢復(fù)完成消息攜帶該系統(tǒng)總線的標識。進ー步地,管理裝置根據(jù)該系統(tǒng)總線的標識,查找已存儲的系統(tǒng)總線的標識與異常次數(shù)的對應(yīng)關(guān)系,如果查找出對應(yīng)的異常次數(shù)(為該系統(tǒng)總線已發(fā)生異常的異常次數(shù)),將查找的異常次數(shù)清零。步驟216 :管理裝置增加該系統(tǒng)總線發(fā)生異常的異常次數(shù),判斷増加后的異常次數(shù)是否超過預(yù)設(shè)的閾值,如果是,獲取監(jiān)控該系統(tǒng)總線的監(jiān)測裝置的標識,根據(jù)獲取的監(jiān)測裝置的標識發(fā)送切換消息給監(jiān)測裝置,使監(jiān)測裝置使其對應(yīng)的設(shè)備使用備份系統(tǒng)總線來收發(fā)數(shù)據(jù);其中,管理裝置根據(jù)該系統(tǒng)總線的標識,查找已存儲的系統(tǒng)總線的標識與異常次數(shù)的對應(yīng)關(guān)系,如果查找出對應(yīng)的異常次數(shù),則增加查找的異常次數(shù),如此實現(xiàn)増加該系統(tǒng)總線發(fā)生異常的異常次數(shù),如果沒有查找出對應(yīng)的異常次數(shù),則設(shè)置異常次數(shù)的初值,并將該系統(tǒng)總線的標識和設(shè)置的初值存儲在系統(tǒng)總線的標識與異常次數(shù)的對應(yīng)關(guān)系中,如此實現(xiàn)增加該系統(tǒng)總線發(fā)生異常的異常次數(shù)。步驟217:管理裝置發(fā)送攜帶該系統(tǒng)總線的標識的恢復(fù)請求消息給I/O系統(tǒng),使I/O系統(tǒng)對該系統(tǒng)總線進行恢復(fù);其中,I/O系統(tǒng)接收該恢復(fù)請求消息,根據(jù)該恢復(fù)請求消息攜帶該系統(tǒng)總線的標識,對該系統(tǒng)總線進行恢復(fù),恢復(fù)完成后發(fā)送恢復(fù)完成消息給管理裝置,且該恢復(fù)完成消息攜帶該系統(tǒng)總線的標識。步驟218 :監(jiān)測裝置接收管理裝置發(fā)送的切換消息,并轉(zhuǎn)發(fā)該切換消息給其對應(yīng)的設(shè)備,使該設(shè)備使用備份系統(tǒng)總線來收發(fā)數(shù)據(jù);步驟219 :管理裝置接收I/O系統(tǒng)發(fā)送的恢復(fù)完成消息,根據(jù)該恢復(fù)完成消息攜帯該系統(tǒng)總線的標識,使與該系統(tǒng)總線相連的設(shè)備將該系統(tǒng)總線設(shè)置為備份系統(tǒng)總線。具體地,管理裝置接收I/O系統(tǒng)發(fā)送的恢復(fù)完成消息,根據(jù)該恢復(fù)完成消息攜帯該系統(tǒng)總線的標識,從已存儲的系統(tǒng)總線的標識與監(jiān)測裝置的標識的對應(yīng)關(guān)系中,獲取對應(yīng)的監(jiān)測裝置的標識,根據(jù)獲取的監(jiān)測裝置的標識通過專用總線發(fā)送恢復(fù)完成消息給對應(yīng)的監(jiān)測裝置,監(jiān)測裝置接收該恢復(fù)完成消息,發(fā)送該恢復(fù)完成消息給其對應(yīng)的設(shè)備,設(shè)備接收該恢復(fù)完成消息并該將該恢復(fù)完成消息攜帯的系統(tǒng)總線的標識對應(yīng)的系統(tǒng)總線設(shè)置為備份系統(tǒng)總線。在本發(fā)明實施例中,監(jiān)測裝置對其對應(yīng)的系統(tǒng)總線進行監(jiān)控,并及時發(fā)現(xiàn)該系統(tǒng) 總線發(fā)生的異常,然后將發(fā)生的異常和該系統(tǒng)總線的標識報告給管理裝置,如果該系統(tǒng)總線發(fā)生超時異?;蛟摽偩€發(fā)生異常的次數(shù)超過預(yù)設(shè)閾值時,管理裝置發(fā)送切換消息給與該系統(tǒng)總線相連的設(shè)備,使該設(shè)備使用備份系統(tǒng)總線來收發(fā)命令或數(shù)據(jù),如此消息除因系統(tǒng)總線發(fā)生異常對設(shè)備正常收發(fā)命令或數(shù)據(jù)的影響,同時管理裝置請求I/o系統(tǒng)對該系統(tǒng)總線進行恢復(fù),從而消除了該系統(tǒng)總線發(fā)生的異常。本發(fā)明實施例提供了一種監(jiān)控總線的方法。其中,在本實施例中,主設(shè)備需要寫數(shù)據(jù)到目的設(shè)備中,通過與其相連的系統(tǒng)總線發(fā)送寫命令給目的設(shè)備,然后再通過該系統(tǒng)總線發(fā)送需要寫的數(shù)據(jù)給目的設(shè)備;其中,主設(shè)備對應(yīng)的監(jiān)測裝置和/或目的設(shè)備對應(yīng)的監(jiān)測裝置可以利用本實施例的方法對應(yīng)該系統(tǒng)總線上傳輸?shù)拿詈蛿?shù)據(jù)進行實時監(jiān)制,參見圖3該方法,包括步驟301 :監(jiān)測裝置對其對應(yīng)的系統(tǒng)總線進行實時監(jiān)測,當監(jiān)測到該系統(tǒng)總線上傳輸命令時,截獲該命令并獲取該命令的命令信息包括命令傳輸類型、命令地址、命令標識和數(shù)據(jù)個數(shù);其中,在本實施例中,監(jiān)測裝置可以為主設(shè)備對應(yīng)的監(jiān)測裝置和/或目的設(shè)備對應(yīng)的監(jiān)測裝置;主設(shè)備發(fā)送的命令為寫命令;主設(shè)備在命令階段通過其對應(yīng)的總線接ロ發(fā)送寫命令到與其相連的系統(tǒng)總線上,由該系統(tǒng)總線傳輸該寫命令。其中,監(jiān)測裝置可以通過其對應(yīng)的總線接ロ對其對應(yīng)的系統(tǒng)總線進行實時監(jiān)測,當監(jiān)測到該系統(tǒng)總線上傳輸命令吋,通過該總線接ロ截獲該命令,然后從該命令中提取命令傳輸類型、命令地址、命令標識和數(shù)據(jù)個數(shù)。其中,在本步驟中,該系統(tǒng)總線上傳輸?shù)拿顬橹髟O(shè)備發(fā)送的寫命令,所以監(jiān)測裝置從該系統(tǒng)總線上截獲的命令為寫命令,從該寫命令中提取命令傳輸類型為寫數(shù)據(jù)類型、命令地址、命令標識和數(shù)據(jù)個數(shù)為寫數(shù)據(jù)個數(shù);另外,該寫命令中包括的寫數(shù)據(jù)個數(shù)為主設(shè)備需要向目的設(shè)備寫的數(shù)據(jù)個數(shù)。步驟302 :監(jiān)測裝置根據(jù)提取的命令傳輸類型對該命令進行判斷,并判斷出該命令為寫命令,然后執(zhí)行步驟303 ;具體地,監(jiān)測裝置對提取的命令傳輸類型進行判斷,并判斷出提取的命令傳輸類型為寫數(shù)據(jù)類型,并據(jù)此確定出該命令為寫命令。
其中,如果該命令的命令傳輸類型為讀數(shù)據(jù)類型,則確定出該命令為讀命令。步驟303 :監(jiān)測裝置根據(jù)該寫命令的命令標識和命令地址,確定該系統(tǒng)總線是否發(fā)生寫命令傳輸異常,如果是,則丟棄該寫命令,發(fā)送寫命令傳輸異常和該系統(tǒng)總線的標識給管理裝置;如果否,則執(zhí)行步驟304 ;其中,監(jiān)測裝置獲取該系統(tǒng)總線對應(yīng)的總線協(xié)議,判斷該總線協(xié)議所定義的合法命令標識范圍內(nèi)是否包括該寫命令的命令標識以及該總線協(xié)議所定義的合法命令地址范圍是否包括該寫命令的命令地址,如果該總線協(xié)議所定義的合法命令標識范圍內(nèi)包括該寫 命令的命令標識以及該總線協(xié)議所定義的合法命令地址范圍包括該寫命令的命令地址,則判斷出該系統(tǒng)總線沒有發(fā)生寫命令傳輸異常;如果該總線協(xié)議所定義的合法命令標識范圍內(nèi)不包括該寫命令的命令標識和/或該總線協(xié)議所定義的合法地址范圍不包括該寫命令的命令地址,則判斷出該系統(tǒng)總線發(fā)生寫命令傳輸異常。步驟304 :監(jiān)測裝置發(fā)送該寫命令給目的設(shè)備,同時為該寫命令設(shè)置對應(yīng)計時器,存儲該寫命令的命令信息,以及存儲該寫命令的命令標識與該計時器的對應(yīng)關(guān)系,并使該計時器開始計時;其中,在本步驟中,如果監(jiān)測裝置為主設(shè)備對應(yīng)的監(jiān)測裝置,則監(jiān)測裝置該系統(tǒng)總線(與主設(shè)備相連的系統(tǒng)總線)發(fā)送該寫命令給目的設(shè)備,目的設(shè)備通過其對應(yīng)的總線接ロ從該總線上接收該寫命令;如果監(jiān)測裝置為目的設(shè)備對應(yīng)的監(jiān)測裝置,則監(jiān)測裝置直接通過其對應(yīng)的總線接ロ(該總線接ロ也為目的設(shè)備對應(yīng)的總線接ロ)發(fā)送該寫命令給目的設(shè)備,目的設(shè)備接收該寫命令。其中,主設(shè)備發(fā)送該寫命令后,并在該寫命令的數(shù)據(jù)階段通過其對應(yīng)的總線接ロ發(fā)送該寫命令的命令標識和需要的數(shù)據(jù)到該系統(tǒng)總線。步驟305 :監(jiān)測裝置當監(jiān)測到該系統(tǒng)總線傳輸數(shù)據(jù)和命令標識時,截獲該數(shù)據(jù)和該命令標識,確定出該命令標識對應(yīng)的命令為寫命令以及該數(shù)據(jù)為主設(shè)備需要寫的數(shù)據(jù),統(tǒng)計該數(shù)據(jù)包括的數(shù)據(jù)個數(shù),獲取該寫命令的寫數(shù)據(jù)個數(shù);具體地,監(jiān)測裝置通過其對應(yīng)的總線接ロ實時監(jiān)測該系統(tǒng)總線,當監(jiān)測到該系統(tǒng)總線傳輸數(shù)據(jù)和命令標識時,截獲該數(shù)據(jù)和該命令標識,根據(jù)該命令標識從已存儲的命令信息中獲取包括該命令標識的命令信息,根據(jù)該命令信息中包括命令傳輸類型為寫數(shù)據(jù)類型,確定該命令標識對應(yīng)的命令為寫命令,并從該命令信息中提取該寫命令的寫數(shù)據(jù)個數(shù),統(tǒng)計該數(shù)據(jù)包括的數(shù)據(jù)個數(shù)。步驟306 :監(jiān)測裝置根據(jù)統(tǒng)計的數(shù)據(jù)個數(shù)和該寫命令的寫數(shù)據(jù)個數(shù)對該系統(tǒng)總線進行判斷,如果該系統(tǒng)總線發(fā)生第一寫命令異常,則執(zhí)行步驟307,如果該系統(tǒng)總線發(fā)生第ニ寫命令異常,則執(zhí)行步驟308,否則,執(zhí)行步驟309 ;具體地,監(jiān)測裝置比較統(tǒng)計的數(shù)據(jù)個數(shù)和該寫命令的寫數(shù)據(jù)個數(shù),如果統(tǒng)計的數(shù)據(jù)個數(shù)小于該寫命令的寫數(shù)據(jù)個數(shù),則判斷出該系統(tǒng)總線發(fā)生第一寫命令異常,如果統(tǒng)計的數(shù)據(jù)個數(shù)大于該寫命令的寫數(shù)據(jù)個數(shù),則判斷出該系統(tǒng)總線命令發(fā)生第二寫命令異常;如果兩者相等,則判斷該系統(tǒng)總線沒有發(fā)生第一和第二寫命令異常。其中,如果該系統(tǒng)總線發(fā)生第一寫命令異?;虻诙懨町惓#瑒t當該系統(tǒng)總線傳輸寫命令吋,該寫命令中包括的寫數(shù)據(jù)個數(shù)可能會發(fā)生變化,或者,當該系統(tǒng)總線傳輸數(shù)據(jù)時,該數(shù)據(jù)包括的數(shù)據(jù)個數(shù)可能會發(fā)生變化,使該數(shù)據(jù)包括的數(shù)據(jù)個數(shù)與主設(shè)備需要寫的數(shù)據(jù)個數(shù)不一致。步驟307 :監(jiān)測裝置向該數(shù)據(jù)補充偽數(shù)據(jù),使補充后的數(shù)據(jù)包括的數(shù)據(jù)個數(shù)與該寫命令的讀數(shù)據(jù)個數(shù)相等,發(fā)送第一寫命令異常和該系統(tǒng)總線的標識給管理裝置以及將補充后的數(shù)據(jù)和該命令標識發(fā)送給目的設(shè)備,執(zhí)行步驟310 ;具體地,監(jiān)測裝置根據(jù)統(tǒng)計的數(shù)據(jù)個數(shù)和該寫命令的寫數(shù)據(jù)個數(shù),計算出需要補充數(shù)據(jù)的個數(shù),在該數(shù)據(jù)之后或之前補充計算的個數(shù)個偽數(shù)據(jù),使得補充后的數(shù)據(jù)包括的數(shù)據(jù)個數(shù)與該寫命令的寫數(shù)據(jù)個數(shù)相等,發(fā)送第一寫命令異常和該系統(tǒng)總線的標識給管理裝置,以及,發(fā)送補充后的數(shù)據(jù)和該命令標識給目的設(shè)備。其中,偽數(shù)據(jù)可以為全O數(shù)據(jù)或全I數(shù)據(jù)等。在本步驟中,如果監(jiān)測裝置為主設(shè)備對應(yīng)的監(jiān)測裝置,則監(jiān)測裝置通過該系統(tǒng)總線發(fā)送補充后的數(shù)據(jù)和該命令標識給目的設(shè)備,目的設(shè)備通過其對應(yīng)的總線接ロ從該系統(tǒng)總線上接收補充后的數(shù)據(jù)和該命令標識;如果監(jiān)測裝置為目的設(shè)備對應(yīng)的監(jiān)測裝置,則監(jiān)測裝置直接通過其對應(yīng)的總線接ロ發(fā)送補充后的數(shù)據(jù)和該命令標識給目的設(shè)備,目的設(shè)備接收補充后的數(shù)據(jù)和該命令標識。步驟308 :監(jiān)測裝置從該數(shù)據(jù)中選擇該寫命令的寫數(shù)據(jù)個數(shù)個數(shù)據(jù),發(fā)送選擇的數(shù)據(jù)和該命令標識給目的設(shè)備,以及發(fā)送第二寫命令異常和該系統(tǒng)總線的標識給管理裝置,執(zhí)行步驟310 ;具體地,監(jiān)測裝置從該數(shù)據(jù)包括的第一個數(shù)據(jù)開始向后選擇該寫命令的寫數(shù)據(jù)個數(shù)個數(shù)據(jù),或從該數(shù)據(jù)包括的最后ー個數(shù)據(jù)開始向前選擇該寫命令的寫數(shù)據(jù)個數(shù)個數(shù)據(jù),丟棄未選擇的數(shù)據(jù),發(fā)送選擇的數(shù)據(jù)和該命令標識給目的設(shè)備,以及發(fā)送第二寫命令異常和該系統(tǒng)總線的標識給管理裝置。其中,在本步驟中,如果監(jiān)測裝置為主設(shè)備對應(yīng)的監(jiān)測裝置,則監(jiān)測裝置通過該系統(tǒng)總線發(fā)送選擇的數(shù)據(jù)和該命令標識給主設(shè)備,目的設(shè)備通過其對應(yīng)的總線接ロ從該總線上接收選擇的數(shù)據(jù)和該命令標識;如果監(jiān)測裝置為目的設(shè)備對應(yīng)的監(jiān)測裝置,則監(jiān)測裝置直接通過其對應(yīng)的總線接ロ發(fā)送選擇的數(shù)據(jù)和該命令標識給目的設(shè)備,目的設(shè)備接收選擇的數(shù)據(jù)和該命令標識。步驟309 :監(jiān)測裝置將該數(shù)據(jù)和該命令標識發(fā)送給目的設(shè)備;其中,在本步驟中,如果監(jiān)測裝置為主設(shè)備對應(yīng)的監(jiān)測裝置,則監(jiān)測裝置通過該系統(tǒng)總線發(fā)送該數(shù)據(jù)和該命令標識給目的設(shè)備,目的設(shè)備通過其對應(yīng)的總線接ロ從該總線上接收該數(shù)據(jù)和該命令標識;如果監(jiān)測裝置為目的設(shè)備對應(yīng)的監(jiān)測裝置,則監(jiān)測裝置直接通過其對應(yīng)的總線接ロ發(fā)送該數(shù)據(jù)和該命令標識給目的設(shè)備,目的設(shè)備接收該數(shù)據(jù)和該命令 標識。其中,目的設(shè)備接收該數(shù)據(jù)和該命令標識后,在該命令標識對應(yīng)的寫命令的響應(yīng)階段,通過其對應(yīng)的總線接ロ發(fā)送響應(yīng)消息到該系統(tǒng)總線,且該響應(yīng)消息攜帯響應(yīng)標識。步驟310 :監(jiān)測裝置當從該系統(tǒng)總線上監(jiān)測到響應(yīng)消息,提取該響應(yīng)消息攜帯的響應(yīng)標識,發(fā)送該響應(yīng)消息給主設(shè)備;其中,在本步驟中,如果監(jiān)測裝置為目的設(shè)備對應(yīng)的監(jiān)測裝置,則監(jiān)測裝置通過該系統(tǒng)總線發(fā)送該響應(yīng)消息給主設(shè)備,主設(shè)備通過其對應(yīng)的總線接ロ從該總線上接收該響應(yīng)消息;如果監(jiān)測裝置為主設(shè)備對應(yīng)的監(jiān)測裝置,則監(jiān)測裝置直接通過其對應(yīng)的總線接ロ發(fā)送該響應(yīng)消息給主設(shè)備,主設(shè)備接收該響應(yīng)消息。
步驟311 :監(jiān)測裝置根據(jù)該響應(yīng)標識獲取對應(yīng)的命令標識,即該寫命令的命令標識,井根據(jù)該寫命令的命令標識獲取該寫命令的計時器;具體地,監(jiān)測裝置根據(jù)該響應(yīng)標識,從已存儲的響應(yīng)標識與命令標識的對應(yīng)關(guān)系中獲取對應(yīng)的命令標識,該命令標識為該寫命令的命令標識,根據(jù)該寫命令的命令標識,從命令標識與計時器的對應(yīng)關(guān)系中獲取該寫命令的計時器。步驟312 :監(jiān)測裝置讀取該計時器計時的時間得到該寫命令的命令等待間,根據(jù)該寫命令等待時間確定該系統(tǒng)總線是否發(fā)生超時異常,如果是,發(fā)送超時異常和該系統(tǒng)總線的標識給管理裝置;具體地,監(jiān)測裝置讀取該計時器計時的時間,讀取的時間為該寫命令的命令等待時間,判斷該寫命令的命令等待時間是否超過預(yù)設(shè)的命令截止時間,如果超過,則判斷出該系統(tǒng)總線發(fā)生超時異常并發(fā)送超時異常和該系統(tǒng)總線的標識給管理裝置;如果未超過,則判斷出該系統(tǒng)總線沒有發(fā)生超時異常。 其中,監(jiān)測裝置判斷完該系統(tǒng)總線是否發(fā)生超時異常之后,監(jiān)測裝置還繼續(xù)對該系統(tǒng)總線進行實時監(jiān)控,當監(jiān)控出該系統(tǒng)總線上傳輸命令吋,則從上述步驟301開始執(zhí)行。步驟313 :管理裝置接收監(jiān)測裝置發(fā)送該系統(tǒng)總線的標識和發(fā)生的異常,并對發(fā)生的異常進行判斷,如果為超時異常,則執(zhí)行步驟314,如果為非超時異常,則執(zhí)行步驟316 ;其中,監(jiān)測裝置可以通過其與管理裝置之間的專用總線發(fā)送系統(tǒng)總線的標識和發(fā)生的異常給管理裝置。步驟314 :管理裝置獲取監(jiān)控該系統(tǒng)總線的監(jiān)測裝置的標識,根據(jù)獲取的監(jiān)測裝置的標識發(fā)送切換消息給對應(yīng)的監(jiān)測裝置,使監(jiān)測裝置使其對應(yīng)的設(shè)備使用備份系統(tǒng)總線來收發(fā)數(shù)據(jù);其中,管理裝置事先將監(jiān)測裝置的標識和該監(jiān)測裝置監(jiān)控的系統(tǒng)總線的標識存儲在監(jiān)測裝置的標識與系統(tǒng)總線的標識的對應(yīng)關(guān)系中。相應(yīng)地,管理裝置獲取監(jiān)控該系統(tǒng)總線的監(jiān)測裝置的標識的操作,可以具體為管理裝置根據(jù)該系統(tǒng)總線的標識,從已存儲的監(jiān)測裝置的標識與系統(tǒng)總線的標識的對應(yīng)關(guān)系中查找出對應(yīng)的監(jiān)測裝置的標識,且查找的監(jiān)測裝置的標識為監(jiān)控該系統(tǒng)總線的監(jiān)測裝置的標識。步驟315:管理裝置發(fā)送攜帶該系統(tǒng)總線的標識的恢復(fù)請求消息給I/O系統(tǒng),使I/O系統(tǒng)對該系統(tǒng)總線進行恢復(fù),執(zhí)行步驟218 ;其中,I/O系統(tǒng)接收該恢復(fù)請求消息,根據(jù)該恢復(fù)請求消息攜帶該系統(tǒng)總線的標識,對該系統(tǒng)總線進行恢復(fù),恢復(fù)完成后發(fā)送恢復(fù)完成消息管理裝置,且該恢復(fù)完成消息攜帶該系統(tǒng)總線的標識。進ー步地,管理裝置根據(jù)該系統(tǒng)總線的標識,查找已存儲的系統(tǒng)總線的標識與異常次數(shù)的對應(yīng)關(guān)系,如果查找出對應(yīng)的異常次數(shù)(為該系統(tǒng)總線已發(fā)生異常的異常次數(shù)),將查找的異常次數(shù)清零。步驟316 :管理裝置增加該系統(tǒng)總線發(fā)生異常的異常次數(shù),判斷増加后的異常次數(shù)是否超過預(yù)設(shè)的閾值,如果是,獲取監(jiān)控該系統(tǒng)總線的監(jiān)測裝置的標識,根據(jù)獲取的監(jiān)測裝置的標識發(fā)送切換消息給監(jiān)測裝置,使監(jiān)測裝置使其對應(yīng)的設(shè)備使用備份系統(tǒng)總線來收發(fā)數(shù)據(jù);
其中,管理裝置根據(jù)該系統(tǒng)總線的標識,查找已存儲的系統(tǒng)總線的標識與異常次數(shù)的對應(yīng)關(guān)系,如果查找出對應(yīng)的異常次數(shù),則增加查找的異常次數(shù),如此實現(xiàn)増加該系統(tǒng)總線發(fā)生異常的異常次數(shù),如果沒有查找出對應(yīng)的異常次數(shù),則設(shè)置異常次數(shù)的初值,并將該系統(tǒng)總線的標識和設(shè)置的初值存儲在系統(tǒng)總線的標識與異常次數(shù)的對應(yīng)關(guān)系中,如此實現(xiàn)增加該系統(tǒng)總線發(fā)生異常的異常次數(shù)。步驟317:管理裝置發(fā)送攜帶該系統(tǒng)總線的標識的恢復(fù)請求消息給I/O系統(tǒng),使I/O系統(tǒng)對該系統(tǒng)總線進行恢復(fù);其中,I/O系統(tǒng)接收該恢復(fù)請求消息,根據(jù)該恢復(fù)請求消息攜帶該系統(tǒng)總線的標識,對該系統(tǒng)總線進行恢復(fù),恢復(fù)完成后發(fā)送恢復(fù)完成消息給管理裝置,且該恢復(fù)完成消息、攜帶該系統(tǒng)總線的標識。步驟318 :監(jiān)測裝置接收管理裝置發(fā)送的切換消息,并轉(zhuǎn)發(fā)該切換消息給其對應(yīng)的設(shè)備,使該設(shè)備使用備份系統(tǒng)總線來收發(fā)數(shù)據(jù);步驟319 :管理裝置接收I/O系統(tǒng)發(fā)送的恢復(fù)完成消息,根據(jù)該恢復(fù)完成消息攜帯該系統(tǒng)總線的標識,使與該系統(tǒng)總線相連的設(shè)備將該系統(tǒng)總線設(shè)置為備份系統(tǒng)總線。具體地,管理裝置接收I/O系統(tǒng)發(fā)送的恢復(fù)完成消息,根據(jù)該恢復(fù)完成消息攜帯該系統(tǒng)總線的標識,從已存儲的系統(tǒng)總線的標識與監(jiān)測裝置的標識的對應(yīng)關(guān)系中,獲取對應(yīng)的監(jiān)測裝置的標識,根據(jù)獲取的監(jiān)測裝置的標識發(fā)送恢復(fù)完成消息給對應(yīng)的監(jiān)測裝置,監(jiān)測裝置接收該恢復(fù)完成消息,發(fā)送該恢復(fù)完成消息給其對應(yīng)的設(shè)備,設(shè)備接收該恢復(fù)完成消息并該將該恢復(fù)完成消息攜帯的系統(tǒng)總線的標識對應(yīng)的系統(tǒng)總線設(shè)置為備份系統(tǒng)總線。在本發(fā)明實施例中,監(jiān)測裝置對其對應(yīng)的系統(tǒng)總線進行監(jiān)控,并及時發(fā)現(xiàn)該系統(tǒng)總線發(fā)生的異常,然后將發(fā)生的異常和該系統(tǒng)總線的標識報告給管理裝置,如果該系統(tǒng)總線發(fā)生超時異?;蛟摽偩€發(fā)生異常的次數(shù)超過預(yù)設(shè)閾值時,管理裝置發(fā)送切換消息給與該系統(tǒng)總線相連的設(shè)備,使該設(shè)備使用備份系統(tǒng)總線來收發(fā)命令或數(shù)據(jù),如此消息除因系統(tǒng)總線發(fā)生異常對設(shè)備正常收發(fā)命令或數(shù)據(jù)的影響,同時管理裝置請求I/o系統(tǒng)對該系統(tǒng)總線進行恢復(fù),從而消除了該系統(tǒng)總線發(fā)生的異常。如圖5所示,本發(fā)明實施例提供了一種監(jiān)控系統(tǒng)總線的方法,包括步驟401 :當監(jiān)測裝置對其對應(yīng)的系統(tǒng)總線進行監(jiān)控并監(jiān)控出該系統(tǒng)總線發(fā)生異常時,接收監(jiān)測裝置發(fā)送的該系統(tǒng)總線發(fā)生的異常和該系統(tǒng)總線的標識;步驟402 :如果該系統(tǒng)總線發(fā)生的異常為超時異常,則根據(jù)該系統(tǒng)總線的標識發(fā)送切換消息給連接到該系統(tǒng)總線的設(shè)備,使該設(shè)備使用備份系統(tǒng)總線來收發(fā)命令或數(shù)據(jù);步驟403 :如果該系統(tǒng)總線發(fā)生的異常為非超時異常,則增加該系統(tǒng)總線發(fā)生異常的異常次數(shù);當該系統(tǒng)總線發(fā)生的異常次數(shù)超過預(yù)設(shè)閾值,根據(jù)該系統(tǒng)總線的標識發(fā)送切換消息給連接到該系統(tǒng)總線的設(shè)備,使該設(shè)備使用備份系統(tǒng)總線來收發(fā)命令或數(shù)據(jù)。在本發(fā)明實施例中,接收監(jiān)測裝置發(fā)送的系統(tǒng)總線發(fā)生的異常和該系統(tǒng)總線的標識;如果該系統(tǒng)總線發(fā)生的異常為超時異常,則根據(jù)該系統(tǒng)總線的標識發(fā)送切換消息給連接到該系統(tǒng)總線的設(shè)備,使該設(shè)備使用備份系統(tǒng)總線來收發(fā)命令或數(shù)據(jù);如果該系統(tǒng)總線發(fā)生的異常為非超時異常,則增加該系統(tǒng)總線發(fā)生異常的異常次數(shù)并當該系統(tǒng)總線發(fā)生的異常次數(shù)超過預(yù)設(shè)閾值,根據(jù)該系統(tǒng)總線的標識發(fā)送切換消息給連接到該系統(tǒng)總線的設(shè)備,使該設(shè)備使用備份系統(tǒng)總線來收發(fā)命令或數(shù)據(jù)。如此當系統(tǒng)總線發(fā)生異常時,使與該系統(tǒng)總線相連的設(shè)備使用備份系統(tǒng)總線來收發(fā)數(shù)據(jù),以保證設(shè)備能正常收發(fā)命令或數(shù)據(jù)。如圖6所示,本發(fā)明實施例提供了一種監(jiān)測裝置,包括監(jiān)控模塊501,用于對監(jiān)測裝置對應(yīng)的系統(tǒng)總線進行實時監(jiān)控,當監(jiān)控到該系統(tǒng)總線傳輸命令時,獲取該命令的命令信息,該命令信息包括命令標識、命令地址和數(shù)據(jù)個數(shù);第一確定模塊502,用于根據(jù)該命令標識和命令地址確定該系統(tǒng)總線是否發(fā)生命令傳輸異常;第二確定模塊503,用于如果該系統(tǒng)總線未發(fā)生命令傳輸異常,則當監(jiān)控到該系統(tǒng)總線傳輸該命令對應(yīng)的數(shù)據(jù),根據(jù)該命令對應(yīng)的數(shù)據(jù)和該數(shù)據(jù)個數(shù)確定該系統(tǒng)總線是否發(fā)生命令異常;第三確定模塊504,用于如果該系統(tǒng)總線未發(fā)生命令傳輸異常,則當監(jiān)控到該系統(tǒng) 總線傳輸該命令對應(yīng)的響應(yīng)消息,獲取該命令的命令等待時間,并根據(jù)獲取的命令等待時間確定該系統(tǒng)總線是否發(fā)生超時異常。其中,第一確定模塊502包括第一獲取單元,用于獲取該系統(tǒng)總線對應(yīng)的總線協(xié)議,判斷該總線協(xié)議所定義的合法命令標識范圍是否包括該命令標識,以及該總線協(xié)議所定義合法命令地址范圍是否包括該命令地址;第一確定單元,用于如果該總線協(xié)議所定義的合法命令標識范圍不包括該命令標識和/或該總線協(xié)議所定義的合法命令地址范圍不包括該命令地址,則確定出該系統(tǒng)總線發(fā)生了命令傳輸異常,否則,確定出該系統(tǒng)總線未發(fā)生命令傳輸異常。其中,命令異常包括第一命令異?;虻诙町惓?;其中,第二確定模塊503包括比較單元,用于統(tǒng)計獲取的數(shù)據(jù)的個數(shù),比較統(tǒng)計的個數(shù)與該數(shù)據(jù)個數(shù);第二確定單元,用于如果統(tǒng)計的個數(shù)小于該數(shù)據(jù)個數(shù),則確定出該系統(tǒng)總線發(fā)生
第一命令異常;第三確定單元,用于如果統(tǒng)計的個數(shù)大于該數(shù)據(jù)個數(shù),則確定出該系統(tǒng)總線發(fā)生第二命令異常。進ー步地,第二確定模塊503還包括第一發(fā)送單元,用于向獲取的數(shù)據(jù)補充偽數(shù)據(jù),使補充后的數(shù)據(jù)包括數(shù)據(jù)的個數(shù)與該數(shù)據(jù)個數(shù)相等,如果該命令為讀命令,則發(fā)送補充后的數(shù)據(jù)給主設(shè)備,主設(shè)備為發(fā)送該命令的設(shè)備;如果該命令為寫命令,則發(fā)送補充后的數(shù)據(jù)給目的設(shè)備,目的設(shè)備為接收該命令的設(shè)備。進ー步地,第二確定模塊503還包括第二發(fā)送單元,用于從獲取的數(shù)據(jù)中選擇該數(shù)據(jù)個數(shù)個數(shù)據(jù),如果該命令為讀命令,則發(fā)送選擇的數(shù)據(jù)給主設(shè)備,主設(shè)備為發(fā)送該命令的設(shè)備;如果該命令為寫命令,則發(fā)送選擇的數(shù)據(jù)給目的設(shè)備,目的設(shè)備為接收該命令的設(shè)備。進ー步地,該設(shè)備還包括設(shè)置模塊,用于當確定出該系統(tǒng)總線未發(fā)生命令傳輸異常時,為該命令設(shè)置對應(yīng)的計時器,并使該命令對應(yīng)的計時器開始計吋。
其中,第三確定模塊504包括第二獲取單元,用于獲取該命令對應(yīng)的計時器計時的時間,將計時的時間作為該命令的命令等待時間;判斷模塊,用于判斷該命令的命令等待時間是否超過預(yù)設(shè)的命令截止時間,如果超過,則判斷出該系統(tǒng)總線發(fā)生了超時異常,如果未超過,則判斷出該系統(tǒng)總線未發(fā)生超時異常。進ー步地,該設(shè)備還包括處理模塊,用于當確定出該系統(tǒng)總線發(fā)生異常時,發(fā)送該系統(tǒng)總線發(fā)生的異常和該系統(tǒng)總線的標識給管理裝置,使管理裝置對該系統(tǒng)總線發(fā)生的異常進行處理;切換模塊,用于當管理裝置對該系統(tǒng)總線進行處理后發(fā)送切換消息時,接收切換 消息并轉(zhuǎn)發(fā)切換消息給監(jiān)測裝置對應(yīng)的設(shè)備,使設(shè)備使用備份系統(tǒng)總線來收發(fā)命令或數(shù)據(jù)。在本發(fā)明實施例,監(jiān)測裝置對其對應(yīng)的系統(tǒng)總線進行實時監(jiān)控,當監(jiān)控出該系統(tǒng)總線傳輸命令吋,獲取該命令的命令信息包括命令標識、命令地址和數(shù)據(jù)個數(shù),根據(jù)獲取的命令信息和該系統(tǒng)總線上傳輸該命令對應(yīng)的數(shù)據(jù)和響應(yīng)消息來判斷該系統(tǒng)總線是否發(fā)異常;如此能夠及時發(fā)現(xiàn)該系統(tǒng)總線上發(fā)生的異常。如圖7所示,本發(fā)明實施例提供了ー種管理裝置,包括接收模塊601,用于當監(jiān)測裝置對其對應(yīng)的系統(tǒng)總線進行監(jiān)控并監(jiān)控出該系統(tǒng)總線發(fā)生異常時,接收監(jiān)測裝置發(fā)送的該系統(tǒng)總線發(fā)生的異常和該系統(tǒng)總線的標識;第一發(fā)送模塊602,用于如果該系統(tǒng)總線發(fā)生的異常為超時異常,則根據(jù)該系統(tǒng)總線的標識發(fā)送切換消息給連接到該系統(tǒng)總線的設(shè)備,使該設(shè)備使用備份系統(tǒng)總線來收發(fā)命令或數(shù)據(jù);第二發(fā)送模塊603,用于如果該系統(tǒng)總線發(fā)生的異常為非超時異常,則增加該系統(tǒng)總線發(fā)生異常的異常次數(shù);當該系統(tǒng)總線的異常次數(shù)超過預(yù)設(shè)閾值,根據(jù)該系統(tǒng)總線的標識發(fā)送切換消息給連接到該系統(tǒng)總線的設(shè)備,使該設(shè)備使用備份系統(tǒng)總線來收發(fā)命令或數(shù)據(jù)。其中,第一發(fā)送模塊602包括第一查找單元,用于根據(jù)該系統(tǒng)總線的標識,從已存儲的系統(tǒng)總線的標識與監(jiān)測裝置的標識的對應(yīng)關(guān)系查找出對應(yīng)的監(jiān)測裝置的標識;第一發(fā)送單元,用于根據(jù)監(jiān)測裝置的標識發(fā)送切換消息給對應(yīng)的監(jiān)測裝置,使監(jiān)測裝置將切換消息轉(zhuǎn)發(fā)給監(jiān)測裝置對應(yīng)的設(shè)備。其中,第二發(fā)送模塊603包括增加單元,用于根據(jù)該系統(tǒng)總線的標識,查找已存儲的系統(tǒng)總線的標識與異常次數(shù)的對應(yīng)關(guān)系,如果查找出對應(yīng)的異常次數(shù),則增加查找的異常次數(shù),如果沒有查找出對應(yīng)的異常次數(shù),則設(shè)置異常次數(shù)的初值,存儲該系統(tǒng)總線的標識與異常次數(shù)的初值的對應(yīng)關(guān)系;切換單元,用于當該異常次數(shù)超過預(yù)設(shè)閾值,根據(jù)該系統(tǒng)總線的標識發(fā)送切換消息給連接到該系統(tǒng)總線的設(shè)備,使該設(shè)備使用備份系統(tǒng)總線來收發(fā)命令或數(shù)據(jù)。進ー步地,該設(shè)備還包括
恢復(fù)模塊,用于發(fā)送攜帶該系統(tǒng)總線的標識的恢復(fù)請求消息給輸入或輸出系統(tǒng),使輸入或輸出系統(tǒng)對該系統(tǒng)總線進行恢復(fù)。在本發(fā)明實施例中,接收監(jiān)測裝置發(fā)送的系統(tǒng)總線發(fā)生的異常和該系統(tǒng)總線的標識;如果該系統(tǒng)總線發(fā)生的異常為超時異常,則根據(jù)該系統(tǒng)總線的標識發(fā)送切換消息給連接到該系統(tǒng)總線的設(shè)備,使該設(shè)備使用備份系統(tǒng)總線來收發(fā)命令或數(shù)據(jù);如果該系統(tǒng)總線發(fā)生的異常為非超時異常,則增加該系統(tǒng)總線發(fā)生異常的異常次數(shù)并當該系統(tǒng)總線發(fā)生的異常次數(shù)超過預(yù)設(shè)閾值,根據(jù)該系統(tǒng)總線的標識發(fā)送切換消息給連接到該系統(tǒng)總線的設(shè)備,使該設(shè)備使用備份系統(tǒng)總線來收發(fā)命令或數(shù)據(jù)。如此當系統(tǒng)總線發(fā)生異常時,使與該系統(tǒng)總線相連的設(shè)備使用備份系統(tǒng)總線來收發(fā)數(shù)據(jù),以保證設(shè)備能正常收發(fā)命令或數(shù)據(jù)。本領(lǐng)域普通技術(shù)人員可以理解實現(xiàn)上述實施例的全部或部分步驟可以通過硬件來完成,也可以通過程序來指令相關(guān)的硬件完成,所述的程序可以存儲于ー種計算機可讀存儲介質(zhì)中,上述提到的存儲介質(zhì)可以是只讀存儲器,磁盤或光盤等。
以上所述僅為本發(fā)明的較佳實施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。
權(quán)利要求
1.一種監(jiān)控系統(tǒng)總線的方法,其特征在于,所述方法包括 監(jiān)測裝置對其對應(yīng)的系統(tǒng)總線進行實時監(jiān)控,當監(jiān)控到所述系統(tǒng)總線傳輸命令時,獲取所述命令的命令信息,所述命令信息包括命令標識、命令地址和數(shù)據(jù)個數(shù); 根據(jù)所述命令標識和命令地址確定所述系統(tǒng)總線是否發(fā)生命令傳輸異常; 如果所述系統(tǒng)總線未發(fā)生命令傳輸異常,則當監(jiān)控到所述系統(tǒng)總線傳輸所述命令對應(yīng)的數(shù)據(jù),根據(jù)所述數(shù)據(jù)和所述數(shù)據(jù)個數(shù)確定所述系統(tǒng)總線是否發(fā)生命令異常; 以及,當監(jiān)控到所述系統(tǒng)總線傳輸所述命令對應(yīng)的響應(yīng)消息,獲取所述命令的命令等待時間,并根據(jù)所述命令等待時間確定所述系統(tǒng)總線是否發(fā)生超時異常。
2.如權(quán)利要求I所述的方法,其特征在于,所述根據(jù)所述命令標識和命令地址確定所述系統(tǒng)總線是否發(fā)生命令傳輸異常,包括 獲取所述系統(tǒng)總線對應(yīng)的總線協(xié)議,判斷所述總線協(xié)議所定義的合法命令標識范圍是否包括所述命令標識,以及所述總線協(xié)議所定義合法命令地址范圍是否包括所述命令地址; 如果所述總線協(xié)議所定義的合法命令標識范圍不包括所述命令標識和/或所述總線協(xié)議所定義的合法命令地址范圍不包括所述命令地址,則確定出所述系統(tǒng)總線發(fā)生了命令傳輸異常,否則,確定出所述系統(tǒng)總線未發(fā)生命令傳輸異常。
3.如權(quán)利要求I所述的方法,其特征在于,所述命令異常包括第一命令異?;虻诙町惓?; 所述根據(jù)所述數(shù)據(jù)和所述數(shù)據(jù)個數(shù)確定所述系統(tǒng)總線是否發(fā)生命令異常,包括 統(tǒng)計所述數(shù)據(jù)的個數(shù),比較所述統(tǒng)計的個數(shù)與所述數(shù)據(jù)個數(shù); 如果所述統(tǒng)計的個數(shù)小于所述數(shù)據(jù)個數(shù),則確定出所述系統(tǒng)總線發(fā)生第一命令異常; 如果所述統(tǒng)計的個數(shù)大于所述數(shù)據(jù)個數(shù),則確定出所述系統(tǒng)總線發(fā)生第二命令異常。
4.如權(quán)利要求3所述的方法,其特征在于,所述確定出所述系統(tǒng)總線發(fā)生第一命令異常之后,還包括 向所述數(shù)據(jù)補充偽數(shù)據(jù),使補充后的數(shù)據(jù)包括數(shù)據(jù)的個數(shù)與所述數(shù)據(jù)個數(shù)相等,如果所述命令為讀命令,則發(fā)送所述補充后的數(shù)據(jù)給主設(shè)備,所述主設(shè)備為發(fā)送所述命令的設(shè)備;如果所述命令為寫命令,則發(fā)送所述補充后的數(shù)據(jù)給目的設(shè)備,所述目的設(shè)備為接收所述命令的設(shè)備。
5.如權(quán)利要求3所述的方法,其特征在于,所述確定出所述系統(tǒng)總線發(fā)生第二命令異常之后,還包括 從所述數(shù)據(jù)中選擇所述數(shù)據(jù)個數(shù)個數(shù)據(jù),如果所述命令為讀命令,則發(fā)送所述選擇的數(shù)據(jù)給主設(shè)備,所述主設(shè)備為發(fā)送所述命令的設(shè)備;如果所述命令為寫命令,則發(fā)送所述選擇的數(shù)據(jù)給目的設(shè)備,所述目的設(shè)備為接收所述命令的設(shè)備。
6.如權(quán)利要求I所述的方法,其特征在于,所述方法還包括 當確定出所述系統(tǒng)總線未發(fā)生命令傳輸異常時,為所述命令設(shè)置對應(yīng)的計時器,并使所述計時器開始計時。
7.如權(quán)利要求6所述的方法,其特征在于,所述獲取所述命令的命令等待時間,并根據(jù)所述命令等待時間確定所述系統(tǒng)總線是否發(fā)生超時異常,包括 獲取所述命令對應(yīng)的計時器計時的時間,將所述計時的時間作為所述命令的命令等待時間; 判斷所述命令的命令等待時間是否超過預(yù)設(shè)的命令截止時間,如果超過,則判斷出所述系統(tǒng)總線發(fā)生了超時異常,如果未超過,則判斷出所述系統(tǒng)總線未發(fā)生超時異常。
8.如權(quán)利要求1-7任一項權(quán)利要求所述的方法,其特征在于,所述方法還包括 當確定出所述系統(tǒng)總線發(fā)生異常時,發(fā)送所述系統(tǒng)總線發(fā)生的異常和所述系統(tǒng)總線的 標識給管理裝置,使管理裝置對所述系統(tǒng)總線發(fā)生的異常進行處理; 當所述管理裝置對所述系統(tǒng)總線進行處理后發(fā)送切換消息時,接收所述切換消息并轉(zhuǎn)發(fā)所述切換消息給所述監(jiān)測裝置對應(yīng)的設(shè)備,使所述設(shè)備使用備份系統(tǒng)總線來收發(fā)命令或數(shù)據(jù)。
9.一種監(jiān)控系統(tǒng)總線的方法,其特征在于,所述方法包括 當監(jiān)測裝置對其對應(yīng)的系統(tǒng)總線進行監(jiān)控并監(jiān)控出所述系統(tǒng)總線發(fā)生異常時,接收所述監(jiān)測裝置發(fā)送的所述系統(tǒng)總線發(fā)生的異常和所述系統(tǒng)總線的標識; 如果所述系統(tǒng)總線發(fā)生的異常為超時異常,則根據(jù)所述系統(tǒng)總線的標識發(fā)送切換消息給連接到所述系統(tǒng)總線的設(shè)備,使所述設(shè)備使用備份系統(tǒng)總線來收發(fā)命令或數(shù)據(jù); 如果所述系統(tǒng)總線發(fā)生的異常為非超時異常,則增加所述系統(tǒng)總線發(fā)生異常的異常次數(shù);當所述異常次數(shù)超過預(yù)設(shè)閾值,根據(jù)所述系統(tǒng)總線的標識發(fā)送切換消息給連接到所述系統(tǒng)總線的設(shè)備,使所述設(shè)備使用備份系統(tǒng)總線來收發(fā)命令或數(shù)據(jù)。
10.如權(quán)利要求9所述的方法,其特征在于,所述根據(jù)所述系統(tǒng)總線的標識發(fā)送切換消息給連接到所述系統(tǒng)總線的設(shè)備,包括 根據(jù)所述系統(tǒng)總線的標識,從已存儲的系統(tǒng)總線的標識與監(jiān)測裝置的標識的對應(yīng)關(guān)系查找出對應(yīng)的監(jiān)測裝置的標識; 根據(jù)所述監(jiān)測裝置的標識發(fā)送切換消息給對應(yīng)的監(jiān)測裝置,使所述監(jiān)測裝置將所述切換消息轉(zhuǎn)發(fā)給所述監(jiān)測裝置對應(yīng)的設(shè)備。
11.如權(quán)利要求10所述的方法,其特征在于,所述增加所述系統(tǒng)總線發(fā)生異常的異常次數(shù),包括 根據(jù)所述系統(tǒng)總線的標識,查找已存儲的系統(tǒng)總線的標識與異常次數(shù)的對應(yīng)關(guān)系,如果查找出對應(yīng)的異常次數(shù),則增加所述查找的異常次數(shù),如果沒有查找出對應(yīng)的異常次數(shù),則設(shè)置異常次數(shù)的初值,存儲所述系統(tǒng)總線的標識與所述異常次數(shù)的初值的對應(yīng)關(guān)系。
12.如權(quán)利要求9-11任一項權(quán)利要求所述的方法,其特征在于,所述根據(jù)所述系統(tǒng)總線的標識發(fā)送切換消息給連接到所述系統(tǒng)總線的設(shè)備之后,還包括 發(fā)送攜帶所述系統(tǒng)總線的標識的恢復(fù)請求消息給輸入或輸出系統(tǒng),使所述輸入或輸出系統(tǒng)對所述系統(tǒng)總線進行恢復(fù)。
13.—種監(jiān)測裝置,其特征在于,所述設(shè)備包括 監(jiān)控模塊,用于對所述監(jiān)測裝置對應(yīng)的系統(tǒng)總線進行實時監(jiān)控,當監(jiān)控到所述系統(tǒng)總線傳輸命令時,獲取所述命令的命令信息,所述命令信息包括命令標識、命令地址和數(shù)據(jù)個數(shù); 第一確定模塊,用于根據(jù)所述命令標識和命令地址確定所述系統(tǒng)總線是否發(fā)生命令傳輸異常; 第二確定模塊,用于如果所述系統(tǒng)總線未發(fā)生命令傳輸異常,則當監(jiān)控到所述系統(tǒng)總線傳輸所述命令對應(yīng)的數(shù)據(jù),根據(jù)所述數(shù)據(jù)和所述數(shù)據(jù)個數(shù)確定所述系統(tǒng)總線是否發(fā)生命令異常; 第三確定模塊,用于如果所述系統(tǒng)總線未發(fā)生命令傳輸異常,則當監(jiān)控到所述系統(tǒng)總線傳輸所述命令對應(yīng)的響應(yīng)消息,獲取所述命令的命令等待時間,并根據(jù)所述命令等待時間確定所述系統(tǒng)總線是否發(fā)生超時異常。
14.如權(quán)利要求13所述的設(shè)備,其特征在于,所述第一確定模塊包括 第一獲取單元,用于獲取所述系統(tǒng)總線對應(yīng)的總線協(xié)議,判斷所述總線協(xié)議所定義的合法命令標識范圍是否包括所述命令標識,以及所述總線協(xié)議所定義合法命令地址范圍是否包括所述命令地址; 第一確定單元,用于如果所述總線協(xié)議所定義的合法命令標識范圍不包括所述命令標識和/或所述總線協(xié)議所定義的合法命令地址范圍不包括所述命令地址,則確定出所述系統(tǒng)總線發(fā)生了命令傳輸異常,否則,確定出所述系統(tǒng)總線未發(fā)生命令傳輸異常。
15.如權(quán)利要求13所述的設(shè)備,其特征在于,所述命令異常包括第一命令異?;虻诙町惓#? 所述第二確定模塊包括 比較單元,用于統(tǒng)計所述數(shù)據(jù)的個數(shù),比較所述統(tǒng)計的個數(shù)與所述數(shù)據(jù)個數(shù); 第二確定單元,用于如果所述統(tǒng)計的個數(shù)小于所述數(shù)據(jù)個數(shù),則確定出所述系統(tǒng)總線發(fā)生第一命令異常; 第三確定單元,用于如果所述統(tǒng)計的個數(shù)大于所述數(shù)據(jù)個數(shù),則確定出所述系統(tǒng)總線發(fā)生第二命令異常。
16.如權(quán)利要求15所述的設(shè)備,其特征在于,所述第二確定模塊還包括 第一發(fā)送單元,用于向所述數(shù)據(jù)補充偽數(shù)據(jù),使補充后的數(shù)據(jù)包括數(shù)據(jù)的個數(shù)與所述數(shù)據(jù)個數(shù)相等,如果所述命令為讀命令,則發(fā)送所述補充后的數(shù)據(jù)給主設(shè)備,所述主設(shè)備為發(fā)送所述命令的設(shè)備;如果所述命令為寫命令,則發(fā)送所述補充后的數(shù)據(jù)給目的設(shè)備,所述目的設(shè)備為接收所述命令的設(shè)備。
17.如權(quán)利要求15所述的設(shè)備,其特征在于,所述第二確定模塊還包括 第二發(fā)送單元,用于從所述數(shù)據(jù)中選擇所述數(shù)據(jù)個數(shù)個數(shù)據(jù),如果所述命令為讀命令,則發(fā)送所述選擇的數(shù)據(jù)給主設(shè)備,所述主設(shè)備為發(fā)送所述命令的設(shè)備;如果所述命令為寫命令,則發(fā)送所述選擇的數(shù)據(jù)給目的設(shè)備,所述目的設(shè)備為接收所述命令的設(shè)備。
18.如權(quán)利要求13所述的設(shè)備,其特征在于,所述設(shè)備還包括 設(shè)置模塊,用于當確定出所述系統(tǒng)總線未發(fā)生命令傳輸異常時,為所述命令設(shè)置對應(yīng)的計時器,并使所述計時器開始計時。
19.如權(quán)利要求18所述的設(shè)備,其特征在于,所述第三確定模塊包括 第二獲取單元,用于獲取所述命令對應(yīng)的計時器計時的時間,將所述計時的時間作為所述命令的命令等待時間; 判斷模塊,用于判斷所述命令的命令等待時間是否超過預(yù)設(shè)的命令截止時間,如果超過,則判斷出所述系統(tǒng)總線發(fā)生了超時異常,如果未超過,則判斷出所述系統(tǒng)總線未發(fā)生超時異常。
20.如權(quán)利要求13-19任一項權(quán)利要求所述的設(shè)備,其特征在于,所述設(shè)備還包括處理模塊,用于當確定出所述系統(tǒng)總線發(fā)生異常時,發(fā)送所述系統(tǒng)總線發(fā)生的異常和所述系統(tǒng)總線的標識給管理裝置,使管理裝置對所述系統(tǒng)總線發(fā)生的異常進行處理; 切換模塊,用于當所述管理裝置對所述系統(tǒng)總線進行處理后發(fā)送切換消息時,接收所述切換消息并轉(zhuǎn)發(fā)所述切換消息給所述監(jiān)測裝置對應(yīng)的設(shè)備,使所述設(shè)備使用備份系統(tǒng)總線來收發(fā)命令或數(shù)據(jù)。
21.—種管理裝置,其特征在于,所述設(shè)備包括 接收模塊,用于當監(jiān)測裝置對其對應(yīng)的系統(tǒng)總線進行監(jiān)控并監(jiān)控出所述系統(tǒng)總線發(fā)生異常時,接收所述監(jiān)測裝置發(fā)送的所述系統(tǒng)總線發(fā)生的異常和所述系統(tǒng)總線的標識; 第一發(fā)送模塊,用于如果所述系統(tǒng)總線發(fā)生的異常為超時異常,則根據(jù)所述系統(tǒng)總線的標識發(fā)送切換消息給連接到所述系統(tǒng)總線的設(shè)備,使所述設(shè)備使用備份系統(tǒng)總線來收發(fā)命令或數(shù)據(jù); 第二發(fā)送模塊,用于如果所述系統(tǒng)總線發(fā)生的異常為非超時異常,則增加所述系統(tǒng)總線發(fā)生異常的異常次數(shù);當所述異常次數(shù)超過預(yù)設(shè)閾值,根據(jù)所述系統(tǒng)總線的標識發(fā)送切換消息給連接到所述系統(tǒng)總線的設(shè)備,使所述設(shè)備使用備份系統(tǒng)總線來收發(fā)命令或數(shù)據(jù)。
22.如權(quán)利要求21所述的設(shè)備,其特征在于,所述第一發(fā)送模塊包括 第一查找單元,用于根據(jù)所述系統(tǒng)總線的標識,從已存儲的系統(tǒng)總線的標識與監(jiān)測裝置的標識的對應(yīng)關(guān)系查找出對應(yīng)的監(jiān)測裝置的標識; 第一發(fā)送單元,用于根據(jù)所述監(jiān)測裝置的標識發(fā)送切換消息給對應(yīng)的監(jiān)測裝置,使所述監(jiān)測裝置將所述切換消息轉(zhuǎn)發(fā)給所述監(jiān)測裝置對應(yīng)的設(shè)備。
23.如權(quán)利要求22所述的設(shè)備,其特征在于,所述第二發(fā)送模塊包括 增加單元,用于根據(jù)所述系統(tǒng)總線的標識,查找已存儲的系統(tǒng)總線的標識與異常次數(shù)的對應(yīng)關(guān)系,如果查找出對應(yīng)的異常次數(shù),則增加所述查找的異常次數(shù),如果沒有查找出對應(yīng)的異常次數(shù),則設(shè)置異常次數(shù)的初值,存儲所述系統(tǒng)總線的標識與所述異常次數(shù)的初值的對應(yīng)關(guān)系; 切換單元,用于當所述異常次數(shù)超過預(yù)設(shè)閾值,根據(jù)所述系統(tǒng)總線的標識發(fā)送切換消息給連接到所述系統(tǒng)總線的設(shè)備,使所述設(shè)備使用備份系統(tǒng)總線來收發(fā)命令或數(shù)據(jù)。
24.如權(quán)利要求21-23任一項權(quán)利要求所述的設(shè)備,其特征在于,所述設(shè)備還包括 恢復(fù)模塊,用于發(fā)送攜帶所述系統(tǒng)總線的標識的恢復(fù)請求消息給輸入或輸出系統(tǒng),使所述輸入或輸出系統(tǒng)對所述系統(tǒng)總線進行恢復(fù)。
全文摘要
本發(fā)明實施例提供了一種監(jiān)控系統(tǒng)總線的方法及裝置,涉及通信領(lǐng)域,所述方法包括監(jiān)測裝置對其對應(yīng)的系統(tǒng)總線進行實時監(jiān)控,當監(jiān)控到所述系統(tǒng)總線傳輸命令時,獲取所述命令的命令信息,所述命令信息包括命令標識、命令地址和數(shù)據(jù)個數(shù);根據(jù)所述命令標識和命令地址確定所述系統(tǒng)總線是否發(fā)生命令傳輸異常;如果所述系統(tǒng)總線未發(fā)生命令傳輸異常,則當監(jiān)控到所述系統(tǒng)總線傳輸所述命令對應(yīng)的數(shù)據(jù),根據(jù)所述數(shù)據(jù)和所述數(shù)據(jù)個數(shù)確定所述系統(tǒng)總線是否發(fā)生命令異常;以及,當監(jiān)控到所述系統(tǒng)總線傳輸所述命令對應(yīng)的響應(yīng)消息,獲取所述命令的命令等待時間,并根據(jù)所述命令等待時間確定所述系統(tǒng)總線是否發(fā)生超時異常。本發(fā)明能夠及時發(fā)現(xiàn)系統(tǒng)總線發(fā)生的異常。
文檔編號G06F11/00GK102662782SQ201210112839
公開日2012年9月12日 申請日期2012年4月17日 優(yōu)先權(quán)日2012年4月17日
發(fā)明者付強, 周昔平 申請人:華為技術(shù)有限公司