亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

管理多處理器計算機系統(tǒng)中的系統(tǒng)管理中斷的系統(tǒng)和方法

文檔序號:6612826閱讀:211來源:國知局
專利名稱:管理多處理器計算機系統(tǒng)中的系統(tǒng)管理中斷的系統(tǒng)和方法
技術(shù)領(lǐng)域
本發(fā)明通常涉及計算機系統(tǒng)和信息處理系統(tǒng),更確切地說,涉及 在多處理器計算機系統(tǒng)中管理中斷的系統(tǒng)和方法。
背景技術(shù)
由于信息的價值和使用的不斷增長,個人和企業(yè)都在尋求處理和存 儲信息的其他方法。這些用戶的一個可用的選擇是信息處理系統(tǒng)。信 息處理系統(tǒng)出于商業(yè)、個人或其他目的通常處理、編譯、存儲和/或傳 送信息或數(shù)據(jù),因此允許用戶利用這些信息的價值。因為技術(shù)和信息 處理的需要和需求在不同用戶或應(yīng)用中變化,因此信息處理系統(tǒng)可以 根據(jù)所處理的信息的類型,處理信息的方法,處理、存儲或傳送信息 的方法,所處理、存儲或傳送的信息的數(shù)量,以及信息被處理、存儲 或傳送的速度和效率而變化。信息處理系統(tǒng)的不同使信息處理系統(tǒng)既 可以為通用的,或可以為某一特定用戶或特定用例如金融交易處理、 航空預(yù)定、企業(yè)數(shù)據(jù)存儲或全球通信而配置。此外,信息處理系統(tǒng)可 以包括或涵蓋可用來處理、存儲和傳送信息的多個硬件和軟件組件, 并包含一個或多個計算機系統(tǒng)、數(shù)據(jù)存儲系統(tǒng)和網(wǎng)絡(luò)系統(tǒng)。
信息處理系統(tǒng)可包含多個處理器,每個處理器直接耦合至單獨的一 組存儲器資源。在此情況中,每個處理器能夠處理計算機系統(tǒng)產(chǎn)生的 中斷信號。作為示例,如果存儲器中出現(xiàn)單比特錯誤,則直接耦合至 所述存儲器的處理器將處理同所述單比特錯誤相關(guān)的系統(tǒng)管理中斷
<SMI)。在計算機系統(tǒng)的一個處理器正處理該系統(tǒng)管理中斷期間,計 算機系統(tǒng)的其他處理器將繼續(xù)執(zhí)行操作系統(tǒng)指令。如果在處理系統(tǒng)管 理中斷期間,這些處理器爭奪共享的系統(tǒng)資源,則該計算機系統(tǒng)可能 不穩(wěn)定并且崩潰。
為了減小在處理單比特錯誤的SMI期間爭奪共享系統(tǒng)資源的可能 性,當(dāng)退出同最初的單比特錯誤的SM相關(guān)的中斷處理程序時,該中 斷處理器能夠產(chǎn)生軟SM。軟SNfl的發(fā)布使得所有的處理都處理該軟 SMI,由此導(dǎo)致所有的處理器都去識別該單比特錯誤。這種方法的一個
難題是,在中斷處理器正在處理初始的SMI期間如果出現(xiàn)第二個SMI, 則第二個SMI的存在將導(dǎo)致該軟SMI被丟棄,并且計算機系統(tǒng)的其他 處理器將不識別所述的單比特錯誤。

發(fā)明內(nèi)容
依據(jù)本發(fā)明,公開了一種系統(tǒng)和方法,其中在多處理器系統(tǒng)的一個 處理器執(zhí)行中斷處理序列期間,處理器將原因碼(reason code)寫入狀態(tài) 寄存器以識別導(dǎo)致中斷原因。將該系統(tǒng)的BIOS碼對中斷初始化寄存器 進行寫入,以致每個處理器進入中斷處理序列。該系統(tǒng)的每個處理器 基于狀態(tài)寄存器的內(nèi)容處理中斷,使得每個處理器同時地處理將以不 同的方式導(dǎo)致本地中斷的事件的中斷。
本文揭示的系統(tǒng)和方法在技術(shù)上是有優(yōu)勢的,因為它對于僅以其 他方式產(chǎn)生本地系統(tǒng)管理中斷的事件產(chǎn)生同步系統(tǒng)管理中斷。系統(tǒng)管 理中斷的同步處理避免了丟失或不能解決在另一個系統(tǒng)管理中斷懸掛 期間出現(xiàn)的系統(tǒng)管理中斷的可能。由于本文揭示的系統(tǒng)和方法,因此 僅生成本地系統(tǒng)管理中斷的事件將被系統(tǒng)的每個處理器識別;而不是 在該系統(tǒng)的其他處理器中被丟棄并有利于后來的中斷事件。在后面的 說明,權(quán)利要求和圖示中,其他的技術(shù)有點將呈現(xiàn)給本領(lǐng)域的普通技 術(shù)人員。


