TWI275945B - Optimization of SMI handling and initialization - Google Patents
Optimization of SMI handling and initialization Download PDFInfo
- Publication number
- TWI275945B TWI275945B TW093130020A TW93130020A TWI275945B TW I275945 B TWI275945 B TW I275945B TW 093130020 A TW093130020 A TW 093130020A TW 93130020 A TW93130020 A TW 93130020A TW I275945 B TWI275945 B TW I275945B
- Authority
- TW
- Taiwan
- Prior art keywords
- smi
- processor
- code
- smbase
- processing
- Prior art date
Links
- 238000005457 optimization Methods 0.000 title description 4
- 238000000034 method Methods 0.000 claims abstract description 92
- 230000002618 waking effect Effects 0.000 claims abstract description 9
- 238000012545 processing Methods 0.000 claims description 79
- 230000008569 process Effects 0.000 claims description 34
- 101100016034 Nicotiana tabacum APIC gene Proteins 0.000 claims description 3
- 238000010504 bond cleavage reaction Methods 0.000 claims 1
- 230000007017 scission Effects 0.000 claims 1
- 230000001960 triggered effect Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 10
- 230000006266 hibernation Effects 0.000 description 4
- 230000007958 sleep Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000011423 initialization method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4812—Task transfer initiation or dispatching by interrupt, e.g. masked
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Multi Processors (AREA)
Description
1275945 (1) 九、發明說明 【發明所屬之技術領域】 本發明有關電腦系統的領域,特別是關於系統管理模 式的最佳化。 【先前技術】 電腦系統在我們的社會中變得愈來愈普遍,其包含來 自如個人數位資料助理和行動電話的小型手持電子裝置的 ’如機上盒和其他消費性電子之特定應用的電子元件,和 所有的行動、桌上型電腦和伺服器系統。然而,隨著系統 在尺寸和價格上的減少,對於高效能的記憶體配置和系統 管理變得更爲重要。 傳統伺服器系統特徵爲在相同系統(多處理器系統) 中有相當數量的傳統記憶體和多個實體處理器,其中實體 處理器意指單一處理器晶粒或單一封裝。多個伺服器系統 之記憶體導致非常沒效率之記憶體空間配置及執行時間之 浪費。 通常在多處理器系統中,在開機時,每一個處理器對 於喚醒仲裁,可包含分配記憶體和重置處理器的基底位址 (SMBase )。在初始化每一個處理器的過程中,會產生 系統管理岔斷(SMI ),其對於每一個處理器由預設SMI 處理常式所處理。通常,開始處理SMI之第一處理器可 以開始初始化。初始化一般包含對於每一個處理器配置分 隔和獨特4kB對正記憶體空間,其驅使分配比所需更多之 (2) Ϊ275945 記憶體給系統管理。 再者,當系統管理岔斷(SMI )發生,不論處於開機 或一般操作,多處理器系統之每一個處理器會進行分開且 獨特的 SMI處理常式以服務/處理SMI。有兩種型式的 SMI。第一種型式爲可由系統硬體產生之非同步岔斷,諸 如當低電量。既然服務要求不需要了解另一處理器的儲存 狀態區域,非同步岔斷可由任何處理器所分開處理。第二 種型式之岔斷爲由軟體所產生之同步SMI,需由每一個處 理器來處理。一般軟體產生SMI在操作系統(0S )要處 理器進入系統管理模式(SMM)時發生。SMM爲一種不 會妨礙0S或應用程式,用來執行軟體例程/處理常式之 環境。 在現行多處理器系統中,每一個處理器進入SMM然 後逐一執行獨特SMI處理常式以檢查其暫存器來找出哪 一個處理器產生SMI。這個需要對於每一個處理器執行分 開的SMI處理常式,此會引起資源衝突問題,這也讓更 新SMI處理常式碼變得困難。 然而,這些無效的初始化和處理方法並不拘限於多處 理器伺服器系統,而存在於其他系統中,如行動多處理器 系統。超線程技術(HT )爲從加州聖克拉拉之英特爾公 司的技術,使得可使用信號實體處理器來執行平行之線程 。HT在一個實體處理器(相同晶粒)上包含兩個邏輯處 理器。邏輯處理器爲操作系統(〇 S )顯而易見之獨立處 理器,可以從系統之其他處理器執行碼及保持單一架構狀 -5- (3) (3)1275945 態。HT藉由具有分享一組執行資源之多架構狀態來達成 〇 因此’ HT讓多(邏輯)處理器系統可應用於行動平 台。如上所示,無效記憶體配置、處理器初始化及SMI 處理存在於傳統的多處理器系統,如伺服器系統。再者, 隨著多處理器系統開始滲入行動領域中,諸如記憶體之資 源被限制,使得上述沒有效率之最佳化需求變得更加重要 【發明內容及實施方式】 在以下說明中,提出如特定記憶體位址、記憶體大小 和元件組態的例子之數個特定詳述是爲了提供對本發明完 整的了解。然而對於熟習該領域之人,不需要使用這些特 定細節來實踐本發明。在其他例子中,爲了避免不必要的 混淆模糊本發明,已知元件或方法,如例行開機方塊(例 如系統開機自我偵測(POST ))、特定系統管理模式( SMM )實現、及特定系統管理岔斷處理常式碼並沒有在此 詳細地描述。 在此所描述之方法和裝置是爲了喚醒處理器時記億體 配置之最佳化及在多處理器系統處理的系統管理岔斷( SMI )之最佳化。發生喚醒處理器之方法可因任何數目之 正常操而導致。例如,當電腦開機或重置時,可喚醒有作 用/休眠處理器。再者,當系統從低電量狀態恢復,如休 眠、待命、中止、冬眠、等待SIPI、睡眠、深層睡眠、重 (4) 1275945 置、或任何其他第二處理器不會回應於岔斷之模式時,可 喚醒有作用處理器。 對於熟習此領域之人,可以淸楚了解所揭露喚醒第二 處理器之方法可應用於任何層級的電腦系統(個人數位助 理、行動平台、桌上型電腦平台、及伺服器平台),並同 樣對於任何數目之處理器。例如,四個以上處理器之多處 理器系統可使用此方法來喚醒無作用處理器及有作用處理 器。 圖1 - 3描述說明一些可實施在此所描述之方法的硬 體例子。所描述之方法可使用於任何多處理器系統;因此 ,爲了不以沒必要的細節混淆本發明,將只參考圖3來描 述此方法。 圖1說明具有多重邏輯處理器之裝置i 05的方塊圖。 實體處理器參照實體處理器晶粒或單一封裝。邏輯處理器 爲可看見作業系統(Ο S )的獨立處理器,能執行碼和自 系統內的其他處理器保持單一架構狀態。超線程技術( HT )爲來自加州聖克拉拉之英特爾公司的技術,其啓動 使用信號實體處理器的線程平行地執行。HT在實體處理 器包含兩邏輯處理器,且達成複製具有分享一組處理器執 行資源之每一架構狀態(architecture state )的架構指揮 φ ( architectural state)。 裝置105可包含第一處理器120和第二處理器125。 裝置105可爲實體處理器。裝置105亦可爲內嵌式系統或 具有至少兩處理器的其他裝置。處理器120和125可爲邏 (4) (4)1275945 置、或任何其他第二處理器不會回應於岔斷之模式時,可 喚醒有作用處理器。 對於熟習此領域之人,可以淸楚了解所揭露喚醒第二 處理器之方法可應用於任何層級的電腦系統(個人數位助 理、行動平台、桌上型電腦平台、及伺服器平台),並同 樣對於任何數目之處理器。例如,四個以上處理器之多處 理器系統可使用此方法來喚醒無作用處理器及有作用處理 器。 圖1 - 3描述說明一些可實施在此所描述之方法的硬 體例子。所描述之方法可使用於任何多處理器系統;因此 ,爲了不以沒必要的細節混淆本發明,將只參考圖3來描 述此方法。 圖1說明具有多重邏輯處理器之裝置105的方塊圖。 實體處理器參照實體處理器晶粒或單一封裝。邏輯處理器 爲可看見作業系統(OS )的獨立處理器,能執行碼和自 系統內的其他處理器保持單一架構狀態。超線程技術( HT )爲來自加州聖克拉拉之英特爾公司的技術,其啓動 使用信號實體處理器的線程平行地執行。HT在實體處理 器包含兩邏輯處理器,且達成複製具有分享一組處理器執 行資源之每一架構狀態(architecture state)的架構指揮 中心(architectural state ) 〇 裝置105可包含第一處理器120和第二處理器125。 裝置105可爲實體處理器。裝置105亦可爲內嵌式系統或 具有至少兩處理器的其他裝置。處理器120和125可爲邏 -7- (5) 1275945 輯處理器。例如,處理器1 〇 5可包含各持有單一架構狀態 的架構狀態暫存器1 3 0和1 3 5。顯然地,裝置1 05可包含 超過兩個邏輯處理器,各具有與其結合的架構狀態暫存器 ,以保持各別的架構狀態。兩處理器1 20和1 25分享相同 執行資源140、快取記億體145、匯流排150、記憶體155 〇 裝置1 05亦可包含控制器1 1 0。控制器1 1 0可以爲高 級可程式岔斷控制器(ΑΡIC )控制器。控制器1 1 0可用 於產生系統管理岔斷(SMI )。控制器1 10亦可用於在 APIC匯流排上通訊,在此並未描述,並將第一處理器 1 2 0和第二處理器1 2 5耦接在一起。 裝置1 0 5亦可包含記憶體1 5 5。記憶體可以是任何型 式可儲存資料之儲存器。例如,記憶體1 5 5可以是儲存資 訊之暫存器。記憶體1 55亦可是另一層級之快取記億體 145。記憶體155亦可是一種置於裝置105上之系統記憶 體形式。 記憶體1 5 5至少有第一記憶體位置1 60和第二記億體 位置1 6 5。第一記憶體位置1 60可含有預設系統管理處理 常式碼。第一記憶體位置1 6 0亦可爲1 k對正。第二記憶 體位置1 6 5可爲另一個非1 k對正位址。第一記憶體位置 160和第二記憶體位置165亦可爲第一處理器120和第二 處理器125之各別基底位址。第二記憶體位置165亦可在 重置第一處理器1 2 0的基底位址時,被當作暫時的儲存器 空間使用。第一和第二記憶體位置將參考圖4 - 9所描述 (6) 1275945 ;^方法來更詳細地討論。 圖2說明具有多處理器之系統的例子。系統可包含第 一處理器20 5和第二處理器210。處理器2 05和210可以 是實體處理器,其中每一個處理器在其本身之封裝內。系 統亦可包含系統匯流排2 1 5以耦接處理器2 05和2 1 0來控 制集線器220。控制集線器220亦可藉由匯流排225來耦 接至記憶體23 0。 圖3說明具有多處理器之系統的例子。處理器3 05可 包含處理器3 1 0和處理器3 1 5,其共享執行資源3 3 0、快 取記憶體3 3 5、及系統匯流排3 4 0。架構狀態暫存器3 2 0 和3 2 5持有處理器3 2 0和3 2 5各別之獨特架構狀態。系統 匯流排3 4 0將處理器3 0 5耦接至控制集線器3 4 5。控制集 線器3 4 5可藉由第二匯流排3 5 0耦接至系統記憶體。系統 記憶體可具有多個記憶體位置,如第一記憶體位置3 65和 第二記憶體位置3 70。 將使用圖3說明之系統來敘述圖4 - 9所描述之方法 。雖然藉由參考圖3來敘述有效的記憶體配置和系統管理 岔斷(SMI )處理之方法,但可淸楚知道圖!、圖2、及 其他未描述之硬體組態之硬體可應用在此所描述之方法。 圖4說明喚醒第二處理器之第一處理器的高階流程圖 。第一和第二處理器可以是位於處理器晶粒上之邏輯處理 器、如圖2所示位在不同封裝上之分開處理器、或其他多 處理器組態之處理器。當多處理器系統從低電量狀態起來 ,如休眠、待命、中止、冬眠、等待SIPI、睡眠、深層睡 -9- (7) 1275945 眠、重置、或任何其他第二處理器不會回應於岔斷之模式 時,第一處理器應該開始到有作用狀態,而第二處理器應 該開始到無作用狀態。有作用狀態可包含執行碼或回應於 岔斷。相反地,無作用狀態可包含不回應於岔斷。無作用 狀態亦可包含不執行碼。 在方塊405,接收第一系統管理岔斷(SMI )。通常 產生SMI以從處理器要求服務。一旦接收SMI,處理器 會進入系統管理模式(SMM )以藉由進行傳統記憶體之 SMI處理常式碼和例程來服務要求,除非處理器爲無作用 且不回應於岔斷。 如例子所示,可由如圖3所描述控制集線器3 4 5之控 制集線器來產生方塊40 5之第一 SMI。如另一個例子所示 ,可由如圖1控制器1 10之AP 1C,或分開位於系統(在 此未描述)之控制器來產生方塊405之第一 SMI。再如另 一個例子所示,可由改變處理器上接腳之邏輯位準來產生 方塊405之第一 SMI,如處理器3 05或如控制器3 4 5之控 制集線器。 方塊40 5之第一 SMI可以是一服務要求以初始化 S Μ Μ、對於系統管理分配位址空間、及/或重置處理器基 底位址(SMBase ) 。S Μ B a s e可以是記憶體系統管理部分 開始之位址。SMBase亦可爲參考記憶體系統管理部分之 位址。例如,S Μ B a s e之値可爲 0x3 0000。對於該部分之 記憶體的SMI處理常式可以SMBase作爲參考偏移。舉例 來說,SMI處理常式可從SMBase偏移0x8000 ( SMBase + -10- (8) (8)1275945 0x8000),在此例子中SMI處理常式即爲0x38000。 當在多處理器系統中產生 SMI時,第一處理器和第 二處理器兩者應該接收/閂鎖SMI。然而’在此時第二處 理器不可進入SMM及處理SMI,既然其處於無作用狀態 (不回應於岔斷)。相反地,在方塊410,第一處理器可 以是有作用且可處理在方塊405中接收之第一 SMI。當第 一 SMI由第一處理器接收,則第一處理器可進入系統管 理模式(SMM)以服務/處理SMI。 如圖5所示,第一處理器可藉由來處理SMI在方塊 505初始化SMM及在方塊510執行預設SMI處理常式。 預設SMI處理常式可以是位於預設記憶體位置之預設碼 ,如第一記憶體位置3 6 5。第一記憶體位置可爲1 k、4k、 或任何其他對正記憶體範圍。 回到圖4,在方塊415由第一處理器產生喚醒信號。 在方塊4 1 5之喚醒信號可以是任何傳送來將第二處理器從 無作用狀態喚醒之信號。既然第二處理器可能不回應於岔 斷或在無作用狀態執行碼,則喚醒信號可以是匯流排信號 ,該第二處理器在無作用狀態等待開始喚醒過程。在一實 施例中,喚醒信號可以是在匯流排(在此未描述)上傳送 之開始內部處理器岔斷(SIPI )信息,如耦接第一和第二 處理器之APIC匯流排。 如圖5所述在方塊5 1 5,喚醒信號可以是根據預設 SMI處理常式之記憶體位置之向量。喚醒信號可以是記憶 體中之任何位址或記憶體中之任何參考位址位置。在一實 -11 - (9) (9)1275945 施例中,預設SMI處理常式位於第一記憶體位置3 6 5,其 中喚醒信號爲根據第一記億體位置3 6 5之向量。在另一實 施例中,喚醒信號根據第一記憶體位置3 6 5,其爲1 k、4k 、或其他對正記憶體位址範圍。第二處理器可要求對正喚 醒信號並在傳統系統記憶體中。再另一實施例中,第一記 憶體位置3 65可爲第二處理器3 1 5開始執行之位址位置。 再回到圖4,方塊420顯示正喚醒第二處理器。方塊 420可包含喚醒第二處理器以允許其處理在方塊405接收 之第一 SMI,或進行基本喚醒例程,諸如開機自我偵測( POST)。 在下一個方塊,方塊425,在方塊405接收之第一 SMI由第二處理器所處理。雖然,第二處理器可能在第一 SMI於方塊405被接收時爲無作用,也因此無法在當時服 務SMI ;但第二處理器仍可在無作用狀態下閂鎖SMI。一 旦甦醒,則第二處理器可處理事先被閂鎖之第一 SMI。 移到圖5來看,方塊520和525說明用第二處理器處 理第一 SMI之一實施例。在方塊5 20,第二處理器開始 SMM。另外,在方塊5 25第二處理器之指令指標可被修補 至第二記憶體位址,如圖3之第二記憶體位址3 70。第二 記憶體位址3 70可以是非對正位址,而不再拘限於傳統記 憶體。一旦第二處理器將指令指標修補至第二記憶體位址 3 7 0,將不再需要分配傳統對正記憶體以執行開始碼。在 完成初始化及重新開始之後,如方塊5 3 0所示,第二處理 器可重新開始修補指向第二記憶體位址3 7 0之指令指標, -12- (10) (10)1275945 並開始執彳了其開始碼。 參考圖6 ’描述一種不論開機或正常操作下處理及 SMI之方法,其中SMi可使用相同SMi處理常式在多處 理器上處理。在方塊6 0 5,接收S ΜI。S ΜI可以是硬體( 非同步)’諸如低電量,或軟體,諸如要求處理器改變頻 率或功率位準之OS。通常,硬體SMI可在不了解其他處 理器的儲存狀態區域下由任一處理器處理。軟體SMI卻 相反’在SMI產生時,通常需依賴處理器之架構狀態, 因此會要求進入產生SMI之處理器的儲存狀態區域。因 此’軟體產生SMI可能會要求所有多處理器系統中之處 理器進入S Μ Μ並執行處理常式。 在方塊610,第一處理器執行SMI碼(SMI處理常式 )以處理第一處理器之SMI。處理SMI可包含執行SMI 碼以決定是否現行處理器的儲存狀態區域被檢查產生SMI 。處理SMI亦可包含服務SMI要求。 如上所述,參考圖4,第一處理器可具有第一 SMBase位址。SMI碼(SMI處理常式)可位於從第一 SMBase位址之預設偏移。而且,SMI碼可參考目標 SMBase位址。目標SMBase可以是SMI碼對準存取處理 器的系統管理區域之位址(在記憶體之範圍)。 如例子所示,目標SMBase可藉由預設來設定以參考 第一 SMBase位址,其爲第一處理器的系統管理區域之開 始位址。因此,當接收SMI及執行SMI處理常式碼,SMI 處理常式碼可藉由參考目標SMBase來存取包含第一處理 -13- (11) (11)1275945 器的儲存狀態區域之第一處理器系統管理區域。 在方塊610執行SMI碼以處理第一處理器之SMI之 後,如方塊6 1 5所示,可執行相同的S ΜI碼/處理常式 以處理第二處理器之SMI。圖7爲方塊615之說明實施例 ,並以流程圖來描述執行SMI處理常式以處理第二處理 器之SMI。在方塊705,SMI處理常式之目標SMBase位 址從第一處理器之第一 SMBase位址改變爲第二處理器之 第二SMBase位址。 延續上述之例子,在以目標SMBase對準第一 SMBase來執行SMI處理常式碼之後,目標SMBase可改 爲對準第二SMBase位址。第二SMBase位址可以是第二 處理器的系統管理區域(記憶體空間)之開始位址。因此 ,如方塊710所示,當使用第二處理器的SMBase作爲目 標SMBase來執行SMI處理常式時,相同SMI碼/處理 常式可以藉由參考第二處理器的SMBase位址來處理第二 處理器之SMI。 圖8描述假若所處理之SMI爲軟體產生,另一個執 行多處理器之相同SMI處理常式碼之說明實施例。如上 所述,硬體S MI可在不影響其他處理器下藉由任何處理 器來處理。因此,在方塊8 05,第一處理器執行SMI碼。 在方塊810,第一處理器或第二處理器均可檢查是否SMI 爲軟體產生。可淸楚了解任一處理器均可在任何暫時次序 下檢查是否處理之SMI爲軟體產生。例如,第一處理器 可在方塊8 0 5之前檢查是否SMI爲軟體產生,然後在方 -14- (12) (12)1275945 塊8 0 5執行SMI處理常式碼。如另一個例子所示,第二 處理器可檢查是否軟體產生SMI在方塊805之後存在。 假若軟體SMI不存在,則第一處理器將在方塊815離開 SMM並回到正常操作。 然而,假若SMI爲軟體產生,則第二處理器應該同 樣地處理SMI。在方塊820,第二處理器可執行與第一處 理器在方塊805所執行相同之SMI碼。 圖9以流程圖來描述執行相同SMI碼之例子。很像 圖6和7,位於第一記憶體位置3 6 5之第一處理器的 SMBase,可爲目標SMBase位址。在用第一處理器執行 SMI碼來處理第一處理器之SMI之後,目標SMBase可在 方塊9 0 5改變爲對準第二處理器的SMBase位址。在方塊 910,使用第二處理器的SMBase作爲目標SMBase來執行 SMI碼。此外,如方塊 915所示,可重新儲存目標 SMBase以$^[準第一處理器的SMBase位址。 可淸楚知道第一和第二處理器之任何組合均可執行 SMI碼。例如,第一處理器可執行第一處理器之SMI碼 。然後,在目標SMBase改變爲第二處理器的SMBase之 後,第一處理器可再次執行SMI碼以處理第二處理器之 SMI。如另一個例子所示,第二處理器可執行SMl碼兩次 。再另一個例子中,第一處理器可在第一次執行SMI碼 時執行SMI碼以處理第一處理器之SMI,而第二處理器 可在第二次執行SMI碼以處理第二處理器之SMI。
因此’不像現行之系統,這些最佳化可只用一個SMI (13) (13)1275945 來喚醒並開始執行第二處理器。再者,不像傳統方法,在 不同預設記憶體位址開始各處理器,記憶體可藉由傳送可 在第一記憶體位址開始第二處理器之喚醒信號來儲存,其 可爲預設SMI處理常式之位置。此外,藉由在第二處理 器處理第一 .SMI時修補指令指標,使得第二處理器可在 非對正之第二記憶體位址重新開始。允許第二處理器在第 二記憶體位址重新開始可節省各處理器之分開對正記憶體 空間之配置。 此外,可先藉由第一處理器再由第二處理器執行相同 處理常式碼來用相同的處理常式處理SMI。藉由檢查是否 所處理之 SMI爲軟體產生且在SMI非軟體產生下離開 SMM,可節省相當的執行時間。再者,既然軟體SMI處 理常式所需之所有改變可在不要求對軟體SMI處理常式 例程作修改下輕易地含在包裝碼中,讓此成就允許更容易 之平台開發。 本發明得由熟悉技藝之人任施匠思而爲諸般修飾,然 皆不脫如申請專利範圍所欲保護者。 【圖式簡單說明】 圖1說明具有分享執行資源、快取記億體和記憶體之 多重處理器之裝置的方塊圖。 圖2說明具有多重處理器之系統的方塊圖。 圖3說明具有含多重邏輯處理器之實體處理器之系統 的方塊圖。 -16- (14) (14)1275945 圖4說明喚醒第二處理器之第一處理器的流程圖。 圖5描述用於喚醒具有第一處理器之第二處理器之說 明實施例的流程圖。 圖6說明處理在具有相同SMI處理常式之第一和第 二處理器上之SMI的流程圖。 圖7描述用於處理在具有SMI處理常式之第一和第 二處理器上的SMI之說明實施例的流程圖。 圖8說明假如產生的SMI爲軟體SMI,則在第一和 第二處理器上執行相同系統管理岔斷碼的流程圖。 圖9描述假如被處理的SMI爲產生的軟體,則執行 相同SMI處理常式之第一和第二處理器之說明實施例的 流程圖。 【主要元件符號說明】 105 :裝置 1 1 〇 :控制器 120 :第一處理器 125 :第二處理器 1 3 0 :架構狀態暫存器 1 3 5 :架構狀態暫存器 140 :執行資源 145 :快取記憶體 1 5 0 :匯流排 1 5 5 :記憶體 -17- (15) (15)1275945 160 :第一記憶體位置 165 :第二記憶體位置 205 :第一處理器 2 1 0 :第二處理器 2 1 5 :系統匯流排 220 :控制集線器 225 :匯流排 23 0 :記憶體 3 0 5 :處理器 3 1 0 :處理器 3 1 5 :處理器 3 20 :架構狀態暫存器 3 25 :架構狀態暫存器 3 3 0 :執行資源 3 3 5 :快取記憶體 3 4 0 :系統匯流排 3 45 :控制集線器 3 5 0 :第二匯流排 3 5 5 :記憶體 3 65 :第一記憶體位置 3 70 :第二記億體位置
Claims (1)
1275945 9^10.?^ r,rΛ,, ^v,,-:·! 十 ….....——.…—.:r’. . . . . 十、申請專利範圍 附件2 ·· 第93 1 30020號專利申請案 中文申請專利範圍替換本 民國95年10月26日修正 K 一種系統管理岔斷(SMI )處理和初始化之最佳 化的方法,包括: 接收第一 S ΜI ; 用第一處理器處理第一 SMI ; 用第一處理器產生喚醒信號; 根據來自第一處理器的喚醒信號喚醒第二處理器;以 及 用第二處理器處理第一SMI。 2 ·如申請專利範圍第1項之方法,其中第一和第二 處理益爲邏輯處理器。 3 ·如申請專利範圍第1項之方法,其中第一和第二 處理器爲實體處理器。 4 ·如申§靑專利範圍第1項之方法,其中用第一處理 器處理第一 S M1包括:執行位於第〜記憶體位址的預設 SMI處理常式。 5 ·如申5P9專利軸圍第4項之方法,其中喚醒信號包 括根據第一記憶體位址的向量。 6 ·如申請專利範圍第5項之方法,其中第一記憶體 位址被對正。 7 ·如申請專利範圍第6項之方法,其中第一記憶體 95. 10:2^ 1275945 位址被4k對正。 8 ·如申請專利範圍第5項之方法,其中用第二處理 器處理第一 SMI包括執行位在第一記憶體位址的預設 SMI處理常式。 9. 如申請專利範圍第8項之方法,其中用第二處理 器處理第一 SMI進一步包括將指令指標修補至第二記憶 體位址。 10. 如申請專利範圍第9項之方法,其中第二記憶體 位址爲非對正位址。 1 1 ·如申請專利範圍第1 〇項之方法,進一步包括: 在第二處理器處理第一 SMI後執行在第二記憶體位址的 碼。 12. —種SMI處理和初始化之最佳化的方法,包括 接收第一系統管理岔斷(SMI ); 回應第一 SMI用第一處理器執行在第一記憶體位址 的碼; 用第一處理器產生喚醒信號; 根據來自第一處理器的喚醒信號喚醒第二處理器;以 及 用第二處理器執行在第一記憶體位址的碼。 1 3 ·如申請專利範圍第1 2項之方法,其中喚醒信號 爲根據弟一記憶體位址。 14·如申請專利範圍第13項之方法,其中第一記憶 -2- 1275945 --*— 年月日修(秦^正替換頁 *^"*^*^*1 Γ"*-ΤΐΐΐΊ<|^~ I -1|- I I » .»·· %· 體位址爲預設SMI處理碼的位置。 1 5 ·如申請專利範圍第1 4項之方法,其中第一記憶 體位址位於傳統記憶體。 1 6·如申請專利範圍第1 5項之方法,其中第一記憶 體位址爲對正。 17·如申請專利範圔第12項之方法,其中第一和第 二處理器皆爲位於相同晶粒的邏輯處理器。 1 8 ·如申請專利範圍第1 2項之方法,其中第一和第 二處理器爲位於不同封裝的實體處理器。 1 9 ·如申§靑專利軔圍第1 2項之方法,進一步包括: 對於第二處理器將指令指標修補至第二記憶體位址。 2 0.如申請專利軔圍第1 9項之方法,其中第二記憶 體位址爲非對正位址。 2 1.如申i靑專利軺圍第2 0項之方法,進一步包括: 將指令指標修補至第二記憶體位址後執行在第二記憶 體位址的碼。 2 2·如申請專利範圍第1 2項之方法,進一步包括在 用第一和第二處理器接收SMI前產生SMI。 23·如申請專利範圍第22項之方法,其中產生SMI 包括改變耦接至控制集線器之接腳的邏輯位準。 24·如申請專利範圍第22項之方法,其中APIC用 於產生SMI。 25.如申請專利範圍第24項之方法,其中AP 1C位 於第一處理器。 -3- 1275945
月R修 ..替換頁丨 2 6.—種S ΜI處理和初始化之最佳化的方法,包括 接收系統管理岔斷; 執行S ΜI處理常式以用第一處理器處理s ΜI ;以及 執行SMI處理常式以用第二處理器處理SMI。 27·如申請專利範圍第26項之方法,其中SMI爲產 生SMI的軟體。 28. 如申請專利範圍第27項之方法,其中第一處理 器執行SMI處理常式以處理第一和第二處理器的SMI。 29. 如申請專利範圍第26項之方法,其中SMI處理 常式位於第一記憶體位址。 3 0·如申請專利範圍第29項之方法,其中第一記憶 體位址從第一處理器的第一系統管理基底(SMBase )位 址爲預設偏移。 3 1 .如申請專利範圍第3 0項之方法,其中用第一 SMI處理常式處理第二SMI包括: 對於第二處理器將SMI處理常式的目標SMBase從第 一 SMBase改變爲第二SMBase;以及 執行使用第二處理器之SMBase作爲目標SMBase的 第一 SMI處理常式。 32. 一種SMI處理和初始化之最佳化的方法,包括 用第一處理器執行系統管理岔斷(SMI )碼以用第一 處理器處理SMI ; 1275945
檢查是否SMI爲產生SMI的軟體;以及 假如SMI爲產生的軟體,則執行SMI碼以處理第二 處理器的SMI。 33. 如申請專利範圍第32項之方法,其中假如SMI 爲產生的軟體,則第一處理器執行SMI碼以處理第二處 理器的S ΜI。 34. 如申請專利範圍第32項之方法,其中假如SMI 爲產生的軟體,則第二處理器執行SMI碼以處理第二處 理器的SMI。 3 5 ·如申請專利範圍第3 2項之方法,其中第一處理 器具有第一系統管理基底(SMBase)位址。 3 6.如申請專利範圍第33項之方法,其中第二處理 器具有第二SMBase位址。 37.如申請專利範圍第36項之方法,其中SMI碼位 於第一記憶體位置,從第一 SM基底位址具有偏移。 3 8.如申請專利範圍第37項之方法,其中執行SMI 碼以處理第二處理器的SMI包括: 將SMI處理常式的目標SMBase從第一 SMBase改變 爲第二SMBase ;以及 執行使用第二處理器的SMBase作爲目標SMBase的 S MI 碼。 3 9.如申請專利範圍第3 8項之方法,進一步包括在 執行SMI碼以處理第二處理器的SMI後,將SMI處理常 式的目標SMBase回傳至第一 SMBase。
1275945 40· —種SMI處理和初始化之最佳化的裝置,包括 產生第一系統管理岔斷(S ΜI )的控制器; 第一邏輯處理器,耦接至控制器,以產生第一 SMI 來處理第一 SMI並產生喚醒信號;以及 第二邏輯處理器,耦接至控制器,在從第一邏輯處理 器接收喚醒信號後處理第一 S ΜΙ。 41·如申請專利範圍第40項之裝置,其中用第一邏 輯處理器處理第一 SMI,第一邏輯處理器在第一記憶體位 置執行碼。 42·如申請專利範圍第41項之裝置,其中第一記憶 體位址爲1 k對正。 4 3.如申請專利範圍第41項之裝置,其中用第二邏 輯處理器處理第一 SMI進一步包括在第一記憶體位置執 行碼。 44·如申請專利範圍第43項之裝置,其中用第二邏 輯處理器處理第一 SMI進一步包括將指令指標修補至第 二記憶體位址。 45· —種SMI處理和初始化之最佳化的系統,包括 產生第一系統管理岔斷(SMI )的控制集線器; 具含有碼的第一記憶體位址之記憶體; 第一處理器耦接至控制集線器以處理第一 SMI,其中 第一處理器執行在第一記憶體位址的碼並產生喚醒信號; • 6 - 1275945
以及 第二處理器耦接至控制集線器,在接收喚醒信號後處 理第一 SMI,其中第二處理器執行在第一記憶體位址的碼 〇 4 6·如申請專利範圍第4 5項之系統,其中第一和第 二處理器爲在相同晶粒上的邏輯處理器。 47.如申請專利範圍第45項之系統,其中第一和第 二處理器爲位於不同封裝上的實體處理器。 48·如申請專利範圍第45項之系統,其中接腳在控 制集線器上觸發以產生第一 SMI。 4 9·如申請專利範圍第45項之系統,其中碼在控制 集線器執行以產生第一 SMI。 5 0 .如申請專利範圍第4 5項之系統,其中在第一記 憶體位址的碼爲SMI處理碼。 5 1 .如申請專利範圍第5 0項之系統,其中喚醒信號 爲含有第一記憶體位址的向量。 5 2.如申請專利範圍第5 1項之系統,其中在接收喚 醒信號後用第二處理器處理第一 SMI進一步包括將指標 設定至第二記憶體位址。 5 3 .如申請專利範圍第5 2項之系統,其中第二處理 器在重新開始處理SMI後,執行在第二記億體位址的碼 54. 一種SMI處理和初始化之最佳化的系統,包括
1275945 具有第一記憶體位址的記憶體具有系統管理岔斷( SMI )碼; 第一處理器,當SMI被接收時執行SMI碼;以及 第二處理器,假如SMI爲產生的軟體則執行SMI碼 〇 55·如申請專利範圍第54項之系統,其中第一處理 器具有第一系統管理基底(SMBase)位址。 56·如申請專利範圍第55項之系統,其中第二處理 器具有第二SMBase位址。 5 7·如申請專利範圍第5 6項之系統,其中第一記憶 體位址具有來自第一 SMBase的偏移。 5 8 .如申請專利範圍第5 7項之系統,其中預設的目 標 SMBase 爲第 一 SMBase。 59·如申請專利範圍第58項之系統,其中目標 SMBase在第二處理器執行SMI碼前改改變爲第二 SMBase。 60·如申請專利範圍第54項之系統,其中第一和第 二處理器爲邏輯處理器。 6 1 ·如申請專利範圍第54項之系統,其中第一和第 二處理器爲實體處理器。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/681,446 US7493435B2 (en) | 2003-10-06 | 2003-10-06 | Optimization of SMI handling and initialization |
Publications (2)
Publication Number | Publication Date |
---|---|
TW200525365A TW200525365A (en) | 2005-08-01 |
TWI275945B true TWI275945B (en) | 2007-03-11 |
Family
ID=34465445
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW093130020A TWI275945B (en) | 2003-10-06 | 2004-10-04 | Optimization of SMI handling and initialization |
Country Status (7)
Country | Link |
---|---|
US (1) | US7493435B2 (zh) |
CN (1) | CN1890634B (zh) |
DE (1) | DE112004001887B4 (zh) |
GB (1) | GB2422230B (zh) |
HK (1) | HK1086097A1 (zh) |
TW (1) | TWI275945B (zh) |
WO (1) | WO2005038652A1 (zh) |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7533097B2 (en) * | 2004-06-29 | 2009-05-12 | International Business Machines Corporation | Dynamic user interface creation based on user responsibilities and company policies |
JP4447977B2 (ja) | 2004-06-30 | 2010-04-07 | 富士通マイクロエレクトロニクス株式会社 | セキュアプロセッサ、およびセキュアプロセッサ用プログラム。 |
CN100474214C (zh) * | 2004-08-05 | 2009-04-01 | 松下电器产业株式会社 | 信息处理装置 |
US7810083B2 (en) * | 2004-12-30 | 2010-10-05 | Intel Corporation | Mechanism to emulate user-level multithreading on an OS-sequestered sequencer |
US7797555B2 (en) * | 2006-05-12 | 2010-09-14 | Intel Corporation | Method and apparatus for managing power from a sequestered partition of a processing system |
US7647509B2 (en) * | 2006-05-12 | 2010-01-12 | Intel Corporation | Method and apparatus for managing power in a processing system with multiple partitions |
US7464211B2 (en) * | 2006-09-14 | 2008-12-09 | International Business Machines Corporation | Method of detecting and recovering a lost system management interrupt (SMI) in a multiprocessor (MP) environment |
US20090037932A1 (en) * | 2007-08-01 | 2009-02-05 | Clark Michael T | Mechanism for broadcasting system management interrupts to other processors in a computer system |
US7613861B2 (en) * | 2007-08-14 | 2009-11-03 | Dell Products, Lp | System and method of obtaining error data within an information handling system |
KR100932920B1 (ko) * | 2007-12-17 | 2009-12-21 | 한국전자통신연구원 | 센서노드의 웨이크업 장치 및 방법 |
US20090172232A1 (en) * | 2007-12-28 | 2009-07-02 | Zimmer Vincent J | Method and system for handling a management interrupt event |
US7802042B2 (en) * | 2007-12-28 | 2010-09-21 | Intel Corporation | Method and system for handling a management interrupt event in a multi-processor computing device |
US7725637B2 (en) * | 2007-12-31 | 2010-05-25 | Intel Corporation | Methods and apparatus for generating system management interrupts |
US7797473B2 (en) * | 2008-06-05 | 2010-09-14 | Dell Products, Lp | System for executing system management interrupts and methods thereof |
US8024504B2 (en) * | 2008-06-26 | 2011-09-20 | Microsoft Corporation | Processor interrupt determination |
US20090327556A1 (en) * | 2008-06-27 | 2009-12-31 | Microsoft Corporation | Processor Interrupt Selection |
WO2012106954A1 (zh) * | 2011-08-31 | 2012-08-16 | 华为技术有限公司 | 多处理器的基本输入输出系统存储器刷写方法、及装置 |
WO2013057769A1 (ja) * | 2011-10-20 | 2013-04-25 | 富士通株式会社 | 情報処理装置、情報処理装置の制御方法および制御プログラム |
US9208113B2 (en) | 2013-01-15 | 2015-12-08 | Apple Inc. | Deferred inter-processor interrupts |
US11086658B2 (en) * | 2013-11-20 | 2021-08-10 | Insyde Software Corp. | System performance enhancement with SMI on multi-core systems |
US9529410B2 (en) * | 2014-07-14 | 2016-12-27 | American Megatrends, Inc. | Service processor (SP) initiated data transaction with BIOS utilizing power off commands |
US9529750B2 (en) * | 2014-07-14 | 2016-12-27 | American Megatrends, Inc. | Service processor (SP) initiated data transaction with bios utilizing interrupt |
CN111133414A (zh) * | 2017-12-25 | 2020-05-08 | 英特尔公司 | 存储器初始化前多线程并行计算平台 |
US11481206B2 (en) * | 2019-05-16 | 2022-10-25 | Microsoft Technology Licensing, Llc | Code update in system management mode |
Family Cites Families (41)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04346127A (ja) * | 1991-05-23 | 1992-12-02 | Sony Corp | 電子装置 |
US5530891A (en) * | 1994-05-31 | 1996-06-25 | Advanced Micro Devices | System management interrupt mechanism within a symmetrical multiprocessing system |
US5627962A (en) | 1994-12-30 | 1997-05-06 | Compaq Computer Corporation | Circuit for reassigning the power-on processor in a multiprocessing system |
US5613071A (en) * | 1995-07-14 | 1997-03-18 | Intel Corporation | Method and apparatus for providing remote memory access in a distributed memory multiprocessor system |
US5768585A (en) * | 1995-11-21 | 1998-06-16 | Intel Corporation | System and method for synchronizing multiple processors during power-on self testing |
US5761516A (en) | 1996-05-03 | 1998-06-02 | Lsi Logic Corporation | Single chip multiprocessor architecture with internal task switching synchronization bus |
US5842026A (en) | 1996-07-01 | 1998-11-24 | Sun Microsystems, Inc. | Interrupt transfer management process and system for a multi-processor environment |
US5860002A (en) | 1996-07-12 | 1999-01-12 | Digital Equipment Corporation | System for assigning boot strap processor in symmetric multiprocessor computer with watchdog reassignment |
US5996058A (en) | 1996-08-19 | 1999-11-30 | Samsung Electronics Company, Ltd. | System and method for handling software interrupts with argument passing |
US6116767A (en) * | 1997-04-30 | 2000-09-12 | Compaq Computer Corporation | Displaying audio disk track number in portable computer system |
US5978903A (en) * | 1997-08-19 | 1999-11-02 | Advanced Micro Devices, Inc. | Apparatus and method for automatically accessing a dynamic RAM for system management interrupt handling |
US5938765A (en) * | 1997-08-29 | 1999-08-17 | Sequent Computer Systems, Inc. | System and method for initializing a multinode multiprocessor computer system |
JP3943665B2 (ja) * | 1997-09-01 | 2007-07-11 | 株式会社東芝 | スリープ制御方法、およびイベント通知方法 |
US6308278B1 (en) * | 1997-12-29 | 2001-10-23 | Intel Corporation | Supplying standby voltage to memory and wakeup circuitry to wake a computer from a low power mode |
US6065121A (en) * | 1998-03-31 | 2000-05-16 | Compaq Computer Corporation | Control of computer system wake/sleep transitions |
US6192442B1 (en) * | 1998-04-29 | 2001-02-20 | Intel Corporation | Interrupt controller |
US6158000A (en) * | 1998-09-18 | 2000-12-05 | Compaq Computer Corporation | Shared memory initialization method for system having multiple processor capability |
US6272618B1 (en) * | 1999-03-25 | 2001-08-07 | Dell Usa, L.P. | System and method for handling interrupts in a multi-processor computer |
US6282601B1 (en) * | 1999-03-31 | 2001-08-28 | International Business Machines Corporation | Multiprocessor data processing system and method of interrupt handling that facilitate identification of a processor requesting a system management interrupt |
US6374338B1 (en) * | 1999-06-25 | 2002-04-16 | International Business Machines Corporation | Method for performing configuration tasks prior to and including memory configuration within a processor-based system |
US6584573B1 (en) * | 1999-08-30 | 2003-06-24 | Intel Corporation | Placing a computer system into a sleeping state |
US6571333B1 (en) * | 1999-11-05 | 2003-05-27 | Intel Corporation | Initializing a memory controller by executing software in second memory to wakeup a system |
US6968412B1 (en) * | 1999-12-30 | 2005-11-22 | Intel Corporation | Method and apparatus for interrupt controller data re-direction |
US6611911B1 (en) * | 1999-12-30 | 2003-08-26 | Intel Corporation | Bootstrap processor election mechanism on multiple cluster bus system |
US20020099893A1 (en) * | 2001-01-24 | 2002-07-25 | Nguyen Tuyet-Huong Thi | System and method for the handling of system management interrupts in a multiprocessor computer system |
US6925556B2 (en) * | 2001-02-14 | 2005-08-02 | Intel Corporation | Method and system to determine the bootstrap processor from a plurality of operable processors |
US6968410B2 (en) * | 2001-02-28 | 2005-11-22 | Intel Corporation | Multi-threaded processing of system management interrupts |
US6836849B2 (en) * | 2001-04-05 | 2004-12-28 | International Business Machines Corporation | Method and apparatus for controlling power and performance in a multiprocessing system according to customer level operational requirements |
US6842857B2 (en) * | 2001-04-12 | 2005-01-11 | International Business Machines Corporation | Method and apparatus to concurrently boot multiple processors in a non-uniform-memory-access machine |
TW498213B (en) * | 2001-04-18 | 2002-08-11 | Via Tech Inc | Method and chipset for supporting interrupts of system management mode in multiple-CPU system |
TW515959B (en) * | 2001-05-10 | 2003-01-01 | Via Tech Inc | Method for memory data access by system management interrupt and computer system thereof |
US6848046B2 (en) * | 2001-05-11 | 2005-01-25 | Intel Corporation | SMM loader and execution mechanism for component software for multiple architectures |
US20030009654A1 (en) * | 2001-06-29 | 2003-01-09 | Nalawadi Rajeev K. | Computer system having a single processor equipped to serve as multiple logical processors for pre-boot software to execute pre-boot tasks in parallel |
US6615329B2 (en) * | 2001-07-11 | 2003-09-02 | Intel Corporation | Memory access control system, apparatus, and method |
US6775728B2 (en) * | 2001-11-15 | 2004-08-10 | Intel Corporation | Method and system for concurrent handler execution in an SMI and PMI-based dispatch-execution framework |
GB0212143D0 (en) * | 2002-05-27 | 2002-07-03 | Sendo Int Ltd | Processor Monitor |
GB0212260D0 (en) | 2002-05-28 | 2002-07-10 | Sendo Int Ltd | System wakeup |
US7146515B2 (en) * | 2002-06-20 | 2006-12-05 | International Business Machines Corporation | System and method for selectively executing a reboot request after a reset to power on state for a particular partition in a logically partitioned system |
US7043729B2 (en) * | 2002-08-08 | 2006-05-09 | Phoenix Technologies Ltd. | Reducing interrupt latency while polling |
US7698689B2 (en) * | 2002-08-13 | 2010-04-13 | Phoenix Technologies Ltd. | Method for meeting SMI duration limits by time slicing SMI handlers |
US7152169B2 (en) * | 2002-11-29 | 2006-12-19 | Intel Corporation | Method for providing power management on multi-threaded processor by using SMM mode to place a physical processor into lower power state |
-
2003
- 2003-10-06 US US10/681,446 patent/US7493435B2/en not_active Expired - Lifetime
-
2004
- 2004-09-30 DE DE112004001887T patent/DE112004001887B4/de not_active Expired - Fee Related
- 2004-09-30 GB GB0606958A patent/GB2422230B/en not_active Expired - Fee Related
- 2004-09-30 CN CN2004800362933A patent/CN1890634B/zh not_active Expired - Fee Related
- 2004-09-30 WO PCT/US2004/032469 patent/WO2005038652A1/en active Application Filing
- 2004-10-04 TW TW093130020A patent/TWI275945B/zh not_active IP Right Cessation
-
2006
- 2006-07-25 HK HK06108245A patent/HK1086097A1/xx not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
GB0606958D0 (en) | 2006-05-17 |
DE112004001887B4 (de) | 2011-06-22 |
HK1086097A1 (en) | 2006-09-08 |
US20050086547A1 (en) | 2005-04-21 |
DE112004001887T5 (de) | 2006-09-14 |
GB2422230A (en) | 2006-07-19 |
GB2422230B (en) | 2007-07-11 |
TW200525365A (en) | 2005-08-01 |
WO2005038652A1 (en) | 2005-04-28 |
CN1890634B (zh) | 2011-03-16 |
CN1890634A (zh) | 2007-01-03 |
US7493435B2 (en) | 2009-02-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI275945B (en) | Optimization of SMI handling and initialization | |
TWI283370B (en) | System controlling method, microprocessor, information storage apparatus, and controlling system | |
US10248568B2 (en) | Efficient data transfer between a processor core and an accelerator | |
KR101516109B1 (ko) | 프로세서의 언코어 회로의 전력 소비 감소 | |
JP3136257B2 (ja) | コンピュータメモリインタフェース装置 | |
JP2002517034A (ja) | エミュレーションコプロセッサ | |
TWI454905B (zh) | 在多核心平台中之受限制的啓動技術 | |
JP2007035058A (ja) | コンピュータシステム中の複数のエージェントをコンフィギュレーションする方法及びそのための装置 | |
JP2015079542A (ja) | 割り込み分配スキーム | |
US8364862B2 (en) | Delegating a poll operation to another device | |
EP3588288B1 (en) | A multithreaded processor core with hardware-assisted task scheduling | |
KR20120061938A (ko) | 시스템 관리 모드의 프로세서에 상태 스토리지를 제공하기 위한 장치, 방법 및 시스템 | |
CN116049053A (zh) | 向用户级应用传递中断 | |
US20180349288A1 (en) | Input/output translation lookaside buffer prefetching | |
US10474596B2 (en) | Providing dedicated resources for a system management mode of a processor | |
CN112306652A (zh) | 带有上下文提示的功能的唤醒和调度 | |
TWI259979B (en) | Method and apparatus for processing hot key input using operating system visible interrupt handling | |
TWI502361B (zh) | 加速信息發信中斷處理的處理器、方法及系統 | |
US20070234098A1 (en) | Self-timed clock-controlled wait states | |
JP2003085153A (ja) | 制御レジスタ及びプロセッサ | |
JP2006040224A (ja) | マルチプロセッサシステム及びプロセッサの制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |