專利名稱:自動(dòng)暫停狀態(tài)重啟動(dòng)的透明系統(tǒng)中斷的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及微處理器體系結(jié)構(gòu)領(lǐng)域。更準(zhǔn)確地說,本發(fā)明涉及提供有自動(dòng)暫停狀態(tài)重啟動(dòng)功能的透明的系統(tǒng)中斷方法和裝置。
本申請(qǐng)和美國專利申請(qǐng)07/594278相關(guān),該美國專利申請(qǐng)于1990年10月9日提交,已轉(zhuǎn)讓給本申請(qǐng)的受讓人Intel公司,該美國專利申請(qǐng)的題目為透明系統(tǒng)中斷。
在相關(guān)的共同未決的美國專利申請(qǐng)中,公開了一種專門用于微處理器體系結(jié)構(gòu)的提供透明系統(tǒng)中斷的方法和裝置。在該相關(guān)共同未決美國專利申請(qǐng)中公開的方法和裝置解決了先有技術(shù)微處理器所固有的問題,具體是那些有保護(hù)方式及實(shí)址操作方式、系統(tǒng)綜合者或原始設(shè)備制造商(OEM)不能提供透明系統(tǒng)中斷的那些微處理器。
透明系統(tǒng)中斷是不能由任何操作系統(tǒng)或應(yīng)用程序重定位或重寫的系統(tǒng)級(jí)中斷,從而允許系統(tǒng)綜合者使用微處理器提供可在任何操作環(huán)境下可靠運(yùn)行的系統(tǒng)級(jí)中斷。在相關(guān)共同未決美國專利申請(qǐng)公開的最佳實(shí)施例中,通過斷定基于微處理器芯片中央處理器(CPU)芯片外部管腳上的電信號(hào)來調(diào)用透明系統(tǒng)中斷。
一旦斷定CPU芯片外部管腳上有電信號(hào),CPU對(duì)通常未映射的將透明系統(tǒng)中斷服務(wù)例程存儲(chǔ)在作為主存空間預(yù)定區(qū)域的專用隨機(jī)存取存儲(chǔ)器(RAM)區(qū)域進(jìn)行映射,將當(dāng)前CPU狀態(tài)存儲(chǔ)在該專用RAM空間,并開始執(zhí)行透明系統(tǒng)中斷服務(wù)例程。透明系統(tǒng)中斷例程通常包含對(duì)所裝CPU芯片系統(tǒng)的透明系統(tǒng)中斷的具體應(yīng)用程序唯一的指令。一旦識(shí)別調(diào)用使CPU恢復(fù)到正好在透明系統(tǒng)中斷前存在的CPU狀態(tài)的“恢復(fù)”(Resume)指令的外部事件,便完成從透明系統(tǒng)中斷的恢復(fù)。
透明系統(tǒng)中斷的重要應(yīng)用是電源管理功能,使處理器和/或其它系統(tǒng)設(shè)備在不用時(shí)有效地關(guān)閉,然后再重啟動(dòng)而無須經(jīng)過加例程。該功能對(duì)特別關(guān)心節(jié)電的電池運(yùn)行的計(jì)算機(jī)特別有用。這樣,例如,如正在應(yīng)用程序上工作的計(jì)算機(jī)操作員被中斷,則系統(tǒng)可掉電以處長電池壽命。當(dāng)操作員返回使用該系統(tǒng),則系統(tǒng)恢復(fù)到應(yīng)用程序的同一點(diǎn)如同系統(tǒng)在受影響期間一直在運(yùn)行。操作員無須采取任何動(dòng)作保存中斷前的應(yīng)用程序結(jié)果,在返回使用該計(jì)算機(jī)時(shí)無須重裝應(yīng)用程序。
在相關(guān)共同未決的美國專利申請(qǐng)中,透明系統(tǒng)中斷沒有為在暫停狀態(tài)中斷期間CPU提供具體支持。因此,帶有應(yīng)用程序特定指令的透明系統(tǒng)服務(wù)例程有責(zé)任檢查判定CPU是否在暫停狀態(tài)期間被中斷。如果CPU在暫停狀態(tài)被中斷,則透明系統(tǒng)服務(wù)例程還需建立存儲(chǔ)在專用存儲(chǔ)空間中CPU狀態(tài)的適當(dāng)寄存器,以便在執(zhí)行Resume指令時(shí)恢復(fù)CPU狀態(tài),CPU或重入暫停狀態(tài),或繼續(xù)執(zhí)行透明系統(tǒng)中斷所要求的下一條指令。
透明系統(tǒng)中斷服務(wù)例程確定CPU是否在暫停狀態(tài)時(shí)被中斷的方式和微處理器相關(guān)。以相關(guān)共同未決美國專利申請(qǐng)所討論的基于i386SXCPU的微處理機(jī)系統(tǒng)為例,透明系統(tǒng)中斷服務(wù)例程通過輪詢I/O寄存器來確定CPU是否在暫停狀態(tài)時(shí)被中斷。讓透明系統(tǒng)中斷服務(wù)例程負(fù)責(zé)CPU從其被中斷的暫停狀態(tài)重啟動(dòng)的方式至少有兩個(gè)缺點(diǎn)1)重啟動(dòng)暫停狀態(tài)的CPU或?qū)⒗^續(xù)下一指令的執(zhí)行負(fù)擔(dān)放在透明系統(tǒng)中斷服務(wù)例程上,以及2)CPU在從暫停狀態(tài)被中斷后進(jìn)行恢復(fù)的方式和微處理器相關(guān)。
因此,本發(fā)明的一個(gè)目的是提供帶有自動(dòng)暫停狀態(tài)重啟動(dòng)的改進(jìn)的透明系統(tǒng)中斷。
按照本發(fā)明,透明系統(tǒng)中斷是通過確定基于微處理器芯片的中央處理器(CPU)外部管腳上的電信號(hào)來調(diào)用的。一旦斷定CPU芯片外部管腳上的電信號(hào),CPU通常對(duì)未映射的專用隨機(jī)存取存儲(chǔ)器(RAM)區(qū)進(jìn)行映射,該專用RAM區(qū)作為主存空間預(yù)定區(qū)存儲(chǔ)有透明系統(tǒng)中斷服務(wù)例程,將包括指令指針和前指令指針的當(dāng)前CPU狀態(tài)保存在該專用RAM空間,如CPU是從暫停狀態(tài)被中斷,置位專用RAM空間中的暫停指示器,并開始執(zhí)行透明系統(tǒng)中斷服務(wù)例程。
透明系統(tǒng)中斷服務(wù)例程通常包含對(duì)裝有CPU芯片的系統(tǒng)的透明系統(tǒng)中斷的特定應(yīng)用來說是唯一的指令。此外,透明系統(tǒng)中斷服務(wù)例程還包括檢查暫停指示器、如果CPU恢復(fù)繼續(xù)執(zhí)行下一指令來代替暫停狀態(tài)則復(fù)位暫停指示器的指令。
一旦識(shí)別出調(diào)用使CPU正好恢復(fù)到透明系統(tǒng)中斷前存在的相同狀態(tài)或從暫停狀態(tài)自動(dòng)重啟動(dòng)的“Resume”指令的外部事件,便進(jìn)行從透明系統(tǒng)中斷的恢復(fù)。在CPU狀態(tài)恢復(fù)期間,“Resume”指令檢查暫停指示器,并且當(dāng)暫停指示器被置位,有條件地將所恢復(fù)指令指針遞減為被恢復(fù)的前指令指針,從而使前指令,即“Halt”(暫停)指令被重復(fù)執(zhí)行,將CPU恢復(fù)為暫停狀態(tài),而不再繼續(xù)執(zhí)行下一指令。
通過以下結(jié)合附圖對(duì)本發(fā)明最佳實(shí)施例的詳細(xì)說明,本發(fā)明的目的、特點(diǎn)及優(yōu)點(diǎn)會(huì)變得顯而易見,附圖中
圖1是舉例體現(xiàn)本發(fā)明的微處理器系統(tǒng)的功能框圖;
圖2是本發(fā)明的帶有自動(dòng)暫停重啟動(dòng)功能的透明系統(tǒng)中斷的微代碼的功能流圖;
參考圖1,示出說明舉例體現(xiàn)本發(fā)明的微處理器系統(tǒng)的框圖。舉例的微處理器系統(tǒng)簡略說明如下,然而,應(yīng)理解本發(fā)明不局限于這種特定微處理器設(shè)計(jì),而可結(jié)合到任意微處理器設(shè)計(jì)中。
舉例的微處理器系統(tǒng)10包含三個(gè)主機(jī)組件,指定為GENCPU、GENIO和GENVGA。GENCPU是擴(kuò)展的中央處理器;GENIO是單片輸入/輸出部;而GEWVGA是單片圖形接口。這三個(gè)組件通過ISA總線42彼此通信并和其它系統(tǒng)組件(例如,擴(kuò)展槽,鍵盤控制器、磁盤控制器)通信。
GENCPU包括CPU12、存儲(chǔ)控制器14、高速緩存控制器16、ISA總線控制邏輯18和行緩沖器20。CPU12至少有兩種工作方式,實(shí)址方式和保護(hù)方式。CPU12基本上是Intel公司制造的i386TMSX CPU,Intel公司為本發(fā)明的共同受讓人。本說明書通篇的有關(guān)i386TMSX CPU的術(shù)語,例如,寄存器名字、信號(hào)命名法被用來說明本發(fā)明。這些術(shù)語可為微處理器設(shè)計(jì)領(lǐng)域的專來人員所理解,因此在此不作冗長解釋。
具體地說,CPU12包含分別含有指令指針和前指令指針的指令指針寄存器(未示出)和前指令指針寄存器(未示出)。指令指針控制指令提取。CPU12自動(dòng)遞增指令和前指令指針,在執(zhí)行一指令后指向待執(zhí)行的下一指令和剛執(zhí)行完的指令。
CPU口還包括執(zhí)行多條指令的邏輯(未示出)。指令包含使程序執(zhí)行暫停以及防止CPU12使用局部總線直至CPU12重啟動(dòng)的“Halt”(暫停)指令。指令可對(duì)0、1、2或3個(gè)操作數(shù)操作。一個(gè)操作數(shù)或駐在指令中,或在寄存器中,或在存儲(chǔ)器單元中。CPU12有兩種操作方式,實(shí)址方式和保護(hù)方式。實(shí)址方式和保護(hù)方式間的主要判別是邏輯地址轉(zhuǎn)換為線性地址的方式、地址空間的大小及分頁能力。
此外,CPU12包含執(zhí)行各個(gè)硬件中斷的邏輯(未示出)。硬件中斷隨外部事件結(jié)果而出現(xiàn),并可分為兩種類型可屏蔽和不可屏蔽的。在執(zhí)行當(dāng)前指令后對(duì)中斷進(jìn)行服務(wù)。當(dāng)中斷服務(wù)例程完成中斷服務(wù)后,執(zhí)行進(jìn)行到緊接在所執(zhí)行指令后的指令??善帘沃袛嗤ǔS靡皂憫?yīng)異步外部硬件事件。不可屏蔽中斷通常對(duì)很高優(yōu)先級(jí)事件服務(wù)。
對(duì)CPU12的寄存器和內(nèi)部結(jié)構(gòu)的進(jìn)一步描述,參見Inte(公司出版的240187)出版號(hào)的i386TMSX微處理器一書及相關(guān)出版物。
GENIO包括并行端口(PIO)22、兩個(gè)串行端口(SIO)24a、24b,實(shí)時(shí)時(shí)鐘部件(RTC)26、兩個(gè)可編程中斷控制器(PIC)28a、28b,兩個(gè)可編程計(jì)時(shí)器(PIT)30a、30b,以及兩個(gè)直接存儲(chǔ)器存取控制器(DMA)32a、32b。GENVGA包括VGA圖形控制器36、視頻存儲(chǔ)器控制器38和平面顯示器接口40。
此外,在三個(gè)主要組件外部的是系統(tǒng)存儲(chǔ)器44,高速緩沖存儲(chǔ)器46、視頻存儲(chǔ)器48,和普通VGA監(jiān)視器的接口(PAL/DAC)50。系統(tǒng)存儲(chǔ)器44、高速緩沖存儲(chǔ)器46和視頻存儲(chǔ)器48分別為存儲(chǔ)器控制器14、高速緩沖存儲(chǔ)器控制器16和視頻存儲(chǔ)控制器38所存取。視頻存儲(chǔ)器48可通過ISA總線42及兩個(gè)接口40、50進(jìn)行存取。
對(duì)i386TMSX微處理器有關(guān)的進(jìn)一步描述,參見Intel公司出版的,240332出版號(hào)的i386TMSX微處理器硬件參考手冊(cè)及相關(guān)出版物。
本發(fā)明可通過對(duì)常規(guī)先有技術(shù)微處理體系結(jié)構(gòu)例如,本受讓人的i386體系結(jié)構(gòu)如下三個(gè)方面的增強(qiáng)措施來實(shí)現(xiàn)。
1.一種稱為系統(tǒng)管理程序中斷(SSI),用來以取代CPU處在暫停狀態(tài)時(shí)的保護(hù)機(jī)構(gòu)的特定支持來取代整個(gè)微處理器系統(tǒng)保護(hù)機(jī)構(gòu)的新中斷。該SSI中斷是不可屏蔽的,并有比包括其它不可屏蔽中斷的所有中斷更高的優(yōu)先級(jí)。該SSI中斷由SSI中斷服務(wù)例程提供服務(wù)。
2.一種稱為系統(tǒng)管理RAM或SMRAM的特定系統(tǒng)透明存儲(chǔ)器區(qū)域,用于存儲(chǔ)SSI中斷服務(wù)例程、中斷時(shí)CPU的狀態(tài),以及暫停狀態(tài)指示器。暫停狀態(tài)指示器指出CPU是否自暫停狀態(tài)被中斷。
3.一種稱為RESUME(恢復(fù))的新指令,用于使微處理器系統(tǒng)返回到恰好在被SSI中斷之前的狀態(tài),并在下一指令處恢復(fù)執(zhí)行,或者如果CPU是在暫停狀態(tài)時(shí)被中斷,則可選擇地返回到暫停狀態(tài)。
參考圖2,示出了說明本發(fā)明SSI中斷微代碼的流圖。SSI中斷是通過確定CPU芯片外部管腳上的電信號(hào)來調(diào)用的。一旦檢出CPU芯片外部管腳上的電信號(hào)(SSI事件),CPU將SMRAM作為主存空間預(yù)定區(qū)進(jìn)行映射,見框102。通常SMRAM不是作為主存空間的一部分加以映射,從而使之不能被操作系統(tǒng)和應(yīng)用程序所訪問。此外,CPU將CPU狀態(tài)保存在SMRAM空間,見框104。在框105中將CPU切換為實(shí)址模式,如果由于已執(zhí)行暫停指令而使CPU從暫停狀態(tài)被中斷,見分支106a,則在框107對(duì)SMRAM空間的暫停指示器置位,在框108重新對(duì)CPU的程序控制寄存器初始化,并在框110開始SSI中斷服務(wù)例程的執(zhí)行。
所保存的CPU狀態(tài)包含指令指針和前指令指針。這兩個(gè)指針指向操作系統(tǒng)和(或)應(yīng)用程序的兩條指令。指令指針指向CPU下一次執(zhí)行的指令,前指令指針指向中斷前CPU執(zhí)行的指令,即如果CPU從暫停狀態(tài)被中斷,該指令為“暫?!敝噶?。
SSI中斷服務(wù)例程通常包含對(duì)裝有CPU芯片系統(tǒng)的SSI中斷的特定應(yīng)用程序唯一的指令。此外,SSI中斷服務(wù)例程還包含用于檢查SMRAM空間的暫停指示器是否置位、以判定CPU是否在暫停狀態(tài)被中斷的指令。如果暫停指示器被置位,SSI中斷服務(wù)例程還包含一執(zhí)行“恢復(fù)”指令便復(fù)位暫停指示器使CPU恢復(fù)執(zhí)行下一指令的指令。
從SSI中斷恢復(fù)可在識(shí)別到調(diào)用“Resume”指令的外部事件(RSM事件)時(shí)完成。一旦檢測(cè)到該外部事件,CPU恢復(fù)存儲(chǔ)在SMRAM區(qū)、包括指令指針和前指令指針的CPU狀態(tài),見框112、在框113檢查判斷暫停指示器是否置位。如暫停指示器被置位,徑分支113a,在框114CPU將恢復(fù)的指令指針遞減為恢復(fù)的前指令指針。如暫停指示器未被置位,分支113b,即遞減指令指針寄存器,框114,CPU轉(zhuǎn)出SMRAM這并將之作為主存空間一部分不作映象,框116;并繼續(xù)中斷操作系統(tǒng)或應(yīng)用程序的執(zhí)行,框117。因此,如果當(dāng)從系統(tǒng)中斷服務(wù)例程返回時(shí),暫停指示器保持置位,則“Halt”指令被重復(fù)執(zhí)行,從而使CPU保持為暫停狀態(tài)。然而,如果從系統(tǒng)中斷服務(wù)例程恢復(fù)時(shí)暫停指示器未置位,則執(zhí)行下一指令。
除了如上所述的保存指令和前指令指針,置位暫停指示器、檢查暫停指示器及遞減指令指針,這些增強(qiáng)措施,包括SSI中斷的專門應(yīng)用、電源管理中斷(PMI),更詳細(xì)地描述于在此全部結(jié)合作為參考的相關(guān)共同未決美國專利申請(qǐng)中。
盡管本發(fā)明的方法已經(jīng)以目前最佳形式加以說明,本領(lǐng)域技術(shù)人員還認(rèn)識(shí)到本發(fā)明方法不局限于所述的目前最佳的形式。本發(fā)明的方法可在所述權(quán)利要求書精神和范圍內(nèi)變型和修改而加以實(shí)施。因此提到的說明書及附圖是說明性的而不是限制性的。
權(quán)利要求
1.一種改進(jìn)的微處理器系統(tǒng),包括與至少一個(gè)存儲(chǔ)器耦合、用以執(zhí)行操作系統(tǒng)和至少一個(gè)包含多個(gè)所述CPU的指令的應(yīng)用程序的中央處理器(CPU),所述CPU還具備至少兩種程序執(zhí)行方式,實(shí)址方式和保護(hù)方式,用于中斷程序執(zhí)行的至少一個(gè)中斷,其特征在于所述微處理器系統(tǒng)的改進(jìn)包含有(a)所述存儲(chǔ)器用以存儲(chǔ)中斷處理程序、所述CPU的處理器狀態(tài)數(shù)據(jù)和一個(gè)暫停指示器的專用存儲(chǔ)區(qū)域,所述專用存儲(chǔ)區(qū)不作為主存空間加以映射從而保持所述專用存儲(chǔ)區(qū)不被所述操作系統(tǒng)和應(yīng)用程序所存取,所述處理器狀態(tài)數(shù)據(jù)包括分別指向所述操作系統(tǒng)和應(yīng)用程序的第一和第二指令的指令指針和前指令指針,所述第一指令為所述CPU下一次要執(zhí)行的指令,所述第二指令為中斷前所述CPU執(zhí)行的指令,所述暫停指示器指出所述CPU是否固執(zhí)行暫停指令而從暫停狀態(tài)下被中斷;所述指令包含所述暫停指令;(b)所述中斷有一個(gè)用于中斷所述操作系統(tǒng)和所述應(yīng)用程序的執(zhí)行的系統(tǒng)管理程序中斷(SSI),接入并映射所述專用存儲(chǔ)區(qū)到所述主存空間的預(yù)定段,將所述CPU的所述處理器包括所述指令和前指令指針的狀態(tài)數(shù)據(jù)存儲(chǔ)到所述專用存儲(chǔ)區(qū),將所述CPU接入所述實(shí)址執(zhí)行方式,判定所述CPU是否在所述暫停狀態(tài)被中斷,有條件地置位所述暫停指示器,以指出所述CPU是否在所述暫停狀態(tài)下被中斷,開始所述中斷處理程序的執(zhí)行,所述SSI不能被所述操作系統(tǒng)和所述應(yīng)用程序屏蔽,并具有比其它中斷較高的優(yōu)先級(jí);(c)所述指令有恢復(fù)指令,該指令用于從所述專用存儲(chǔ)區(qū)將所述保存的包括所述指令和前指令指針的處理器狀態(tài)數(shù)據(jù)加以恢復(fù)到所述CPU,檢查所述暫停指示器判定是否置位,如果所述暫停指示器置位則有條件地將所述恢復(fù)的指令指針遞減為所述恢復(fù)的前指令指針,接出并不將所述專用存儲(chǔ)區(qū)映象到所述主存空間,以及恢復(fù)所述操作系統(tǒng)和所述應(yīng)用程序的執(zhí)行;從而允許CPU可靠地被中斷,以對(duì)所述操作系統(tǒng)和所述應(yīng)用程序透明的方式向所述中斷服務(wù)程序提供自動(dòng)暫停狀態(tài)重啟動(dòng)。
2.如權(quán)利要求1所述改進(jìn)的微處處理器系統(tǒng),其特征在于所述存儲(chǔ)器包含板上隨機(jī)存儲(chǔ)器(RAM),所述專用存儲(chǔ)區(qū)是所述板上RAM的一部分。
3.如權(quán)利要求1所述改進(jìn)的微處理器系統(tǒng),其特征在于所述存信器包含與板上RAM控制器耦合的板外RAM,所述專用存儲(chǔ)區(qū)是所述板外RAM的一部分。
4.如權(quán)利要求1所述的改進(jìn)的微處理器系統(tǒng),其特征在于所述CPU包含用于觸發(fā)包括所述SSI的所述中斷的中斷裝置,所述SSI在接到電信號(hào)時(shí)被觸發(fā),所述中斷裝置包含用于接收所述電信號(hào)的接口。
5.如權(quán)利要求4所述的改進(jìn)的微處理器系統(tǒng),其特征在于所述接口為外部電路管腳。
6.如權(quán)利要求4所述的改進(jìn)的微處理器系統(tǒng),其特征在于所述微處理器系統(tǒng)還包括耦合到至少一個(gè)所述微處理器系統(tǒng)的系統(tǒng)器材及所述中斷裝置的事件檢測(cè)裝置,用于檢測(cè)和所述系統(tǒng)器材相關(guān)的預(yù)定事件,并在進(jìn)行所述檢測(cè)時(shí)產(chǎn)生所述接口電信號(hào)。
7.如權(quán)利要求1所述的改進(jìn)的微處理器系統(tǒng),其特征在于所述CPU包含用于執(zhí)行包括所述暫停指令和所述恢復(fù)指令的所述指令的指令裝置。
8.在微處理器系統(tǒng)中,該系統(tǒng)包括與至少一個(gè)存儲(chǔ)器耦合、用以執(zhí)行操作系統(tǒng)和至少一個(gè)包含多個(gè)所述CPU的指令的應(yīng)用程序的中央處理器(CPU),所述CPU還具備至少兩種程序執(zhí)行方式,實(shí)址方式和保護(hù)方式,至少一種用于中斷程序執(zhí)行的中斷,用以可靠地中斷所述CPU并以對(duì)所述操作系統(tǒng)和應(yīng)用程序透明的方式提供自動(dòng)暫停狀態(tài)重啟動(dòng)的方法包含以下步驟(a)在所述存儲(chǔ)器上專用存儲(chǔ)區(qū)域存儲(chǔ)中斷處理程序,所述專用存儲(chǔ)區(qū)不作為主存空間加以映射從而保持所述專用存儲(chǔ)區(qū)不被所述操作系統(tǒng)和應(yīng)用程序所存取,(b)當(dāng)接收到預(yù)定輸入時(shí)中斷所述操作系統(tǒng)和所述應(yīng)用程序的執(zhí)行,所述中斷是所述操作系統(tǒng)和所述應(yīng)用程序所不能屏蔽的,并具有比其它中斷高的優(yōu)先級(jí);(c)接入所述專用存儲(chǔ)區(qū)并映射到所述主存空間預(yù)定段;(d)將所述CPU的處理器狀態(tài)數(shù)據(jù)存儲(chǔ)在所述專用存儲(chǔ)區(qū),所述處理器狀態(tài)數(shù)據(jù)包括分別指向所述操作系統(tǒng)和應(yīng)用程序的第一和第二指令的指令指針和前指令指針,所述第一指令為所述CPU下一次要執(zhí)行的指令,所述第二指令為所述中斷前所述CPU執(zhí)行的指令,(e)判定所述CPU是否由于執(zhí)行暫停指令而在暫停狀態(tài)下被中斷,如果所述CPU從所述暫停狀態(tài)被中斷,置位暫停指示器,在所述專用存儲(chǔ)區(qū)存儲(chǔ)所述暫停指示器,所述指令包含所述暫停指令。(f)將所述CPU轉(zhuǎn)換為所述實(shí)址執(zhí)行方式;(g)開始所述中斷處理程序的執(zhí)行;(h)從所述專用存儲(chǔ)區(qū)將包括所述指令和前指令指針的所述保存的處理器狀態(tài)數(shù)據(jù)恢復(fù)到所述CPU,所述恢復(fù)由所述中斷服務(wù)程序控制;(i)判定所述暫停指示器是否置位,如果所述暫停指示器置位,將所述恢復(fù)的指令指針遞減為所述恢復(fù)的前指令指針;(j)接出所述專用存儲(chǔ)器區(qū)并不映射到所述主存空間,以及(k)恢復(fù)所述操作系統(tǒng)和所述應(yīng)用程序的執(zhí)行。
9.如權(quán)利要求8所述方法,其特征在于所述存儲(chǔ)器包含板上隨機(jī)存儲(chǔ)器(RAM),所述專用存儲(chǔ)區(qū)是所述板上RAM的一部分。
10.如權(quán)利要求1所述的方法,其特征在于所述存信器包含與板上RAM控制器耦合的板外RAM,所述專用存儲(chǔ)區(qū)是所述板外RAM的一部分。
11.如權(quán)利要求8所述的方法,其特征在于當(dāng)接收到電信號(hào)所述步驟(b)到(g)可通過所述CPU的中斷裝置來執(zhí)行,所述中斷裝置包含用于接收所述電信號(hào)的接口。
12.如權(quán)利要求11所述的方法,其特征在于所述接口是外部電路管腳。
13.如權(quán)利要求11所述的方法,其特征在于一旦檢測(cè)到與所述系統(tǒng)器材相關(guān)預(yù)定事件由一個(gè)事件檢測(cè)裝置產(chǎn)生所述電信號(hào)并提供給所述接口,所述事件檢測(cè)裝置與微處理器系統(tǒng)至少一個(gè)系統(tǒng)器材及所述中斷裝置相耦合。
14.如權(quán)利要求11所述方法,其特征在于所述步驟(h)到(k)由所述CPU指令裝置執(zhí)行而所述暫停裝置由所述指令裝置執(zhí)行。
全文摘要
微處理器系統(tǒng)設(shè)一專用存儲(chǔ)區(qū)用以存儲(chǔ)中斷服務(wù)例程、處理器狀態(tài)數(shù)據(jù)、指出CPU是否從暫停狀態(tài)被中斷的暫停指示器。該專用存儲(chǔ)區(qū)通常不作為主存空間部分加以映射,從保證不被操作及應(yīng)用程序所訪問。具有比所有可屏蔽、不可屏蔽中斷要高的優(yōu)先級(jí)的不可屏蔽的系統(tǒng)管理程序中斷加到CPU中斷。如中斷時(shí)CPU處于暫停狀態(tài),則由所加中斷置位暫停狀態(tài)指示器。將恢復(fù)指令加到CPU指令以將CPU恢復(fù)為中斷前狀態(tài)。如在恢復(fù)時(shí)暫停狀態(tài)指示器保持置位,則由恢復(fù)指令重新執(zhí)行暫停指令。
文檔編號(hào)G06F9/48GK1070496SQ9211019
公開日1993年3月31日 申請(qǐng)日期1992年8月28日 優(yōu)先權(quán)日1991年8月30日
發(fā)明者J·卡達(dá)希, C·阮 申請(qǐng)人:英特爾公司