通過參考下面的描述并結(jié)合附圖,可以對本發(fā)明的實施例和優(yōu)點有 一個更好的理解,其中相同的附圖標(biāo)記表示相同的特征,其中 圖l為計算機系統(tǒng)的體系結(jié)構(gòu)圖2為在多處理器系統(tǒng)的每個處理器中處理中斷的方法步驟的流 程圖3為在BIOS中執(zhí)行系統(tǒng)控制中斷處理程序的方法的流程圖。
具體實施例方式
對本公開來說,信息處理系統(tǒng)可能包含任何工具和工具的集合,為 商業(yè)、科研、控制或其他目的而計算、分類、處理、傳輸、接收、回 收、發(fā)起、轉(zhuǎn)換、存儲、展示、顯示、探測、記錄、再現(xiàn)、操作或使
用任何形式的信息、情報或數(shù)據(jù)。例如,信息處理系統(tǒng)可能是個人電 腦、網(wǎng)絡(luò)存儲設(shè)備或任何其他合適的設(shè)備,并且在尺寸、形狀、性能、 功能和價格上也可能改變。該系統(tǒng)處理系統(tǒng)可能包括隨機存取存儲器(RAM), 一個或多個處理資源例如中央處理器(CPU)或硬件或軟件控制 邏輯、ROM和/或其它類型的非易失性存儲器。該信息處理系統(tǒng)的輔助 組件可能包括一個或多個磁盤驅(qū)動器、 一個或多個用于同外部設(shè)備進 行通信的網(wǎng)絡(luò)端口,以及各種輸入和輸出(I/0)設(shè)備,例如鍵盤、鼠標(biāo) 和視頻顯示器。該信息處理系統(tǒng)也可能包括一個或多個用于在各種硬 件組件之間傳輸信息的總線。圖1所示為通常由IO表示的計算機系統(tǒng)體系結(jié)構(gòu)的圖示。計算機 系統(tǒng)10是包括四個處理器(標(biāo)識為CPU 0, CPU 1, CPU 2, CPU 3)的多處 理器系統(tǒng)。每個處理器直接耦合至其它處理器的每一個。此外,每個 處理器直接耦合至同該處理器單獨關(guān)聯(lián)的本地存儲器的陣列。在圖1 的示例中,CPU 0直接耦合至標(biāo)識為存儲器0的存儲器陣列;CPU 1 直接耦合至存儲器l; CPU2直接耦合至存儲器2; CPU3直接耦合至 存儲器3。在圖1的結(jié)構(gòu)中,示例中標(biāo)識為CPU2的處理器耦合至第一I/0橋 (有稱作北橋)14。 I/O橋14耦合至第二 I/O橋15或南橋。BIOS ROM 16 耦合至南橋15, BIOS ROM 15既包括標(biāo)準(zhǔn)的BIOS軟件,也包括圖1 所示的ACPI電源管理軟件。南橋15所包含的是多個寄存器,他們在 圖1中被標(biāo)識為中斷初始化寄存器18和SMI狀態(tài)寄存器20。本文揭示的系統(tǒng)和方法涉及到在多處理器計算機系統(tǒng)中管理中斷 的方法。作為示例,當(dāng)單個存儲器陣列中的單比特錯誤數(shù)達到臨界值 的時候,系統(tǒng)管理中斷就被初始化。設(shè)計用于處理系統(tǒng)管理中斷的處 理器直接耦合至包含所述單比特錯誤的存儲器陣列。作為示例,假設(shè) 存儲器l中的單比特錯誤數(shù)已經(jīng)達到臨界值。系統(tǒng)管理中斷將被發(fā)布, 并且CPU l將處理該系統(tǒng)管理中斷。在本文描述中,因為該處理器是 本地的或是直接耦合至作為本地系統(tǒng)管理中斷資源的本地存儲器,所 以處理中斷的處理器將被稱作本地處理器。作為本地處理器處理系統(tǒng)管理中斷的一部分,本地處理器將對集線 器14的中斷初始化寄存器18寫入,以產(chǎn)生系統(tǒng)控制中斷。本地處理 器也將代碼寫入SMI狀態(tài)寄存器20。寫入SMI狀態(tài)寄存器20的代碼 包括本地SMI原因碼(reason code),該原因碼展現(xiàn)了該系統(tǒng)管理中斷的 緣由和原因。在SMI狀態(tài)寄存器中存在的本地SMI原因碼也作為一個 標(biāo)記,以表明本地處理器將很快完成系統(tǒng)管理中斷的處理。作為系統(tǒng)控制中斷初始化的結(jié)果,在BIOS中的代碼將周期性地檢 査SMI狀態(tài)寄存器20,以決定本地SMI原因碼是否已被寫入SMI狀 態(tài)寄存器。如果本地SMI原因碼未被寫入SMI狀態(tài)寄存器,SMI狀態(tài) 寄存器20將有零值或空值。本地SMI原因碼的存在作為信號標(biāo)志,以 表示本地處理器是否很快完成它的中斷處理序列。當(dāng)在SMI狀態(tài)寄存 器20中最終發(fā)現(xiàn)一個非零值的時候,BIOS將通過寫入中斷初始化寄 存器18為所有的處理器產(chǎn)生軟系統(tǒng)管理中斷。 一旦標(biāo)記被寫入中斷初 始化寄存器18,該系統(tǒng)的所有處理器執(zhí)行系統(tǒng)管理中斷,在系統(tǒng)管理 中斷處理期間,使用SMI狀態(tài)寄存器20中的SMI本地原因碼來標(biāo)識 所采取的響應(yīng)動作。圖2所示為在多處理器系統(tǒng)的每個處理器中用于處理中斷的一系列 方法步驟的流程圖。在步驟30,該系統(tǒng)的一個處理器進入系統(tǒng)管理模 式,并開始處理系統(tǒng)管理中斷。在步驟32,處理器將空值寫入SMI狀 態(tài)寄存器。在步驟34處理器決定系統(tǒng)管理中斷是否為本地系統(tǒng)管理中 斷。本地系統(tǒng)管理中斷是初始化時指定到該處理器的中斷。作為一個 示例,在存儲器0中發(fā)生單比特錯誤的情況下,CPUO將處理該系統(tǒng) 管理中斷,對于CPU 0,該系統(tǒng)管理中斷將是本地系統(tǒng)管理中斷。對 于該系統(tǒng)的其他處理器,后來被啟動以記錄存儲器0的單比特錯誤的 系統(tǒng)管理中斷將不是本地系統(tǒng)管理中斷。如果在步驟34中決定該系統(tǒng)管理中斷是本地系統(tǒng)管理中斷,則在 步驟36通過寫入中斷初始化寄存器18,處理器產(chǎn)生系統(tǒng)控制中斷。在 步驟38,處理器將本地SMI原因碼寫入SMI狀態(tài)寄存器20,并且在 步驟40處理器退出系統(tǒng)管理中斷的處理。接下來的步驟40,處理器恢 復(fù)在步驟42的正常操作。但是,如果在步驟34決定系統(tǒng)管理中斷不 是本地系統(tǒng)管理中斷,那么接下來在步驟44決定系統(tǒng)管理中斷是否是 軟系統(tǒng)管理中斷。如果該系統(tǒng)管理中斷不是軟系統(tǒng)管理中斷,則在步 驟46中處理標(biāo)準(zhǔn)的系統(tǒng)管理中斷,并且處理器在步驟40退出系統(tǒng)管
理中斷的處理。如果在步驟44決定系統(tǒng)管理中斷是軟系統(tǒng)管理中斷,接下來在步 驟48決定SMI狀態(tài)寄存器20是否有一個非空值。如果在步驟48決定 了 SMI狀態(tài)寄存器20有一個空值,然后盡管系統(tǒng)管理中斷是軟系統(tǒng)管 理中斷,則在計算機系統(tǒng)的另一個處理器中存在標(biāo)準(zhǔn)中斷之后,該軟 系統(tǒng)管理中斷未被初始化。在此情況下,該軟系統(tǒng)管理中斷在步驟52 中被處理,并且在步驟40處理器退出系統(tǒng)管理中斷的處理。如果在步 驟48決定了本地SMI原因碼己經(jīng)被寫入SMI狀態(tài)寄存器,則基于本 地SMI原因碼,處理器在步驟50處理系統(tǒng)管理中斷事件,并且在步驟 40該處理器退出系統(tǒng)管理中斷的處理。圖3所示為在BIOS中執(zhí)行系統(tǒng)控制中斷處理程序的一系列方法步 驟的流程圖。在步驟60, BIOS的系統(tǒng)控制中斷處理程序被初始化。在 步驟62, BIOS讀取SMI狀態(tài)寄存器并在步驟64中決定SMI狀態(tài)寄存 器的值是否為空值。如果SMI狀態(tài)寄存器的值為空值,這就表明正在 處理系統(tǒng)管理中斷的本地處理器尚未完成系統(tǒng)管理中斷的處理,圖3 的流程圖循環(huán)回到步驟62和64。如果SMI狀態(tài)寄存器的值非空,就 表明處理系統(tǒng)管理中斷的本地處理器已經(jīng)完成系統(tǒng)管理中斷的處理, 在步驟66系統(tǒng)控制中斷處理程序為其他每個處理器產(chǎn)生軟系統(tǒng)管理中 斷,并將本地SMI原因碼傳送到計算機系統(tǒng)的每個處理器。在步驟68, BIOS的系統(tǒng)控制中斷處理程序結(jié)束。盡管本文所揭示的系統(tǒng)和方法描述的是關(guān)于分布式存儲器配置, 應(yīng)該理解到本文所描述的系統(tǒng)和方法不限于圖1所示的存儲器配置。 更合適地,本文所描述的系統(tǒng)和方法可以用于任何多處理器系統(tǒng)以管 理多處理器系統(tǒng)中的中斷之間的沖突。盡管已經(jīng)詳細地描述了本發(fā)明 揭示的內(nèi)容,也應(yīng)該理解到,在不脫離后附的權(quán)利要求所定義本發(fā)明 的精神和范圍的情況下也可以進行各種變化、替換和變更。
權(quán)利要求
1.一種用于管理多處理器系統(tǒng)的中斷的方法,包括在第一處理器中執(zhí)行中斷處理序列以處理系統(tǒng)內(nèi)的中斷;將標(biāo)記寫入指定的存儲器位置;在計算機系統(tǒng)的每個處理器中初始化中斷處理序列,其中每個處理器讀入在指定存儲器位置的標(biāo)記,并作為該處理器的中斷處理序列的輸入。
2. 如權(quán)利要求1所述的用于管理多處理器系統(tǒng)的中斷的方法,其中 標(biāo)記用于識別中斷的原因。
3. 如權(quán)利要求1所述的用于管理多處理器系統(tǒng)的中斷的方法,其中 將標(biāo)記寫入指定的存儲器位置的步驟包括將標(biāo)記寫入系統(tǒng)中I/O橋的 寄存器的步驟。
4. 如權(quán)利要求1所述的用于管理多處理器系統(tǒng)的中斷的方法,其中 將標(biāo)記寫入指定的存儲器位置的步驟包括將標(biāo)記寫入系統(tǒng)中南橋的寄 存器的步驟。
5. 如權(quán)利要求1所述的用于管理多處理器系統(tǒng)的中斷的方法,其中 在計算機系統(tǒng)的每個處理器中初始化中斷處理序列的步驟,包括對系 統(tǒng)的I/O橋中的寄存器進行寫入以在系統(tǒng)的每個處理器初始化中斷處 理序列的步驟。
6. 如權(quán)利要求1所述用于管理多處理器系統(tǒng)的中斷的方法,其中在 計算機系統(tǒng)的每個處理器中初始化中斷處理序列的步驟,包括對系統(tǒng) 的南橋中的寄存器進行寫入以在系統(tǒng)的每個處理器初始化中斷處理序 列的步驟。
7. 如權(quán)利要求1所述用于管理多處理器系統(tǒng)的中斷的方法,進一步包括在系統(tǒng)的每個處理器執(zhí)行中斷處理序列的步驟。
8. 如權(quán)利要求1所述的用于管理多處理器系統(tǒng)的中斷的方法,其中在系統(tǒng)的每個處理器執(zhí)行中斷處理序列的步驟包括步驟 決定系統(tǒng)管理中斷是否是軟系統(tǒng)管理中斷;如果系統(tǒng)管理中斷是軟系統(tǒng)管理中斷,讀取指定的存儲器位置, 以基于指定的存儲器位置的內(nèi)容決定是否執(zhí)行中斷處理序列。
9. 如權(quán)利要求8所述的用于管理多處理器系統(tǒng)的中斷的方法,其 中讀取指定的存儲器位置以基于指定的存儲器位置的內(nèi)容決定是否執(zhí) 行中斷處理序列的步驟包括以下步驟如果指定的存儲器位置包含非空值,則基于該非空值執(zhí)行中斷處 理序列;并且如果指定的存儲器位置包含空值,則執(zhí)行中斷處理序列以處 理軟系統(tǒng)管理中斷。
10. 如權(quán)利要求9所述的用于管理多處理器系統(tǒng)的中斷的方法,其 中指定的存儲器位置在系統(tǒng)的I/O橋中。
11. 一種信息處理系統(tǒng),包括 多個處理器; 中斷初始化寄存器; 中斷狀態(tài)寄存器;其中,當(dāng)在多個處理器的第一處理器中初始化中斷處理序列時, 將標(biāo)記寫入中斷狀態(tài)寄存器,以促使多個處理器的每個進入中斷處理 序列,其中每個處理器讀取中斷狀態(tài)寄存器的內(nèi)容,并作為在該處理 器中執(zhí)行的中斷處理序列的輸入。
12. 如權(quán)利要求11所述的信息處理系統(tǒng),其中,如果中斷狀態(tài)的內(nèi) 容是非空值,則執(zhí)行對應(yīng)于該中斷狀態(tài)寄存器的非空值的中斷處理序 列。
13. 如權(quán)利要求11所述的信息處理系統(tǒng),其中如果中斷狀態(tài)的內(nèi)容 是空值,則執(zhí)行對應(yīng)于軟系統(tǒng)管理中斷的處理的中斷處理序列。
14. 如權(quán)利要求11所述的信息處理系統(tǒng),其中中斷初始化寄存器在 系統(tǒng)I/0橋中。
15. 如權(quán)利要求11所述的信息處理系統(tǒng),其中中斷初始化寄存器在 系統(tǒng)南橋中。
16. 如權(quán)利要求11所述的信息處理系統(tǒng),其中中斷狀態(tài)寄存器在系統(tǒng)的i/o橋中。
17. 如權(quán)利要求11所述的信息處理系統(tǒng),其中中斷狀態(tài)寄存器在系 統(tǒng)南橋中。
18. —種用于處理多處理器系統(tǒng)的中斷的方法,包括 在系統(tǒng)的第一處理器,將中斷原因碼寫入系統(tǒng)的中斷狀態(tài)寄存器; 對中斷狀態(tài)寄存器進行寫入以使系統(tǒng)的每個處理器進入中斷處理序列;在系統(tǒng)的每個處理器中執(zhí)行中斷處理序列,其中中斷處理序列的 操作依賴中斷狀態(tài)寄存器的內(nèi)容。
19. 如權(quán)利要求18所述的用于處理多處理器系統(tǒng)的中斷的方法,其 中,如果中斷狀態(tài)寄存器的內(nèi)容是非空值,則執(zhí)行中斷處理序列的步 驟包括執(zhí)行對應(yīng)于中斷狀態(tài)寄存器的非空值的中斷處理序列。
20. 如權(quán)利要求18所述的用于處理多處理器系統(tǒng)的中斷的方法,其 中,如果中斷狀態(tài)寄存器的內(nèi)容是空值,則執(zhí)行中斷處理序列的步驟 包括處理軟系統(tǒng)管理中斷的步驟。
全文摘要
公開一種系統(tǒng)和方法,其中在多處理器系統(tǒng)的一個處理器執(zhí)行中斷處理序列期間,處理器將原因碼寫入狀態(tài)寄存器以識別中斷的原因。系統(tǒng)的BIOS碼對中斷初始寄存器進行寫入,以使每個處理器進入中斷處理序列。系統(tǒng)的每個處理器基于狀態(tài)寄存器的內(nèi)容處理中斷,使得每個處理器同步地處理將引起本地中斷的事件的中斷。
文檔編號G06F13/24GK101154202SQ20071016301
公開日2008年4月2日 申請日期2007年9月28日 優(yōu)先權(quán)日2006年9月29日
發(fā)明者M·瑞杰瑞嘉, V·尼嘉瓦昵, 吳武賢, 王必強 申請人:戴爾產(chǎn)品有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1