TWI223771B - Mechanism for interrupt handling in computer systems that support concurrent execution of multiple threads - Google Patents
Mechanism for interrupt handling in computer systems that support concurrent execution of multiple threads Download PDFInfo
- Publication number
- TWI223771B TWI223771B TW091118296A TW91118296A TWI223771B TW I223771 B TWI223771 B TW I223771B TW 091118296 A TW091118296 A TW 091118296A TW 91118296 A TW91118296 A TW 91118296A TW I223771 B TWI223771 B TW I223771B
- Authority
- TW
- Taiwan
- Prior art keywords
- interrupt
- processor
- value
- execution
- logical
- Prior art date
Links
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
-
- 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
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Bus Control (AREA)
Description
1223771 五、發明説明() 發明背景 兹術藏_ 本發明係有關於電腦系統,且 電腦系統處理的中街 。,係用以處理 _…夕重,線程的同時執行。 數據機高效率廬搜突 重指令在每個時脈週期上執行多 以f助指令的平行的執行資源, 平行執行指令的有用性的限制有會咖 稱為指令位準平行(ILP)。指令相關性會二;—有= 程的1。爾。如果每次只有-執行線程可被吏:丁; 令輸貫量便亦會減少。 被處理,扣 0增:指令輸貫量的一方式是要設計可同時執行來自兩或 户個指令指令線程的處理器。既然來自不同線程的指冬是 不相關’所以兩或多個指令線程的執行可增如指令輸貫 量。 、 各種設計的實施可支援在單一處理器包裝中的多重線程 的同時執行。例如,多重核心處理器包括在單一處理器晶 片上的多重執行核心。雖然各種不同資源可共用,以節省 晶粒區域或允許在執行線程之中的一些通訊,但是每個執 行核心是配置給一不同指令線程。多重處理器晶片亦合併 在多重晶片模組,以便將單一介面提供給系統的其餘部 分° 多重線程處理器包括資源,以管理在單一執行核心上的 -4- 本纸張尺度適用中國國家標準(CNS) A4規格(210X297公釐) A7 B7
五、發明説明(2 多重指令線程的執行。合央& . 讯汀田术自不同線程的指令是透過共 核心處理時,線程管理單元 、 曰曰 早兀T楗供多重線程狀態資料的 片儲存及更新資料。 —貝㈣的多重線程處理器可每次執行來自只有—線程 的指令,但是多重線程的狀態資料的晶片儲存可減少鱼在 不㈣程(本文開關)之間的切換指令執行有關的負荷。、去 裝 目可執行的線程遇到—長延遲事件(啟動事件多重線程: SOEMT)時,線程切換便會被觸發。 一細質多重線程處理H允許同時執行來自多重線程的指 令。例如,指令可於每個時脈週期上從多重線程送出,或 指令可在不同時脈週期上從不同線程送出。在兩情況中, 來目多重線程的指令可同時在執行核心執行。 « ,大u上夕重線私處理器與多重核心處理器允許超過一 ^㈣本文同時在處理器是主動。對於多重核^處理器而 '二一::匕或所有核心都可以是多重線程。I此,本文可視 為暫存器’以儲存一特殊處理器結構的線程結構狀態,而 且包括一般、控制與應用暫存器。支持多重線程本文(”多 重本又處理器’’)的這些及其他處理器的效率利益是部分因 =些處,器的能力而定,且如同是多重、等效的邏輯處理 备。此等效明顯有助於使邏輯處理器之中的工作量平衡, π且匕過作業系統可簡化線程管理。事實上,目標是使一 多重本文處理器如同一對稱多處理器(SMP)系統。 右要增加在多重線程之中的對稱,某些資源於多重本文 處理器的每個邏輯處理器是被複製。例如,一中斷單元典 -5- 五、發明説明( 3 A7 B7 型是與每個邏輯處理器有關,以便在多重本文處理器的邏 輯處理器與系統位準資源、或共用資源之間提供一介面。 如果接文中斷,中斷單元可判斷一中斷是否被處理,且將 一指標提供給中斷處理碼。 口提供每個邏輯處理器的中斷單元的一缺點是特別與由邏 =處理器所共用的資源有關的中斷時常可由所有邏輯處理 器見到。例如,一多重本文處理器可提供單一中斷接腳, 以維持與單_線程設計相容的包裝位準。在接腳上的中斷 可由所有邏輯處理器的中斷單元·見到。系統的扇出失敗會 觸發此-中斷。由於他們是等效,所以每個中斷單元可註 :中且它相關的邏輯處理器可執行中斷處理器。透過 八用曰曰片貝源所產生或在系統上接收的中斷、或專屬的中 ,匯流排可見到,且以一類似方式處理。在許多情況,中 斷可由該等邏輯處理器之—處理,但是邏輯處理器的對稱 結構是使每個邏輯處理器執行中斷碼。 發月係七田述與支援同時執行多重線程的處玉里器處理中 斷有關的這些及其他問題。 本1明可參考下列圖式了冑,其中類似元件是使用相同 數子^。這些圖是用來描述本發明的選擇具體實施例, 而不是對本發明範圍的限制。 圖1是本發明可實施的一電腦系統方塊圖。 圖2疋根據本發明的一多重核心處理器方塊圖。 圖3是根據本發明的一多重線程處理器方塊圖。 -6-
A7 B7 圖4是表示根據本發 例流程圖。 圖5是表示极據本發 施例流程圖。 明用於處理中斷方法的一*具體實 施 明用於處理中斷方法的另一且體實 發明之詳細說明
即”、、而,從具有此揭示利益的技藝平常技術可了解到太 發明的實施矣愛;士此认A 、^ …而廷些特殊細節。此外,各種不同眾所週知 的万法、私序、元件、與電路並未詳細描述,為 本發明的特徵隹 圖1是表示·本發明可實施的一電腦系-統i 〇〇的且f施 例:塊圖、。電腦系統100包括一多重本文處理器二:以 執仃在一 i己憶體i 6 0中儲存的指令。資料與指令是經由一 通道180而在處理器110與記憶體160之間耦合。2_晶 片組或系統邏輯(未在圖顯示)的控制下,通道18〇包括j 或多個匯流排。 對於系統100而言,記憶體16〇能反應_中斷而儲存由 多立1本文處理器110的資源執行的一中斷處理器170。記 憶體1 6 0係表示例如快取與主記憶體的揮發性記憶體結 構、以及例>快閃記憶體、硬碟與軟碟等的非揮發性記憶 體結構。對於本發明的—具體實施例而言,—部分的中斷 處理器170能以韌.體實施,而其他部分是儲存在主記憶 體。 " 多重本文處理器110的邏輯是以邏輯處理器12〇〇)_ 本紙張尺度適用中國國家標準(CNS) A4規格(210X 297公爱) A7 B7 五、發明説明(5 闊中 二 12°)表示,包括分別他們的相 : ,)-130⑻(通常是中斷單元130)、盥业用 貝源140。❹’每個邏輯處㈣12〇係表 耗程始《,而且共用資源⑷係表示料所有邏㈣= 态12 〇線私的廷些處理器1 1 0的資源。 對於系統1 0 〇的揭示且鋏余 扭叮料、今丁具把只犯例而言,共用資源140包 括可對母個邏輯虛掷+ ⑽…… 取的—中斷要求暫存器 (?。〇。如下面的詳細說明,icr 15〇可提供一邏輯處 ^ 120發#給將處理中斷的其餘邏輯處理器的一機制。 共用資源14G亦包括—較高階快取或匯流排邏輯,以便與 '己憶體1 6 〇或週邊裝置(未在圖顯示)通訊。 斷單元1 «3 0 i系表不與處理中斷的邏輯處理器m有關 的_功㈣万塊。某些中斷是透過該等邏輯處理器1 2 0的任 :輯!理备來處理。例如,在經由處理器包裝資源產生 的處理器與系統或平台位準中斷的共用資源"〇中發生的 某些中斷典型可透過任何邏輯處理器12〇處理。他們可經 由減理器包裝上的一外部引腳1 〇4、一匯流排、或經由 處理备1 1 0的内邰電路而通訊。在下列討論中,例如這些 的中斷可視為-般中斷,以區別於一特殊邏輯處理器的中 斷。 中斷單元1 j〇(l) - 130(n)暫存邏輯處理器12〇⑴-12〇(n) 的I中斷。例如,每個中斷單元丨3 〇可評估指定給連同 任何遮罩情況的中斷優先權,以決定是否中斷是否立即處 理例如觸發中斷的事件是否應該優先接管目前執行的線
x 297公釐) A7 B7 五、發明説明(6 私。如果中斷單元130決定該中斷具有優先權,它便合使 :的:關邏輯處理器120執行-適當中斷處理常式。:發 月^許一邏輯處理器120執行由所有邏輯處理器所註 2中:的冗全中斷處理常式的一機制。它無需強加於邏輯 〜里-1 2 G的不野%,例如任意將中斷指定給邏輯處理器 12 0° 對於系統1〇〇的一具體實施例而言,中斷單元ι3〇(ι) _ π〇⑻可暫存邏輯處理器12G⑴·丨释)的—般中斷。如果 中斷具有優先權,中斷單元130⑴_ 13〇⑷便會分別使邏 輯f理器丨20⑴-120(n)相對中斷處理器丨7〇。該等邏輯處 理态120(1) - I20(n)的每一著可執行中斷處理器17〇的一第 一如片焱,而使它可存取iCR 150。成功存取iCR】5〇的該 等迷輯處理器120的第一者可完成中斷處理,而且其餘邏 輯處理器1 2 0能重新開始他們的線程執行。 對於本發明的一具體實施例而言,在一般中斷之後, ICR 150能將一第一值初始化,及將該第一值重新設定。 中k/f處理器1 6 0的開始碼片段能使每個邏輯處理器1 2 〇讀 取目削在ICR 1:)〇的值,並且將一第二值寫到i(:R 15〇。假 設第二值是不同於第一值,第一邏輯處理器丨2〇便會讀取 ICR 150來看第一值。所有其他邏輯處理器丨2 〇能看到第 二值。讀取第一值的邏輯處理器可持續執行中斷處理器。 其餘邏輯處理為可謂取第二值,以發信給他們從中斷返 回,以例如重新開始執行他們的中斷線程。 邏輯處理器1 2 0不必然在鎖定步騾回應一般中斷。當中 -9- 本纸银尺度適用中國國家標準(CNS) A4規格(210X 297公着)
斷發生時的線程執行類刑、 / 土 /、優先椎或甚至目可使用的指 副可決足邏輯處理器120能多快存取ICR丨50。因且 體貫施例:疋’中斷處理器170可每次只由-處理器執 仃’在此情況,執行中斷處理器1 7 0的第一邏輯處理哭將 會先存取ICR 150。 % 夕重本文處理态i丨〇的不同具體實施例能以不同方式實 施邏輯處理器120。對於多重本文處理器M〇的一多重核 心具體實施例而言,每個邏輯處理器12〇係對應一執行核 ^重本又處理器i i 〇的一多重核心具體實施例是在圖 2紂柳對於多重本文處理器1 1 〇的一多重線程具體實施 例而言,每個邏輯處理器120係對應配置給一特殊線程的 單一執行核心資源。多重本文處理器1丨〇的一多重線程具 體實施例是在圖3討論。多重本文處理器丨丨〇的其他具體 實施例包括例如多重核心,其中一些或全部是多重線程。 本發明並非決定於邏輯處理器是在處理器實施的特殊方 式0 圖2係表示一多重本文處理器丨丨〇的多重核心具體實施 例2 1 0的方塊圖。多重核心處理器2 1 〇可分別提供執行核 心220( 1) - 220(n)及其對應中斷單元230(1) - 230(n),以支 援多達η個線程同時執行。而且顯示共用資源2 4 〇,包括 一中斷要求暫存器(ICR) 250。對於多重核心處理器2 i 〇的 揭示具體實施例而言,ICR 250可由執行核心220(1) -220(n)經由一匯流排2 5 4而存取。 在反應一般中斷方面,每個中斷單元230可判斷中斷是 -10 - 本紙張尺度適用中國國家標準(CNS) A4規格(210X 297公釐) 1223771 五、發明説明
A7 B7 否具^ k榼,而且如果是如此,它可將對應執行核心 2 2 0官理-中斷處理器。在一第一部分中斷處理器的控制 下’執行核心2 2 0會競爭對1CR 250的存取。最先存取^^ 2d0可το成中斷處理器。其餘執行核心會重新開始他們的 :斷線程°,對於多重核心處理器2丨0的另-具體實施而 言,一或多個執行核心22〇⑴_ 22〇(n)亦可以是多重線
程,在此情況,每個核心的每個線程會先嘗試存取 250。 裝
*線 對於本發明的一具體實施例而言,第一碼片段會造成每 個邏輯處理器2 2 0讀取ICR 250。如果邏輯處理器22〇讀取 ICR 2:>0的一第一值,它便會執行中斷處理器的其剩部 分。如果邏輯處理器2 2 〇讀取ICR 250的一第二值,它便 會重新開始執行在中斷前執行的線程指令。若要確保只有 一逑輯處理态2 2 0讀取該第一值,最初的碼片段可採用例 如一"測試與設定"操作的一自動讀修改寫操作。例如, 如果ICR 250的第一值是〇,中斷處理器! 7〇便會讀取在 ICR 25〇的值,並且將i自動寫到ICR 25〇。即是,讀修改 爲操作的執行無需將IC R 2 5 0讓於另一邏輯處理器。對於 此具體實施例而言,只有到達ICR 250的第一邏輯處理器 喻項取0值。所為其他邏輯處理器可透過存取IC r 2 5 0的第 一邏輯而讀取寫到ICR 250的1。 上述具體實施例是用以決定那個邏輯處理器將處理一般 中斷的一”競爭旗號”機制範例。該旗號可包含在能由每 個邏輯處理器存取的一暫存器、一鎖定變數或類似儲存位 -11 . 本纸張尺度適用中國國家標準(CNS) A4規格(210 X 297公釐) 1223771
AT 發明説明 疋。碩/寫規則係控制此一旗號,以允許每個邏輯處理器 了個別決足疋否貝責處理一般中斷。 圖3係表示多重本文處理器1 1 0的一多重線程具體實施 例3 1 〇的方塊圖。多重線程處理器3丨〇包括一執行核心 ^ 〇 4,以允許同時處理來自多達n個不同線程的指令。執 仃核心3 0 4是以一管線表示,其中各種不同階段是配置給 η 個線程(方塊 324(0. 324(^ 326(^ 326(^ 328(^ β8(ιι)、330(1) · 330(n))、或在n個線程之中共用(方塊 〇4〇(a) - j40(c)和 ICR 3 50 )。例如,方塊 340(a)、340(b)和 j〇(c)係表示一共用指令快取、一共用暫存器重新命名單 元、與一共用資料快取。方塊324(1) - 324(n)、方塊326(ι) -J26(n)、方塊 328(1) - 328(n)與方塊 330(1) - 330(n)係分別 表示配且給線杜1 - η的一拾取單元、一解碼單元、一執行 單元與一中斷單元部分。配置給一特定邏輯處理器的資源 是以垂直排列顯示,以簡化圖3。它並位表示資源配置給 一線程的任何順序。 對處理器3 1 0的揭示具體實施例而言,邏輯處理器320( 1) 是以配置的資源324(1)、326(1)、328( 1)和330(1)表示,而 且邏輯處理器320(η)是以配置的資源324(n)、326(h)、328(η) 和330(η)表示。此是用於說明。其他表示包括目前使用在 對應線程的共用資源340(a) - 340(c)部分。 類似在處理器3 1 0的其他指定資源的中斷單元3 3 0不需 要實質清楚單元。例如,他們係表示配置給在處理器3 1 0 上執行個別線程的單一中斷單元部分。在反應一般中斷方 -12 - 本紙張尺度適用中國國家標準(CNS) Α4規格(210 X 297公釐)
裝 1223771 A7 B7 五、發明説明(10 面,中斷單元330(1) - 330(n)係將中斷註冊,並且決定它 是否應該處理。如果中斷具有優先權,中斷單元33〇(1) _ M〇(n)便會使邏輯處理器320(1) - 320(n)執行例如中斷處 理器1 7 0的一中斷處理常式。每個邏輯處理器3 2 〇係執行 中斷處理常式的一第一碼片段,以使它能存取ICR 35〇。 存取[CR 350的第一邏輯處理器3 2 0可執行中斷處理常式 的其餘部分。另一邏輯處理為3 2 0會回到他們中斷線程。 多重核心處理器2 1 0與多重線程處理器3 ! 〇的建構的提 供只用於說明目的。適於與本發明使用的多重本文處理器 的其他具體實施例可採用不同建構。例如,多重線程處理 為的線程係共用一前端與執行資源、與只有複製的暫存檔 案。在處理器設計與具有此階示優點的技藝中熟諳此計者 可確認連同本發明所使用的其他多重本文處理器建構。 圖4係表示反應一一般中斷而由多重本文處理器中的每 個邏輯處理器執行的方法40 0具體實施例流程圖。一一 前執行線程的一適當點,而且邏輯處理器可針對“Ο在一 指定位址上的中斷處理常式。如果中斷單元決定中斷具有 優先權,一中斷單元典型可提供中斷處理器位址。 在將控制轉移給中斷處理器之前所儲存的狀態資訊通常 中斷可被偵測41.0,而且邏輯處理器可判斷42〇中斷是否 應該處理。例如,邏輯處理器的一中斷單元可檢查優先權 與遮罩位元,以判斷偵測的中斷是否優先於目前執行的指 令線程。如果中斷沒有優先權,方法4〇〇便會結束47〇。 如果中斷具有優先權42 0,某狀態資訊便會儲存43〇在目 -13-
1223771 Α7 Β7
五、發明説明(Ή 2 =狀態資訊’只要完成中斷處理器,狀態資訊便 :使避輯處理器返回中斷指令線程。此可減 處理器有關的負荷。 丁 Τ _ 在進入中斷處理常式,邏輯處理器可執行碼的一第一片 段,而使它可存取45〇—中斷要求暫存器(ICR),並且將 儲存的-值與值相比較460。如果讀值等於 第一值,邏輯處理器便會執行4 7 0中斷處理常式。如果儲 存值不等於第一值,邏輯處理器便會從中斷返回48()。 若要確保任何時刻只有一處理器存取ICR,本發明的具 體實拖例可保護ICR或用來存取ICR的碼片段。在第一情 況,中斷處理器可採用一自動讀修改寫操作來修改I c r。 對於此具體實施例而言,如果邏輯處理器讀取在丨c r的一 第:值’那麼它可在ICR寫入一第二值,而無需放棄在讀 與寫操作之間的ICR控制。假設iCR是重新設定成在中斷 之間的第一值,讀取ICR的第一邏輯處理器將讀取在icr 的第一值,並且使用第二值將它取代。在第一邏輯處理器 之後讀取I C R的反應相同中斷的任何邏輯處理器將讀取第 二值’而且重新開始它先前中斷的動作。 對於第二情況而言,存取中斷處理器的第一碼片段是受 到一決定性片段位元的閘控。到達第一碼片段的第一邏輯 處理器係執行一決定性片段位元的極小讀修改寫,讀取該 位元的值及將一第二值寫到位元是無需放棄在讀與寫操作 之間的位元。如果謂值係表示第一碼片段未鎖定,邏輯處 理奋便會執行孩碼’以讀取在丨C R的值。寫到決定性片段 -14- 本纸張尺度適用中國國家標準(CNS) A4規格(21〇x297公愛)
裝 訂
1223771 A7 B7 五、發明説明(12 ) 位元的第二值可確保沒有其他邏輯處理器會在此時執行第 -碼片段。如果讀值係表示第一碼片段是被鎖定,邏輯處 理器便會回到它已執行的線程。既然只有一邏輯處理器可 每次執行第一碼片段,ICR的讀與寫不需要一極小操作。 在技藝中熟諳此技者及具有在此揭示的利益可確定用以確 保只有一邏輯處理器要求一般中斷所有權的各種不同並 機制。 一 只要旗號(ICR、鎖變數等)是由反應一般中斷的所有邏 輯處理器存取,旗號便會重新設定成下_般中斷的第一 值對本發明的一具體實施例而言,反應一般中斷讀取旗 號的最後邏輯處理器可將它重新狀成第—值。例如,旗 ,可足義成包括由多重本文處理器所支援的每個邏輯處理 器的一位兀。當每個邏輯處理器存取它旗號時,它便會設 足對應的旗號位元。最後邏輯處理器會設定它對應的旗號 位儿,而且它將旗號的所有位元重新設定成第一值。 ^於另—具體實施例而言’中斷處理器的開始碼片段能 使迷輯處理⑦I _計數值(即是旗號),及讀取該增量的 計數值。如果增量的計數值是等於目前在處理器上主動的 處:器數量,邏輯處理器便會重新設定成第一值。如 αΘ量的4數值疋小於目前主動的邏輯處理器數量,邏 輯處理器便會從中斷返回。 育二重新設定旗號的這些機制是假設在一般中斷之間的 1疋大於執仃中斷處理器(或其部分)與存取旗號的全部 邏輯處理器所需的時間。只要一般中斷所有權已決定,在 -------- · 15 - 1223771
處理器設計技藝中熟諳此技者便可確認用以重新設定旗號 的其他機制。 圖5係根據用以處理中斷的本發明而表示一方法$ 〇 〇具 體實施例的流程圖。方法5〇〇係允許啟動及關閉一般中斷 ^複製處理。例如,需要所有邏輯處理器能回應一般中 斷’例如一機器檢查或一熱事件。對於需要所有邏輯處理 备回應的其他一般中斷而言,中斷的複製處理允許參考位 元致能一般處理(ECH)。當系統先啟動或稍後改變以自 叮一系統垓境時,此位元便可設定給選擇的一般中斷。 方法5 0 0疋反應一般中斷的偵測而開始5 1 〇。一邏輯處 理器會檢查5 2 0 —位元,以判斷複製中斷處理是否允許。 如果允許,邏輯處理器便會使用中斷處理器執行,不 管其他邏輯處理器是否正在執行。如果位元表示52〇複製 中斷處理是無效,邏輯處理器便會檢查54〇 1CR,以判斷 是否要求中斷的所有權。如果中斷未要求5 5 〇,邏輯處理 器便會使用中斷處理器執行53〇。上述用以控制存取icr 的機制可應用在方法5 〇 〇。如果中斷已要求5 5 〇,邏輯處 理器)6 0便會判新最後線程是否回應一般中斷。如果是回 應一般中斷,邏輯處理器便會將ICR重新設定成第一值 5 7 0,且從中斷處理器返回5 8 〇,以重新開始當中斷發生 時處理的線程執行。如果它不是回應一般中斷的最後線 程’它便會從中斷處理器返回58〇,而無需重新設定 ICR。因此,用以判斷邏輯處理器是否回應一般中斷的最 後線程及重新設定I C R (即是旗號)的上述方法4 〇 〇機制可
裝 訂
-16-
五、發明説明(14 用於方法5 0 〇
的-機制已揭☆。在一多二、:=統中處理某些中斷 回應-般中斷而存取一共’輯處里焱 芏、-沾士 存时。存取共用暫存哭的該 測中斷中斷是否要求及從中斷處:哭:餘爾理器會偵 一且麵伞y‘ 處里如返回。對於本發明的 心二 ’中斷處理器包括透過在包裝上的所有 ::回應—般中斷而執行的-第-碼片⑨。共用暫 存…定成一第一值,且該第一碼片段能使每個邏輯處 理器讀取該共用暫存器。在—般中斷後,存取共用暫存器 的第:邏輯處理器會讀取第一值,寫入—第二值,及持續 執订m中斷處理器。其餘邏輯處理器會讀取該第二值,且 使他們退出中斷處理器。 對於本發明的另一具體貧施例而言,一致能,關閉位元 是提供發信號-般中斷否則多餘處理。如果位元是在關閉 狀態,中斷會透過執行一中斷處理常式的一第一片段而由 第一邏輯處理器要求,以存取該共用暫存器。如果位元是 在致能狀悲,第一碼片段便可省略,而且所有邏輯處理器 會執行中斷處理器常式來完成。 揭示的具體貫施例是描述本發明的各種不同特徵。本發 明可發現能使用在採用多重本文處理器的電腦與其他以處 理器為主之系統。在技藝中熟諳此技者與在此揭示的利益 可確認揭示具體實施例的變化與修改,是在附錄申請專利 的精神與範圍内。 -17-本紙張尺度適用中國國家標準(CNS) A4規格(210X 297公釐)
Claims (1)
1223771 |正替換頁 A8 B8 C8 D8 第091118296號專利申請案 中文申請專利範圍替換本(93年7月) 、申請專利範圍 1. 一種處理器,其包含: 第一中斷單兀,以使一第一邏輯處理器回應一中斷 而執行一中斷處理器; it第一中斷單70,以使一第二邏輯處理器能回應該中 斷而執行中斷處理器;及 α一中斷要求暫存器,以儲存一值來表示第一及第二邏 輯處理器是否處理中斷。 2·如t請專利範圍第丨項之處理器,其中該等第一及第二 k輯處理备疋在该中斷處理器的控制下讀取中斷要求暫 存器中的一值。 3·如申請專利㈣第2項之處理器,其中如果該第一邏輯 處理器讀取該中斷要求暫存器,㈣一豸輯處 處理中斷。 σ 4·如申凊專利範圍第3項之處理器,其中如果該第—邏輯 器處理中所,該第二邏輯處理器會退出中斷處理 。 6. 5.=申請專利範圍第4項之處理器,其中該第二邏輯處理 7可決足攻第一邏輯處理器是否透過讀取在該中斷要夂 暫存器中由該第一邏輯處理器寫入的一值來處理中斷。— 一種用以處理中斷之系統,其包含: 處理為,包括一中斷要求暫存器及複數個線程資 源,以分別處理對應複數個指令線程的的指令;及具 -記憶體,以鍺存-中斷處理器,包括反應中斷而細 由複數個線程資源的每一者可執行的指令,以:、’’二 本紙張尺度適用中囡f冢標準(CNS) M規格董y 1223771
申請專利範圍
讀取在該中斷要求暫存器中的值;及 反應該讀取值而處理該中斷、或重新開始指令執行。 4 U |(L 81第6項之系統’其中該等複數個線程資 源包含處理器的複數個執行核心。 ^ 4申α專利ϋ第6項之系統,其中該等複數個線程資 源匕σ配置、,.。複數個指令線程的_執行核心的複數個 9·如中請娜圍第6項之系統,其中該中斷處理器包括 可由▲等、,泉&貝源進—步執行的指令,以便讀取在該中 斷要求暫存器中的值之後,將一第二值寫到該中斷要求 暫存器。 10·如申凊專利範圍第9項之系統,其中該中斷要求暫存器 是被初始化,以儲存一第一值及該等線程資源的第一線 程資源;讀取該第一值;使用一第二值將它取代;及處 理中斷。 11.如申凊專利範圍第i 〇項之系統,其中該等複數個線程資 源的其餘可反應讀取在該中斷要求暫存器中第二值而執 行來自該中斷的返回。 12· —種用以處理中斷之系統,其包含: 一 a己憶體,其係儲存一中斷處理器;及 一處理器,包括一中斷要求暫存器與執行資源,以支 援複數個邏輯處理器,該等邏輯處理器的每一者會對該 中斷要求暫存器存取,使用該中斷處理器,反應一中斷 信號。 -2- 本紙張尺度適用中國國家標準(CNS) A4規格(210X 297公釐)
13·如申請專利範圍第丨2項之系統,其中該等支援複數個邏 輯處理器的執行資源包括複數個執行核心。 14. 如申凊專利範圍第1 3項之系統,其中每個執行核心包括 中fe/f單元’以反應该中斷信號而直接控制該中斷處理 器的執行核心。 15. 如申請專利範圍第13項之系統,其中該等執行核心的每 一者係反應該中斷要求暫存器的讀取值而處理該中斷處 理器的指令,以讀取該中斷要求暫存器,及持續執行該 中斷處理器,或從該中斷處理器返回。 16·如申請專利範圍第丨5項之系統,其中該等執行核心的一 第一者係反應該中斷信號而讀取該中斷要求暫存器,完 成該中斷處理器的執行,且其他的執行核心會離開該中 斷處理器。 17·如申請專利範圍第12項之系統,其中存取該中斷要求暫 存器的該等邏輯處理器的一第一者是完成該中斷處理器 的執行。 18. 如申請專利範圍第丨7項之系統,其中在該第一邏輯處理 器之後存取該中斷要求暫存器的該等邏輯處理器會離開 該中斷處理器。 19. 如申叫專利範圍第丨2項之系統,其中支援複數個邏輯處 理器的該等執行資源包括複數個執行核心,該等執行核 心至少一者支持多重線程。 20. —種能反應中斷而經由目前在一多重本文處理器上執行 的每個線程所實施之方法,該方法包含: -3 -木紙張尺度適用中國國家標準(CNS) A4規格(210 X 297公爱)
、申請專利範圍 存取在一扣疋記憶體位 ,、 1乂置上的一中斷處理器; 執仃孩中斷處理器, ^ ^ ^ 值;及 5Λ取在—中财要求暫存器中的 如果從該中斷要求暫在 成該中斷處理器的執行。’又的值疋H ’便完 21. 如申請專利範圍第2〇項 甘士 i也 包本嘈取名~ + 其中執行中斷處理器 Gcr項取在该中斷要求暫户 、 I文'存态中的值,且將一第二值寫 到茲暫存器,而盔需放妄羾:^丄 復馬 …、而狄菜對孩暫存器的控制。 22. 如:請專利範圍第2〇項之方法,如果來自該中斷要求暫 存器的續取值是第二值,其進—步包含結束該中斷處理 器的執行。 4 本紙張尺度適用中國國家標準(CNS) A4規格(210 X 297公釐)
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/945,419 US6779065B2 (en) | 2001-08-31 | 2001-08-31 | Mechanism for interrupt handling in computer systems that support concurrent execution of multiple threads |
Publications (1)
Publication Number | Publication Date |
---|---|
TWI223771B true TWI223771B (en) | 2004-11-11 |
Family
ID=25483060
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW091118296A TWI223771B (en) | 2001-08-31 | 2002-08-14 | Mechanism for interrupt handling in computer systems that support concurrent execution of multiple threads |
Country Status (10)
Country | Link |
---|---|
US (1) | US6779065B2 (zh) |
JP (1) | JP2005502119A (zh) |
KR (1) | KR100578437B1 (zh) |
CN (1) | CN1267822C (zh) |
DE (1) | DE10297166T5 (zh) |
GB (1) | GB2394099B (zh) |
HK (1) | HK1060784A1 (zh) |
RU (1) | RU2280272C2 (zh) |
TW (1) | TWI223771B (zh) |
WO (1) | WO2003021438A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI463406B (zh) * | 2011-10-31 | 2014-12-01 | Univ Nat Taiwan | 具搶占功能的即時中斷處理系統及其方法 |
Families Citing this family (88)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7181600B1 (en) | 2001-08-02 | 2007-02-20 | Mips Technologies, Inc. | Read-only access to CPO registers |
US7185183B1 (en) | 2001-08-02 | 2007-02-27 | Mips Technologies, Inc. | Atomic update of CPO state |
US7251814B2 (en) | 2001-08-24 | 2007-07-31 | International Business Machines Corporation | Yield on multithreaded processors |
US7428485B2 (en) * | 2001-08-24 | 2008-09-23 | International Business Machines Corporation | System for yielding to a processor |
JP3813930B2 (ja) | 2002-01-09 | 2006-08-23 | 松下電器産業株式会社 | プロセッサ及びプログラム実行方法 |
US7130948B2 (en) * | 2002-08-02 | 2006-10-31 | Bian Qiyong B | Flexible interrupt handling methods for optical networking apparatuses with multiple multi-protocol optical networking modules |
US7627721B2 (en) | 2002-10-08 | 2009-12-01 | Rmi Corporation | Advanced processor with cache coherency |
US8478811B2 (en) * | 2002-10-08 | 2013-07-02 | Netlogic Microsystems, Inc. | Advanced processor with credit based scheme for optimal packet flow in a multi-processor system on a chip |
US7924828B2 (en) * | 2002-10-08 | 2011-04-12 | Netlogic Microsystems, Inc. | Advanced processor with mechanism for fast packet queuing operations |
US20050033889A1 (en) * | 2002-10-08 | 2005-02-10 | Hass David T. | Advanced processor with interrupt delivery mechanism for multi-threaded multi-CPU system on a chip |
US7961723B2 (en) * | 2002-10-08 | 2011-06-14 | Netlogic Microsystems, Inc. | Advanced processor with mechanism for enforcing ordering between information sent on two independent networks |
US8037224B2 (en) * | 2002-10-08 | 2011-10-11 | Netlogic Microsystems, Inc. | Delegating network processor operations to star topology serial bus interfaces |
US8176298B2 (en) * | 2002-10-08 | 2012-05-08 | Netlogic Microsystems, Inc. | Multi-core multi-threaded processing systems with instruction reordering in an in-order pipeline |
US9088474B2 (en) * | 2002-10-08 | 2015-07-21 | Broadcom Corporation | Advanced processor with interfacing messaging network to a CPU |
US20050033831A1 (en) * | 2002-10-08 | 2005-02-10 | Abbas Rashid | Advanced processor with a thread aware return address stack optimally used across active threads |
US7346757B2 (en) | 2002-10-08 | 2008-03-18 | Rmi Corporation | Advanced processor translation lookaside buffer management in a multithreaded system |
US7334086B2 (en) * | 2002-10-08 | 2008-02-19 | Rmi Corporation | Advanced processor with system on a chip interconnect technology |
US20050044324A1 (en) * | 2002-10-08 | 2005-02-24 | Abbas Rashid | Advanced processor with mechanism for maximizing resource usage in an in-order pipeline with multiple threads |
US7461215B2 (en) * | 2002-10-08 | 2008-12-02 | Rmi Corporation | Advanced processor with implementation of memory ordering on a ring based data movement network |
US7984268B2 (en) * | 2002-10-08 | 2011-07-19 | Netlogic Microsystems, Inc. | Advanced processor scheduling in a multithreaded system |
US8015567B2 (en) * | 2002-10-08 | 2011-09-06 | Netlogic Microsystems, Inc. | Advanced processor with mechanism for packet distribution at high line rate |
US7634638B1 (en) * | 2002-10-22 | 2009-12-15 | Mips Technologies, Inc. | Instruction encoding for system register bit set and clear |
US7062606B2 (en) * | 2002-11-01 | 2006-06-13 | Infineon Technologies Ag | Multi-threaded embedded processor using deterministic instruction memory to guarantee execution of pre-selected threads during blocking events |
US7386619B1 (en) * | 2003-01-06 | 2008-06-10 | Slt Logic, Llc | System and method for allocating communications to processors in a multiprocessor system |
US7849465B2 (en) * | 2003-02-19 | 2010-12-07 | Intel Corporation | Programmable event driven yield mechanism which may activate service threads |
US7487502B2 (en) | 2003-02-19 | 2009-02-03 | Intel Corporation | Programmable event driven yield mechanism which may activate other threads |
US7000051B2 (en) * | 2003-03-31 | 2006-02-14 | International Business Machines Corporation | Apparatus and method for virtualizing interrupts in a logically partitioned computer system |
US7281075B2 (en) * | 2003-04-24 | 2007-10-09 | International Business Machines Corporation | Virtualization of a global interrupt queue |
US7870553B2 (en) * | 2003-08-28 | 2011-01-11 | Mips Technologies, Inc. | Symmetric multiprocessor operating system for execution on non-independent lightweight thread contexts |
US9032404B2 (en) | 2003-08-28 | 2015-05-12 | Mips Technologies, Inc. | Preemptive multitasking employing software emulation of directed exceptions in a multithreading processor |
US7836450B2 (en) | 2003-08-28 | 2010-11-16 | Mips Technologies, Inc. | Symmetric multiprocessor operating system for execution on non-independent lightweight thread contexts |
US7711931B2 (en) * | 2003-08-28 | 2010-05-04 | Mips Technologies, Inc. | Synchronized storage providing multiple synchronization semantics |
US7418585B2 (en) | 2003-08-28 | 2008-08-26 | Mips Technologies, Inc. | Symmetric multiprocessor operating system for execution on non-independent lightweight thread contexts |
US7594089B2 (en) * | 2003-08-28 | 2009-09-22 | Mips Technologies, Inc. | Smart memory based synchronization controller for a multi-threaded multiprocessor SoC |
EP1660993B1 (en) | 2003-08-28 | 2008-11-19 | MIPS Technologies, Inc. | Integrated mechanism for suspension and deallocation of computational threads of execution in a processor |
US7849297B2 (en) * | 2003-08-28 | 2010-12-07 | Mips Technologies, Inc. | Software emulation of directed exceptions in a multithreading processor |
US20050102457A1 (en) * | 2003-11-12 | 2005-05-12 | Dell Products L.P. | System and method for interrupt processing in a multiple processor system |
US7721024B2 (en) * | 2003-11-12 | 2010-05-18 | Dell Products L.P. | System and method for exiting from an interrupt mode in a multiple processor system |
US20050210472A1 (en) * | 2004-03-18 | 2005-09-22 | International Business Machines Corporation | Method and data processing system for per-chip thread queuing in a multi-processor system |
US7917910B2 (en) * | 2004-03-26 | 2011-03-29 | Intel Corporation | Techniques to manage critical region interrupts |
US7143223B2 (en) * | 2004-10-14 | 2006-11-28 | International Business Machines Corporation | Method, system and program product for emulating an interrupt architecture within a data processing system |
US8176489B2 (en) * | 2004-12-09 | 2012-05-08 | International Business Machines Corporation | Use of rollback RCU with read-side modifications to RCU-protected data structures |
US20060212677A1 (en) * | 2005-03-15 | 2006-09-21 | Intel Corporation | Multicore processor having active and inactive execution cores |
US20060294149A1 (en) * | 2005-06-24 | 2006-12-28 | Intel Corporation | Method and apparatus for supporting memory hotplug operations using a dedicated processor core |
US7386646B2 (en) * | 2005-08-25 | 2008-06-10 | Broadcom Corporation | System and method for interrupt distribution in a multithread processor |
US7386647B2 (en) * | 2005-10-14 | 2008-06-10 | Dell Products L.P. | System and method for processing an interrupt in a processor supporting multithread execution |
US8079031B2 (en) | 2005-10-21 | 2011-12-13 | Intel Corporation | Method, apparatus, and a system for dynamically configuring a prefetcher based on a thread specific latency metric |
US8180923B2 (en) * | 2005-11-29 | 2012-05-15 | Intel Corporation | Network access control for many-core systems |
WO2007067562A2 (en) * | 2005-12-06 | 2007-06-14 | Boston Circuits, Inc. | Methods and apparatus for multi-core processing with dedicated thread management |
KR100679050B1 (ko) * | 2005-12-12 | 2007-02-06 | 삼성전자주식회사 | 태스크간 빠른 문맥 교환을 위해 레지스터 문맥을 저장,복구하는 방법 및 장치 |
TW200810523A (en) | 2005-12-23 | 2008-02-16 | Nxp Bv | An AV renderer peripheral with dual interrupt lines for staggered interrupts |
KR100681199B1 (ko) * | 2006-01-11 | 2007-02-09 | 삼성전자주식회사 | 코어스 그레인 어레이에서의 인터럽트 처리 방법 및 장치 |
US20070282928A1 (en) * | 2006-06-06 | 2007-12-06 | Guofang Jiao | Processor core stack extension |
US7721148B2 (en) * | 2006-06-29 | 2010-05-18 | Intel Corporation | Method and apparatus for redirection of machine check interrupts in multithreaded systems |
US7870372B2 (en) * | 2006-08-14 | 2011-01-11 | Marvell World Trade Ltd. | Interrupt handling |
US7493436B2 (en) * | 2006-10-26 | 2009-02-17 | International Business Machines Corporation | Interrupt handling using simultaneous multi-threading |
US7818302B2 (en) * | 2007-03-09 | 2010-10-19 | Emc Corporation | System and method for performing file system checks on an active file system |
US7660570B2 (en) * | 2007-03-12 | 2010-02-09 | John Mezzalingua Associates, Inc. | Active step attenuator |
US8627030B2 (en) * | 2007-11-07 | 2014-01-07 | Intel Corporation | Late lock acquire mechanism for hardware lock elision (HLE) |
US9596324B2 (en) * | 2008-02-08 | 2017-03-14 | Broadcom Corporation | System and method for parsing and allocating a plurality of packets to processor core threads |
CN101247275B (zh) * | 2008-03-18 | 2011-02-09 | 杭州华三通信技术有限公司 | 一种中断上报方法和网络设备 |
US8155479B2 (en) | 2008-03-28 | 2012-04-10 | Intuitive Surgical Operations Inc. | Automated panning and digital zooming for robotic surgical systems |
US8808164B2 (en) | 2008-03-28 | 2014-08-19 | Intuitive Surgical Operations, Inc. | Controlling a robotic surgical tool with a display monitor |
WO2009134217A1 (en) * | 2008-04-28 | 2009-11-05 | Hewlett-Packard Development Company, L.P. | Method and system for generating and delivering inter-processor interrupts in a multi-core processor and in certain shared-memory multi-processor systems |
US9417914B2 (en) * | 2008-06-02 | 2016-08-16 | Microsoft Technology Licensing, Llc | Regaining control of a processing resource that executes an external execution context |
US7996722B2 (en) * | 2009-01-02 | 2011-08-09 | International Business Machines Corporation | Method for debugging a hang condition in a process without affecting the process state |
US8151027B2 (en) * | 2009-04-08 | 2012-04-03 | Intel Corporation | System management mode inter-processor interrupt redirection |
US7996595B2 (en) * | 2009-04-14 | 2011-08-09 | Lstar Technologies Llc | Interrupt arbitration for multiprocessors |
US8321614B2 (en) * | 2009-04-24 | 2012-11-27 | Empire Technology Development Llc | Dynamic scheduling interrupt controller for multiprocessors |
US8260996B2 (en) * | 2009-04-24 | 2012-09-04 | Empire Technology Development Llc | Interrupt optimization for multiprocessors |
JP5035299B2 (ja) * | 2009-06-15 | 2012-09-26 | 株式会社日立製作所 | マルチコアプロセッサ制御方法、その計算機システム、及び管理計算機のプログラム |
US8234431B2 (en) * | 2009-10-13 | 2012-07-31 | Empire Technology Development Llc | Interrupt masking for multi-core processors |
RU2520399C2 (ru) * | 2009-10-15 | 2014-06-27 | Эл И ТЕК КО., ЛТД. | Микрокомпьютер и способ его работы |
FR2960314B1 (fr) * | 2010-05-19 | 2012-07-27 | Bull Sas | Procede d'optimisation de gestion de veille d'un microprocesseur permettant la mise en oeuvre de plusieurs coeurs logiques et programme d'ordinateur mettant en oeuvre un tel procede |
US9104508B2 (en) * | 2012-01-18 | 2015-08-11 | International Business Machines Corporation | Providing by one program to another program access to a warning track facility |
US10102003B2 (en) | 2012-11-01 | 2018-10-16 | International Business Machines Corporation | Intelligent context management |
US10078518B2 (en) * | 2012-11-01 | 2018-09-18 | International Business Machines Corporation | Intelligent context management |
US9329880B2 (en) * | 2013-02-13 | 2016-05-03 | Red Hat Israel, Ltd. | Counter for fast interrupt register access in hypervisors |
US10331589B2 (en) * | 2013-02-13 | 2019-06-25 | Red Hat Israel, Ltd. | Storing interrupt location for fast interrupt register access in hypervisors |
US9311138B2 (en) * | 2013-03-13 | 2016-04-12 | Intel Corporation | System management interrupt handling for multi-core processors |
US9842015B2 (en) | 2013-09-27 | 2017-12-12 | Intel Corporation | Instruction and logic for machine checking communication |
US10147480B2 (en) * | 2014-10-24 | 2018-12-04 | Micron Technology, Inc. | Sort operation in memory |
US10013279B2 (en) * | 2015-07-28 | 2018-07-03 | International Business Machines Corporation | Processing interrupt requests |
US10990463B2 (en) | 2018-03-27 | 2021-04-27 | Samsung Electronics Co., Ltd. | Semiconductor memory module and memory system including the same |
KR102538679B1 (ko) * | 2018-04-06 | 2023-06-02 | 삼성전자주식회사 | 메모리 시스템 및 메모리 시스템의 동작 방법 |
CN110737616B (zh) * | 2018-07-20 | 2021-03-16 | 瑞昱半导体股份有限公司 | 处理中断优先级的电路系统 |
US20210049036A1 (en) * | 2019-08-13 | 2021-02-18 | Facebook Technologies, Llc | Capability Space |
CN116401990B (zh) * | 2023-01-30 | 2023-10-20 | 芯华章科技(北京)有限公司 | 处理中断事件的方法、装置、系统和存储介质 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5109522A (en) * | 1983-06-02 | 1992-04-28 | Amdahl Corporation | Data processing system with logical processing facility supporting a plurality of system control programs for production operation |
US5437042A (en) * | 1992-10-02 | 1995-07-25 | Compaq Computer Corporation | Arrangement of DMA, interrupt and timer functions to implement symmetrical processing in a multiprocessor computer system |
KR100500002B1 (ko) * | 1996-08-27 | 2005-09-08 | 마츠시타 덴끼 산교 가부시키가이샤 | 복수의명령흐름을독립적으로처리하고,명령흐름단위로처리성능을유연하게제어하는멀티스레드프로세서 |
US5915088A (en) * | 1996-12-05 | 1999-06-22 | Tandem Computers Incorporated | Interprocessor messaging system |
US6061710A (en) * | 1997-10-29 | 2000-05-09 | International Business Machines Corporation | Multithreaded processor incorporating a thread latch register for interrupt service new pending threads |
US6205468B1 (en) * | 1998-03-10 | 2001-03-20 | Lucent Technologies, Inc. | System for multitasking management employing context controller having event vector selection by priority encoding of contex events |
US6163829A (en) * | 1998-04-17 | 2000-12-19 | Intelect Systems Corporation | DSP interrupt control for handling multiple interrupts |
-
2001
- 2001-08-31 US US09/945,419 patent/US6779065B2/en not_active Expired - Lifetime
-
2002
- 2002-08-01 GB GB0401390A patent/GB2394099B/en not_active Expired - Fee Related
- 2002-08-01 RU RU2004109581/09A patent/RU2280272C2/ru not_active IP Right Cessation
- 2002-08-01 KR KR1020047001244A patent/KR100578437B1/ko not_active IP Right Cessation
- 2002-08-01 WO PCT/US2002/024672 patent/WO2003021438A1/en active Application Filing
- 2002-08-01 CN CNB028170687A patent/CN1267822C/zh not_active Expired - Fee Related
- 2002-08-01 DE DE10297166T patent/DE10297166T5/de not_active Ceased
- 2002-08-01 JP JP2003525460A patent/JP2005502119A/ja active Pending
- 2002-08-14 TW TW091118296A patent/TWI223771B/zh not_active IP Right Cessation
-
2004
- 2004-05-19 HK HK04103557A patent/HK1060784A1/xx not_active IP Right Cessation
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI463406B (zh) * | 2011-10-31 | 2014-12-01 | Univ Nat Taiwan | 具搶占功能的即時中斷處理系統及其方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2003021438A1 (en) | 2003-03-13 |
CN1267822C (zh) | 2006-08-02 |
GB2394099A (en) | 2004-04-14 |
HK1060784A1 (en) | 2004-08-20 |
CN1549968A (zh) | 2004-11-24 |
KR20040023692A (ko) | 2004-03-18 |
RU2004109581A (ru) | 2005-08-20 |
JP2005502119A (ja) | 2005-01-20 |
US6779065B2 (en) | 2004-08-17 |
KR100578437B1 (ko) | 2006-05-11 |
DE10297166T5 (de) | 2004-07-22 |
RU2280272C2 (ru) | 2006-07-20 |
GB2394099B (en) | 2005-02-09 |
US20030046464A1 (en) | 2003-03-06 |
GB0401390D0 (en) | 2004-02-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI223771B (en) | Mechanism for interrupt handling in computer systems that support concurrent execution of multiple threads | |
TW409227B (en) | Method and apparatus for selecting thread switch events in a multithreaded processor | |
TW406241B (en) | Thread switch control in a multithreaded processor system | |
TW432327B (en) | Altering thread priorities in a multithreaded processor | |
US7870553B2 (en) | Symmetric multiprocessor operating system for execution on non-independent lightweight thread contexts | |
US7836450B2 (en) | Symmetric multiprocessor operating system for execution on non-independent lightweight thread contexts | |
JP5636109B2 (ja) | コンテキスト切り替え | |
US7418585B2 (en) | Symmetric multiprocessor operating system for execution on non-independent lightweight thread contexts | |
US7849297B2 (en) | Software emulation of directed exceptions in a multithreading processor | |
US8607235B2 (en) | Mechanism to schedule threads on OS-sequestered sequencers without operating system intervention | |
US5261109A (en) | Distributed arbitration method and apparatus for a computer bus using arbitration groups | |
US8079035B2 (en) | Data structure and management techniques for local user-level thread data | |
US7350006B2 (en) | System and method of interrupt handling | |
KR100985318B1 (ko) | 운영 체계 서비스의 투명한 지원을 위한 방법 및 제품 | |
US20080040524A1 (en) | System management mode using transactional memory | |
JP2005284749A (ja) | 並列処理コンピュータ | |
US9558152B2 (en) | Synchronization method, multi-core processor system, and synchronization system | |
CN101563674A (zh) | 对来自多处理器系统上的多线程程序的存储器访问进行管理的方法和系统 | |
CN110659115A (zh) | 具有硬件辅助任务调度的多线程处理器核 | |
US8255721B2 (en) | Seamless frequency sequestering | |
JP4168281B2 (ja) | 並列処理システム、インタコネクションネットワーク、ノード及びネットワーク制御プログラム | |
TW380226B (en) | Using intelligent bridges with pico-code to improve interrupt response | |
US20220318053A1 (en) | Method of supporting persistence and computing device | |
JP5376042B2 (ja) | マルチコアプロセッサシステム、スレッド切り替え制御方法、およびスレッド切り替え制御プログラム | |
JP2009515280A (ja) | 中央化された割り込みコントローラ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |