欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

中斷接腳的異常狀態(tài)偵測(cè)方法

文檔序號(hào):6580918閱讀:205來源:國知局
專利名稱:中斷接腳的異常狀態(tài)偵測(cè)方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種電腦系統(tǒng)的異常偵測(cè)方法,且特別涉及一種中斷接腳的異常偵測(cè) 方法。
背景技術(shù)
一般而言,在操作系統(tǒng)下,倘若在未執(zhí)行其他軟件而中央處理器(Center Processing Unit, CPU)卻總是在忙碌狀態(tài)時(shí)(例如CPU的使用率總是在接近100% ),使 用者必須通過其經(jīng)驗(yàn)來猜測(cè)是由什么原因造成CPU為忙碌狀態(tài)。
舉例來說,先將所有驅(qū)動(dòng)程序移除之后,再觀察CPU的使用率是否恢復(fù)正常。倘 若CPU的使用率恢復(fù)正常,則再進(jìn)一步尋找出是哪個(gè)驅(qū)動(dòng)程序所造成。或者,將所有的裝置 禁能之后,若CPU的使用率恢復(fù)正常,則再尋找是哪個(gè)裝置造成。再者,若裝置無法禁能, 則利用周邊元件接口組態(tài)空間(PCI configuration space,PCI = Peripheral Component Interface)中的總線控制位(BUS master bit)來抑制裝置的中斷信號(hào)的發(fā)出。
然而,傳統(tǒng)方法都是從表像去猜測(cè)CPU的使用率異常是由什么原因所造成,不僅 沒有效率,萬一裝置沒有驅(qū)動(dòng)程序或是無法將其禁能,便無法得知是否是由裝置所引起的 問題。再者,倘若是由于硬件線接錯(cuò)誤而造成其一直發(fā)出中斷信號(hào),通過傳統(tǒng)方法亦無法找 到其原因。發(fā)明內(nèi)容
本發(fā)明提供一種中斷接腳的異常狀態(tài)偵測(cè)方法,以檢測(cè)出發(fā)生異常的中斷接腳。
本發(fā)明提出一種中斷接腳的異常狀態(tài)偵測(cè)方法,適于一電腦系統(tǒng)。異常狀態(tài)偵測(cè)EfeiJI^P (Advanced Configuration And Power Interface, ACPI)表格,以取得電腦系統(tǒng)的各中斷接腳的中斷狀態(tài)位;在一固定時(shí)間內(nèi),一直檢查各中 斷狀態(tài)位是否一直維持為一特定值;當(dāng)其中一中斷接腳的中斷狀態(tài)位在固定時(shí)間內(nèi)一直維 持為上述特定值時(shí),判定此中斷接腳發(fā)生異常。
在本發(fā)明的一實(shí)施例中,上述在查詢ACPI表格的步驟之前,還可先判斷中央處理 器的使用率是否到達(dá)一閾值,以在中央處理器的使用率到達(dá)閾值時(shí),查詢ACPI表格以進(jìn)行 后續(xù)偵測(cè)異常中斷接腳的步驟。
在本發(fā)明的一實(shí)施例中,上述查詢ACPI表格的步驟,可查詢各中斷接腳的寄存器 地址,以根據(jù)寄存器地址,取得對(duì)應(yīng)的中斷狀態(tài)位。另外,還可根據(jù)ACPI表格來取得各中斷 接腳的區(qū)域接腳號(hào)碼。
在本發(fā)明的一實(shí)施例中,上述在判定中斷接腳發(fā)生異常的步驟之后,可將發(fā)生異 常的中斷接腳的區(qū)域接腳號(hào)碼轉(zhuǎn)換為一全域接腳號(hào)碼。接著,根據(jù)全域接腳號(hào)碼取得發(fā)生 異常的中斷接腳所對(duì)應(yīng)的裝置名稱。之后,記錄異常的中斷接腳的裝置名稱、區(qū)域接腳號(hào)碼 以及對(duì)應(yīng)的1/0 APIC識(shí)別碼。另外,在判定中斷接腳發(fā)生異常之后,還可提示一異常信息。
在本發(fā)明的一實(shí)施例中,上述對(duì)應(yīng)的裝置名稱還可通過中斷接腳對(duì)應(yīng)的驅(qū)動(dòng)程序來取得。
在本發(fā)明的一實(shí)施例中,上述異常狀態(tài)偵測(cè)方法還包括禁能發(fā)生異常的中斷接 腳。
在本發(fā)明的一實(shí)施例中,上述ACPI表格包括復(fù)合高級(jí)可編程中斷控制器描 述表(Multiple APIC Description Table,MADT)、區(qū)分系統(tǒng)描述表(Differentiated System Description Table, DSDT)以及固定高級(jí)組態(tài)與電源接口描述表(Fixed ACPI Description Table, FACP)。
基于上述,本發(fā)明通過檢測(cè)中斷接腳的異樣,并列出異常的中斷接腳以及使用此 中斷接腳的裝置名稱。據(jù)此,可將異常的中斷接腳禁能使得中央處理器的使用率恢復(fù)正常。 并且,開發(fā)人員能夠通過量測(cè)中斷接腳的路徑找出發(fā)生異常的問題點(diǎn)進(jìn)而將其修復(fù)。
為讓本發(fā)明的上述特征和優(yōu)點(diǎn)能還明顯易懂,下面特舉實(shí)施例,并配合附圖作詳 細(xì)說明如下。


圖1是本發(fā)明一實(shí)施例的中斷接腳的異常狀態(tài)偵測(cè)方法的流程圖。
圖2是本發(fā)明一實(shí)施例的記錄異常中斷接腳方法的流程圖。
圖3是本發(fā)明一實(shí)施例的電腦系統(tǒng)的示意圖。
圖4A與圖4B是本發(fā)明一實(shí)施例的ASL碼的部分示意圖。
主要元件符號(hào)說明
310,320 =PCI 裝置;330、340 :1/0 APIC 單元;
;350:芯片;360:系統(tǒng)計(jì)時(shí)器;
370 =PCI 橋接器;
S105 S120 本發(fā)明一實(shí)施例的中斷接腳的異常狀態(tài)偵測(cè)方法各步驟;
S205 S220 本發(fā)明一實(shí)施例的記錄異常中斷接腳方法各步驟。
具體實(shí)施方式
在操作系統(tǒng)下,若在未執(zhí)行其它軟件而中央處理器幾乎總是處于接近100%的使 用率時(shí),使用者必須通過其經(jīng)驗(yàn)來猜測(cè)是由什么原因造成中央處理器為忙碌狀態(tài)。為此,本 發(fā)明提出一種中斷接腳的異常狀態(tài)偵測(cè)方法,通過檢測(cè)中斷接腳是否發(fā)生異常,并列出發(fā) 生異常的中斷接腳及使用此中斷接腳的裝置名稱。為了使本發(fā)明的內(nèi)容還為明了,以下特 舉實(shí)施例作為本發(fā)明確實(shí)能夠據(jù)以實(shí)施的范例。
為了方便說明,在以下實(shí)施例中,例如是通過安裝一應(yīng)用軟件至電腦系統(tǒng)的存儲(chǔ) 單元中,以執(zhí)行中斷接腳的異常狀態(tài)偵測(cè)方法。此應(yīng)用軟件例如是利用C語言、Java語言 等程序語言所撰寫的,以通過電子自動(dòng)化的方式完成中斷接腳的異常狀態(tài)偵測(cè)方法。然在 此并不以此局限其應(yīng)用范圍。
圖1是本發(fā)明一實(shí)施例的中斷接腳的異常狀態(tài)偵測(cè)方法的流程圖。本實(shí)施例是 用于偵測(cè)電腦系統(tǒng)的中斷接腳是否發(fā)生異常。在本實(shí)施例中,電腦系統(tǒng)的操作系統(tǒng)是在高 級(jí)可編程中斷控制器(Advanced Programmable Interrupt Controller, APIC)模式下運(yùn) 行。在此,電腦系統(tǒng)的中央處理器內(nèi)部配置有本地APIC(Local APIC)單元,此外還具有輸入輸出APIC(I/0 APIC)單元,通過I/0APIC單元來處理輸入輸出裝置所發(fā)出的中斷信息, 且Local APIC與I/0APIC則分別具有各自的識(shí)別碼。例如,假設(shè)電腦系統(tǒng)具有兩個(gè)Local APIC以及兩個(gè)I/O APIC,則其識(shí)別碼分別為0 3。
請(qǐng)參照?qǐng)D1,首先,在步驟S105中,查詢高級(jí)組態(tài)與電源接口(Advanced Configuration And Power Interface,ACPI)表格,以取得電腦系統(tǒng)的各中斷接腳的中 斷狀態(tài)位。在本實(shí)施例中,ACPI表格包括復(fù)合高級(jí)可編程中斷控制器描述表(Multiple APIC Description Table,MADT)、區(qū)分系統(tǒng)描述表(Differentiated System Description Table, DSDT)以及固定高級(jí)組態(tài)與電源接口描述表(Fixed ACPI Description Table, FADT)。
其中,MADT包括各個(gè)1/0 APIC的存儲(chǔ)器映射式輸入輸出(Memory-Mapped 1/0, ΜΜΙ0)的地址以及1/0 APIC的識(shí)別碼。FADT包括系統(tǒng)控制中斷信號(hào)(System Control Interrupt, SCI)的全域接腳號(hào)碼(global pin number)。DSDT包括各中斷接腳所對(duì)應(yīng)的裝置名稱。
在此,可通過查詢MADT而取得電腦系統(tǒng)中每一個(gè)1/0 APIC的MMIO地址,再通過 MMIO而分別獲得各個(gè)1/0 APIC上所有中斷接腳的區(qū)域接腳號(hào)碼以及中斷狀態(tài)位。其中,每 個(gè)中斷接腳都有一個(gè)對(duì)應(yīng)的寄存器地址,以存放中斷狀態(tài)位。例如,當(dāng)中斷狀態(tài)位為0時(shí), 表示此中斷接腳目前為閑置狀態(tài)(idle status);當(dāng)中斷狀態(tài)位為1時(shí),表示此中斷接腳目 前為未決狀態(tài)(pending status)。
需要說明的是,當(dāng)未執(zhí)行任何軟件而中央處理器處于忙碌狀態(tài)時(shí),開始執(zhí)行本實(shí) 施例的異常狀態(tài)偵測(cè)方法。例如,在操作系統(tǒng)并未執(zhí)行其他軟件時(shí),判斷中央處理器的使 用率是否到達(dá)一閾值(例如,90%或接近100%,可由使用者自行設(shè)定)。若操作系統(tǒng)并未 執(zhí)行其他軟件,而中央處理器的使用率已到達(dá)上述閾值,則表示目前可能出現(xiàn)異常狀態(tài),因 此,開始執(zhí)行本實(shí)施例的異常狀態(tài)偵測(cè)方法,據(jù)以找出異常的中斷接腳。
接著,在取得各中斷接腳的中斷狀態(tài)位之后,如步驟SllO所示,在一段固定時(shí)間 內(nèi),一直檢查各中斷狀態(tài)位是否一直維持為一特定值,據(jù)以判斷對(duì)應(yīng)的中斷接腳是否發(fā)生 異常。也就是說,依序檢查每一個(gè)中斷接腳是否發(fā)生異常。
當(dāng)中斷狀態(tài)位在固定時(shí)間內(nèi)一直維持為上述特定值時(shí),如步驟S115所示,判定此 中斷狀態(tài)位對(duì)應(yīng)的中斷接腳發(fā)生異常。反之,當(dāng)中斷狀態(tài)位在固定時(shí)間內(nèi)發(fā)生變化時(shí)(例 如,中斷狀態(tài)位被清空),如步驟S120所示,判定此中斷狀態(tài)位對(duì)應(yīng)的中斷接腳未發(fā)生異堂巾ο
一般而言,倘若中斷接腳傳送中斷信號(hào)而觸發(fā)中央處理器,則此中斷信號(hào)對(duì)應(yīng)的 驅(qū)動(dòng)程序便會(huì)開始執(zhí)行以服務(wù)此中斷信號(hào)。在合理狀態(tài)之下,在經(jīng)過一段固定時(shí)間之后 (表示此中斷信號(hào)已被服務(wù)完畢),中斷狀態(tài)位會(huì)被清空。因此,若在一段固定時(shí)間內(nèi),中斷 狀態(tài)位持續(xù)一直維持在一特定值(例如為1)之下,即為不合理的狀態(tài)。如此狀況可能是對(duì) 應(yīng)的裝置發(fā)出的中斷信號(hào)為不合理,或者是硬件接線錯(cuò)誤而導(dǎo)致中斷接腳不斷地發(fā)出中斷 信號(hào)。
舉例來說,可將上述固定時(shí)間設(shè)定為0. 5秒。當(dāng)中斷狀態(tài)位在0. 5秒內(nèi)一直為1 時(shí),代表此中斷接腳的中斷信號(hào)無法被服務(wù),因此判定此中斷狀態(tài)位對(duì)應(yīng)的中斷接腳發(fā)生異常。
以下再舉一實(shí)施例來說明當(dāng)判定中斷接腳發(fā)生異常后的處理流程。圖2是本發(fā)明 一實(shí)施例的記錄異常中斷接腳方法的流程圖。請(qǐng)參照?qǐng)D2,如步驟S205所示,在檢查出異 常的中斷接腳之后,將異常的中斷接腳的區(qū)域接腳號(hào)碼轉(zhuǎn)換為全域接腳號(hào)碼(global pin number)。由于ACPI的DSDT ASL code所描述的中斷向量表所使用為全域接腳號(hào)碼,因此 為了方便后續(xù)處理,便將區(qū)域接腳號(hào)碼轉(zhuǎn)換為全域接腳號(hào)碼。
舉例來說,圖3是本發(fā)明一實(shí)施例的電腦系統(tǒng)的示意圖。在本實(shí)施例中,周邊元件 接口(Peripheral Component Interface, PCI)裝置即 PCI 裝置 310 與 PCI 裝置 320 分別 連接至I/0APIC單元330與I/O APIC單元;340。并且,PCI裝置310與PCI裝置320連接 至PCI橋接器(PCI Bridge) 370。芯片350與系統(tǒng)定時(shí)器360連接至I/O APIC單元330。 在此,I/O APIC單元330與I/O APIC單元340的識(shí)別碼分別為2與3。識(shí)別碼為2的I/ 0 APIC單元330的各中斷接腳,其全域接腳號(hào)碼即等于區(qū)域接腳號(hào)碼;而識(shí)別碼為3的I/ 0 APIC單元340的各中斷接腳,其全域接腳號(hào)碼即是識(shí)別碼為2的I/O APIC單元的接腳數(shù)目加上各區(qū)域接腳號(hào)碼,如下表所示。
權(quán)利要求
1.一種中斷接腳的異常狀態(tài)偵測(cè)方法,適于電腦系統(tǒng),該異常狀態(tài)偵測(cè)方法包括查詢高級(jí)組態(tài)與電源接口表格,以取得該電腦系統(tǒng)的多個(gè)中斷接腳各自的中斷狀態(tài)位;在固定時(shí)間內(nèi),一直檢查各所述中斷狀態(tài)位是否維持為特定值;以及當(dāng)所述多個(gè)中斷接腳其中之一的中斷狀態(tài)位在該固定時(shí)間內(nèi)維持為該特定值時(shí),判定 該中斷接腳發(fā)生異常。
2.根據(jù)權(quán)利要求1所述的中斷接腳的異常狀態(tài)偵測(cè)方法,其中在查詢?cè)摳呒?jí)組態(tài)與電 源接口表格的步驟之前,還包括判斷中央處理器的使用率是否到達(dá)閾值,以在該中央處理器的使用率到達(dá)該閾值時(shí), 查詢?cè)摳呒?jí)組態(tài)與電源接口表格。
3.根據(jù)權(quán)利要求1所述的中斷接腳的異常狀態(tài)偵測(cè)方法,其中查詢?cè)摳呒?jí)組態(tài)與電源 接口表格的步驟,包括查詢所述多個(gè)中斷接腳各自的寄存器地址,以根據(jù)該寄存器地址,取得對(duì)應(yīng)的該中斷 狀態(tài)位。
4.根據(jù)權(quán)利要求1所述的中斷接腳的異常狀態(tài)偵測(cè)方法,其中查詢?cè)摳呒?jí)組態(tài)與電源 接口表格的步驟,還包括取得所述多個(gè)中斷接腳各自的區(qū)域接腳號(hào)碼。
5.根據(jù)權(quán)利要求4所述的中斷接腳的異常狀態(tài)偵測(cè)方法,其中在判定該中斷接腳發(fā)生 異常的步驟之后,還包括將發(fā)生異常的該中斷接腳的區(qū)域接腳號(hào)碼轉(zhuǎn)換為全域接腳號(hào)碼;以及根據(jù)該全域接腳號(hào)碼取得發(fā)生異常的該中斷接腳所對(duì)應(yīng)的裝置名稱。
6.根據(jù)權(quán)利要求5所述的中斷接腳的異常狀態(tài)偵測(cè)方法,其中根據(jù)該全域接腳號(hào)碼取 得對(duì)應(yīng)的裝置名稱的步驟,包括通過該中斷接腳對(duì)應(yīng)的驅(qū)動(dòng)程序取得該裝置名稱。
7.根據(jù)權(quán)利要求5所述的中斷接腳的異常狀態(tài)偵測(cè)方法,其中在判定該中斷接腳發(fā)生 異常的步驟之后,還包括記錄該中斷接腳的該裝置名稱、該區(qū)域接腳號(hào)碼以及對(duì)應(yīng)的高級(jí)可編程中斷控制器識(shí) 別碼。
8.根據(jù)權(quán)利要求1所述的中斷接腳的異常狀態(tài)偵測(cè)方法,其中在判定該中斷接腳發(fā)生 異常的步驟之后,還包括提示異常信息。
9.根據(jù)權(quán)利要求1所述的中斷接腳的異常狀態(tài)偵測(cè)方法,還包括禁能發(fā)生異常的該中斷接腳。
10.根據(jù)權(quán)利要求1所述的中斷接腳的異常狀態(tài)偵測(cè)方法,其中該高級(jí)組態(tài)與電源接 口表格包括復(fù)合高級(jí)可編程中斷控制器描述表、區(qū)分系統(tǒng)描述表以及固定高級(jí)可編程中斷 控制器描述表。
全文摘要
本發(fā)明提供一種中斷接腳的異常狀態(tài)偵測(cè)方法。首先,查詢高級(jí)組態(tài)與電源接口表格,以取得電腦系統(tǒng)的各中斷接腳的中斷狀態(tài)位。之后,在一固定時(shí)間內(nèi),一直檢查各中斷狀態(tài)位是否一直維持為一特定值。當(dāng)其中一中斷接腳的中斷狀態(tài)位在固定時(shí)間內(nèi)一直維持為上述特定值時(shí),判定此中斷接腳發(fā)生異常。
文檔編號(hào)G06F11/267GK102033799SQ200910179208
公開日2011年4月27日 申請(qǐng)日期2009年9月29日 優(yōu)先權(quán)日2009年9月29日
發(fā)明者盧盈志, 李思賢 申請(qǐng)人:英業(yè)達(dá)股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
精河县| 邯郸市| 佛教| 淅川县| 青田县| 蒙自县| 漯河市| 金山区| 民丰县| 涞水县| 桃园市| 禄丰县| 信阳市| 西盟| 秭归县| 临城县| 当雄县| 资中县| 丁青县| 平陆县| 三穗县| 和林格尔县| 枝江市| 监利县| 南昌县| 新乡县| 习水县| 繁峙县| 长武县| 大竹县| 太仓市| 永嘉县| 南开区| 炎陵县| 雅江县| 长顺县| 珲春市| 琼海市| 高雄县| 商丘市| 上栗县|