日韩成人黄色,透逼一级毛片,狠狠躁天天躁中文字幕,久久久久久亚洲精品不卡,在线看国产美女毛片2019,黄片www.www,一级黄色毛a视频直播

用于信息處理的系統(tǒng)和方法

文檔序號(hào):6562244閱讀:161來源:國(guó)知局
專利名稱:用于信息處理的系統(tǒng)和方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種用于缺省數(shù)據(jù)前送一致的高速緩存代理的系統(tǒng)和方法。更特別地,本發(fā)明涉及一種用于修改MESIF協(xié)議的“轉(zhuǎn)發(fā)”狀態(tài)控制以便有效地支持可縮放節(jié)點(diǎn)控制器計(jì)算機(jī)系統(tǒng)的系統(tǒng)和方法。
背景技術(shù)
高速緩存一致性是計(jì)算機(jī)系統(tǒng)的整體性要素,它是管理高速緩存使得數(shù)據(jù)不丟失或者重寫的過程。例如,當(dāng)數(shù)據(jù)在高速緩存中更新但是尚未傳送到它的目標(biāo)存儲(chǔ)器或者盤時(shí),出錯(cuò)的可能性很高。高速緩存一致性是使用對(duì)高速緩存保持跟蹤的算法和協(xié)議來獲得的。在對(duì)稱多處理(SMP)系統(tǒng)中,高速緩存甚至更為關(guān)鍵,因?yàn)槎鄠€(gè)處理器共享同一存儲(chǔ)器空間。
一種現(xiàn)存的高速緩存一致性協(xié)議是MESIF(修改、獨(dú)占、共享、無效、前送)協(xié)議。當(dāng)高速緩存線處于“修改”狀態(tài)中時(shí),高速緩存代理具有計(jì)算機(jī)系統(tǒng)中的唯一正確數(shù)據(jù)。當(dāng)高速緩存線處于“獨(dú)占”狀態(tài)中時(shí)(數(shù)據(jù)尚未修改),高速緩存代理具有對(duì)高速緩存進(jìn)行修改的獨(dú)占控制。當(dāng)高速緩存線處于“共享”狀態(tài)中時(shí),多個(gè)高速緩存代理可以使它們的高速緩存存儲(chǔ)器中的高速緩存線進(jìn)行讀取,而且每個(gè)拷貝是正確的。當(dāng)高速緩存代理處的高速緩存線處于“無效”狀態(tài)時(shí),高速緩存代理的拷貝不正確,因?yàn)榱硪惶幚砥饕呀?jīng)更新了對(duì)應(yīng)的存儲(chǔ)器位置或者具有高速緩存線的獨(dú)占狀態(tài)。
最后,當(dāng)高速緩存代理具有高速緩存線“前送”狀態(tài)控制時(shí),高速緩存代理在它接收到高速緩存線請(qǐng)求時(shí)將高速緩存線前送到請(qǐng)求的高速緩存代理。該前送狀態(tài)消除了本地高速緩存代理為了高速緩存線而訪問主存儲(chǔ)器的需要,這改進(jìn)了整體系統(tǒng)性能。然而,發(fā)現(xiàn)的挑戰(zhàn)是對(duì)于使用可縮放節(jié)點(diǎn)控制器的系統(tǒng)而言,該前送狀態(tài)沒有被優(yōu)化。對(duì)于這些系統(tǒng)來說,依賴于前送狀態(tài)管理,對(duì)遠(yuǎn)程處理器進(jìn)行高速緩存訪問所造成的等待可能是嚴(yán)重的。
因此需要一種為使用可縮放節(jié)點(diǎn)控制器的系統(tǒng)有效地管理MESIF協(xié)議的高速緩存線前送狀態(tài)控制的系統(tǒng)和方法。

發(fā)明內(nèi)容
已經(jīng)發(fā)現(xiàn)使用一種用于僅允許節(jié)點(diǎn)控制器擁有MESIF協(xié)議中的高速緩存線前送狀態(tài)控制的系統(tǒng)和方法來解決上述挑戰(zhàn)。當(dāng)節(jié)點(diǎn)控制器從本地高速緩存代理接收到請(qǐng)求時(shí),節(jié)點(diǎn)控制器將對(duì)應(yīng)高速緩存線發(fā)送到本地高速緩存代理,而始終維持高速緩存線前送狀態(tài)控制。當(dāng)節(jié)點(diǎn)控制器從遠(yuǎn)程節(jié)點(diǎn)控制器接收到請(qǐng)求時(shí),節(jié)點(diǎn)控制器將高速緩存線隨同高速緩存線前送狀態(tài)控制一起發(fā)送到遠(yuǎn)程節(jié)點(diǎn)控制器。
節(jié)點(diǎn)控制器從本地高速緩存代理(本地處理器)或者從遠(yuǎn)程節(jié)點(diǎn)控制器接收高速緩存線請(qǐng)求。節(jié)點(diǎn)控制器基于高速緩存線請(qǐng)求的來源、請(qǐng)求類型和高速緩存線當(dāng)前狀態(tài)來執(zhí)行特定動(dòng)作。當(dāng)節(jié)點(diǎn)控制器從本地高速緩存代理接收到共享請(qǐng)求而且對(duì)應(yīng)高速緩存線的當(dāng)前狀態(tài)是共享時(shí),節(jié)點(diǎn)控制器簡(jiǎn)單地將高速緩存線發(fā)送到本地高速緩存代理。例如,兩個(gè)處理器可以共享(例如讀取)特定高速緩存線,并且第三處理器希望讀取同一高速緩存線。
當(dāng)節(jié)點(diǎn)控制器從本地高速緩存代理接收到共享請(qǐng)求而且對(duì)應(yīng)高速緩存線的當(dāng)前狀態(tài)是獨(dú)占時(shí),節(jié)點(diǎn)控制器先通知控制代理將它的狀態(tài)降級(jí)到“共享”,其中該控制代理是具有處于獨(dú)占狀態(tài)中的高速緩存線的高速緩存代理。節(jié)點(diǎn)控制器然后將高速緩存線發(fā)送到本地高速緩存代理,繼而將它的記錄更新為高速緩存線處于共享狀態(tài)中。
當(dāng)節(jié)點(diǎn)控制器從本地高速緩存代理接收到獨(dú)占請(qǐng)求時(shí),高速緩存線的當(dāng)前狀態(tài)而言在一定程度上不是實(shí)質(zhì)性的,因?yàn)楣?jié)點(diǎn)控制器由于本地高速緩存代理要求獨(dú)占訪問而通知共享高速緩存代理以及控制代理將它們的狀態(tài)降級(jí)到“無效”。一旦通知被發(fā)送,節(jié)點(diǎn)控制器將高速緩存線發(fā)送到本地高速緩存代理,繼而更新它的記錄以將本地高速緩存代理標(biāo)識(shí)為高速緩存線的控制代理。
當(dāng)節(jié)點(diǎn)控制器從遠(yuǎn)程節(jié)點(diǎn)控制器接收到遠(yuǎn)程共享請(qǐng)求并且高速緩存線的當(dāng)前狀態(tài)是共享時(shí),節(jié)點(diǎn)控制器將高速緩存線和高速緩存線前送狀態(tài)控制發(fā)送到遠(yuǎn)程節(jié)點(diǎn)控制器。節(jié)點(diǎn)控制器繼而更新它的記錄以標(biāo)識(shí)出遠(yuǎn)程節(jié)點(diǎn)控制器現(xiàn)在具有對(duì)于特定高速緩存線的高速緩存線前送狀態(tài)控制。
當(dāng)節(jié)點(diǎn)控制器從遠(yuǎn)程節(jié)點(diǎn)控制器接收到遠(yuǎn)程共享請(qǐng)求并且對(duì)應(yīng)高速緩存線的當(dāng)前狀態(tài)是獨(dú)占時(shí),節(jié)點(diǎn)控制器先通知控制代理將它的狀態(tài)降級(jí)到共享。節(jié)點(diǎn)控制器然后將高速緩存線和高速緩存線前送狀態(tài)控制發(fā)送到遠(yuǎn)程節(jié)點(diǎn)控制器。節(jié)點(diǎn)控制器繼而更新它的記錄以標(biāo)識(shí)出遠(yuǎn)程節(jié)點(diǎn)控制器現(xiàn)在具有對(duì)于特定高速緩存線的高速緩存線前送狀態(tài)控制。
最后,當(dāng)節(jié)點(diǎn)控制器從遠(yuǎn)程節(jié)點(diǎn)控制器接收到遠(yuǎn)程獨(dú)占請(qǐng)求時(shí),高速緩存線的當(dāng)前狀態(tài)而言在一定程度上不是實(shí)質(zhì)性的。節(jié)點(diǎn)控制器先通知共享高速緩存代理以及控制代理將它們的狀態(tài)降級(jí)到“無效”。一旦該通知被發(fā)送,節(jié)點(diǎn)控制器將高速緩存線和高速緩存線前送狀態(tài)控制發(fā)送到遠(yuǎn)程節(jié)點(diǎn)控制器。節(jié)點(diǎn)控制器繼而更新它的記錄以標(biāo)識(shí)出遠(yuǎn)程節(jié)點(diǎn)控制器現(xiàn)在具有對(duì)于特定高速緩存線的前送狀態(tài)控制。
上文是概要,因此必要地包含簡(jiǎn)化、概括和細(xì)節(jié)省略;因而,本領(lǐng)域技術(shù)人員將認(rèn)識(shí)到,該概要僅僅是說明性的而不旨在于以任何方式加以限制。僅由權(quán)利要求書限定的本發(fā)明的其它方面、發(fā)明特征和優(yōu)點(diǎn)將在下面闡述的非限制性的具體描述中變得明顯。


通過參照附圖,可以更好地理解本發(fā)明,而且使得它的許多目的、特征和優(yōu)點(diǎn)對(duì)于本領(lǐng)域技術(shù)人員變得明顯。
圖1是示出了在不具有這里描述的本發(fā)明的情況下處理器或者節(jié)點(diǎn)控制器將高速緩存線前送狀態(tài)控制前送到遠(yuǎn)程節(jié)點(diǎn)處理器的圖;圖2是示出了節(jié)點(diǎn)控制器將高速緩存線和高速緩存線前送狀態(tài)控制前送到遠(yuǎn)程節(jié)點(diǎn)控制器的圖;圖3是示出了基于高速緩存線請(qǐng)求類型和高速緩存線當(dāng)前狀態(tài)的節(jié)點(diǎn)控制器動(dòng)作的表;圖4是示出了在處理器從節(jié)點(diǎn)控制器請(qǐng)求和接收高速緩存線時(shí)所采取的步驟的流程圖;圖5是示出了在節(jié)點(diǎn)控制器處理高速緩存線請(qǐng)求時(shí)所采取的步驟的高級(jí)流程圖;圖6是示出了在處理遠(yuǎn)程高速緩存線請(qǐng)求時(shí)的步驟的流程圖;以及圖7是能實(shí)施本發(fā)明的計(jì)算設(shè)備的框圖。
具體實(shí)施例方式
下文旨在于提供對(duì)本發(fā)明的例子的具體描述,而不應(yīng)當(dāng)理解為限制本發(fā)明本身。實(shí)際上任何數(shù)目的變形可以落入于在基于說明書的權(quán)利要求書中限定的本發(fā)明范圍之內(nèi)。
圖1是示出了在不具有這里描述的本發(fā)明的情況下遵循現(xiàn)存MESIF(修改、獨(dú)占、共享、無效、前送)協(xié)議的計(jì)算機(jī)系統(tǒng)的圖。圖1中所示的每個(gè)處理器和節(jié)點(diǎn)包括請(qǐng)求和接收高速緩存線的高速緩存代理。處理器訪問存儲(chǔ)器映射以便確定特定高速緩存線的“歸屬節(jié)點(diǎn)”,也就是高速緩存線的物理位置。
圖1中的例子從處理器A 100出于只讀目的而請(qǐng)求高速緩存線開始。處理器A 100確定處理器D 115是特定高速緩存線的歸屬節(jié)點(diǎn),并且將請(qǐng)求150發(fā)送到處理器D 115。此外,處理器A 100將“探聽”152、154和156分別地發(fā)送到處理器B 105、處理器C 110和節(jié)點(diǎn)控制器Y 120。當(dāng)歸屬節(jié)點(diǎn)高速緩存代理之外的高速緩存代理具有對(duì)所請(qǐng)求的高速緩存線的控制時(shí),探聽是向非歸屬節(jié)點(diǎn)的其它本地高速緩存代理請(qǐng)求處理狀況的請(qǐng)求(見下文)。
在圖1中所示的例子中,處理器C 110具有對(duì)特定高速緩存線的控制,也具有“高速緩存線前送狀態(tài)控制”(基于現(xiàn)存MESIF協(xié)議)。具有高速緩存線前送狀態(tài)控制的高速緩存代理負(fù)責(zé)將高速緩存線前送到本地高速緩存代理。同樣,處理器C 110將高速緩存線以及高速緩存線前送狀態(tài)控制前送到處理器A 100(前送160)。此外,處理器C 110將指示它的動(dòng)作的探聽響應(yīng)162發(fā)送到處理器D 115(歸屬節(jié)點(diǎn))。處理器B 105、處理器C 110和節(jié)點(diǎn)控制器Y 120也分別地將探聽響應(yīng)158、162和159發(fā)送到處理器D 115。
繼續(xù)圖1中的例子,處理器E 125(遠(yuǎn)程處理器)現(xiàn)在請(qǐng)求讀取同一高速緩存線。同樣,處理器E 125將請(qǐng)求170發(fā)送到節(jié)點(diǎn)控制器Z145,該節(jié)點(diǎn)控制器Z 145將請(qǐng)求170發(fā)送到節(jié)點(diǎn)控制器Y 120。在這一點(diǎn),現(xiàn)有技術(shù)允許兩種用于向處理器E 125提供高速緩存線的可選方式。
第一可選方式使節(jié)點(diǎn)控制器Y將高速緩存線隨同高速緩存線前送狀態(tài)控制一起發(fā)送到處理器E 125(前送N 175)。這一可選方式的缺點(diǎn)在于高速緩存線狀態(tài)管理復(fù)雜,這可能造成處理器A 100和處理器E 125同時(shí)具有高速緩存線前送狀態(tài)控制。
第二可選方式使處理器A 100通過節(jié)點(diǎn)控制器120將高速緩存線隨同高速緩存線前送狀態(tài)控制一起發(fā)送到處理器E 125(前送P 180)。這一可選方式的缺點(diǎn)在于數(shù)據(jù)等待顯著增加,這使整體系統(tǒng)性能降級(jí)。因此,通過使用這里描述的本發(fā)明,將MESIF協(xié)議更改為僅使節(jié)點(diǎn)控制器擁有高速緩存線前送狀態(tài)控制,就減少了系統(tǒng)復(fù)雜度和系統(tǒng)等待(關(guān)于進(jìn)一步的細(xì)節(jié),見圖2-6和對(duì)應(yīng)文字)。
圖2是示出了計(jì)算機(jī)系統(tǒng)的圖,該計(jì)算機(jī)系統(tǒng)遵循了使用這里描述的本發(fā)明所修改后的MESIF協(xié)議。修改后的MESIF協(xié)議僅允許節(jié)點(diǎn)控制器擁有高速緩存線前送狀態(tài)控制。結(jié)果,節(jié)點(diǎn)控制器將高速緩存線發(fā)送到本地高速緩存代理,同時(shí)仍然維持高速緩存線前送狀態(tài)控制。當(dāng)節(jié)點(diǎn)控制器從遠(yuǎn)程節(jié)點(diǎn)控制器接收到請(qǐng)求時(shí),節(jié)點(diǎn)控制器將高速緩存線和高速緩存線前送狀態(tài)控制發(fā)送到遠(yuǎn)程節(jié)點(diǎn)控制器。處理器A 100、B 105、C 110、D 115以及節(jié)點(diǎn)控制器Y 120和Z 145與圖1中所示相同。
與圖1相似,圖2中的例子從處理器A 100請(qǐng)求高速緩存線“共享請(qǐng)求”(只讀目的)開始。處理器A 100確定處理器D 115是特定高速緩存線的歸屬節(jié)點(diǎn),并且將請(qǐng)求200發(fā)送到處理器D 115。此外,處理器A 100分別地將“探聽”202、204和206發(fā)送到處理器B 105、處理器C 110和節(jié)點(diǎn)控制器Y 120。
在一個(gè)實(shí)施例中,共享請(qǐng)求是“總線讀取線”(BRL)請(qǐng)求。在這一實(shí)施例中,高速緩存代理不知道高速緩存線是否為共享的、獨(dú)占的、無效的、企業(yè)層疊(tier)組件。如果高速緩存線在另一處理器或者節(jié)點(diǎn)控制器處使用,則作為BRL的結(jié)果,請(qǐng)求代理將該線高速緩存于共享狀態(tài)中。
在圖2中所示的例子中,處理器C 110具有對(duì)處理器A 100所請(qǐng)求的高速緩存線(獨(dú)占狀態(tài))的控制。然而,使用這里描述的本發(fā)明,處理器C 110沒有高速緩存線前送狀態(tài)控制。實(shí)際上,節(jié)點(diǎn)控制器Y120具有高速緩存線前送狀態(tài)控制。處理器B 105、處理器C 110和節(jié)點(diǎn)控制器Y 120分別地將探聽響應(yīng)208、210和212發(fā)送到處理器D115。
作為節(jié)點(diǎn)控制器Y 120具有高速緩存線前送狀態(tài)控制的結(jié)果,節(jié)點(diǎn)控制器Y 120將消息220發(fā)送到處理器C 110,該消息命令處理器C110將它的狀態(tài)降級(jí)到共享狀態(tài)。繼而,節(jié)點(diǎn)控制器Y 120將高速緩存線發(fā)送到處理器A 100(發(fā)送215),而始終維持高速緩存線前送狀態(tài)控制。
繼續(xù)圖2中的例子,處理器E 125(遠(yuǎn)程控制器)現(xiàn)在請(qǐng)求讀取同一高速緩存線。同樣,處理器E 125將請(qǐng)求230發(fā)送到節(jié)點(diǎn)控制器Z145,該節(jié)點(diǎn)控制器Z 145將請(qǐng)求230發(fā)送到節(jié)點(diǎn)控制器Y 120。由于節(jié)點(diǎn)控制器Y 120具有高速緩存線前送狀態(tài)控制,所以節(jié)點(diǎn)控制器Y120將高速緩存線隨同高速緩存線前送狀態(tài)控制一起發(fā)送到節(jié)點(diǎn)控制器Z 145(前送240)。在發(fā)送前送240之前,節(jié)點(diǎn)控制器Y 120可以將消息發(fā)送到一個(gè)或多個(gè)本地處理器(處理器A 100、處理器B 105、處理器C 110和處理器D 115),該消息通知它們將它們的狀態(tài)降級(jí)。該消息是基于高速緩存線的當(dāng)前狀態(tài)和請(qǐng)求230的請(qǐng)求“類型”(共享或者獨(dú)占)(關(guān)于狀態(tài)降級(jí)的進(jìn)一步細(xì)節(jié),見圖3和對(duì)應(yīng)文字)。
一旦節(jié)點(diǎn)控制器Z 145接收到高速緩存線和高速緩存線前送狀態(tài)控制,節(jié)點(diǎn)控制器Z 145保留高速緩存線前送狀態(tài)控制而且將高速緩存線發(fā)送到處理器E 125(發(fā)送250)。結(jié)果,只有節(jié)點(diǎn)控制器Y 120和Z 145擁有高速緩存線前送狀態(tài)控制。
圖3是示出了基于高速緩存線請(qǐng)求類型和高速緩存線當(dāng)前狀態(tài)的節(jié)點(diǎn)控制器動(dòng)作的表。高速緩存線請(qǐng)求類型可以是比如來自節(jié)點(diǎn)控制器所支持的處理器的本地請(qǐng)求,或者高速緩存線可以是比如來自遠(yuǎn)程節(jié)點(diǎn)控制器的遠(yuǎn)程請(qǐng)求。如果一個(gè)或多個(gè)高速緩存代理在讀取高速緩存線,則高速緩存線當(dāng)前狀態(tài)可以是“共享”狀態(tài),或者如果高速緩存代理之一具有處于獨(dú)占狀態(tài)中的高速緩存線并且打算修改高速緩存線但是尚未修改高速緩存線,則高速緩存線當(dāng)前狀態(tài)可以是“獨(dú)占”。
在一個(gè)實(shí)施例中,獨(dú)占請(qǐng)求是“總線讀取無效線”(BRIL)請(qǐng)求。在這一實(shí)施例中,高速緩存代理不知道高速緩存線是否當(dāng)前為共享、獨(dú)占、無效等。當(dāng)高速緩存代理以修改高速緩存線內(nèi)容的意圖來請(qǐng)求讀取高速緩存線時(shí)(BRIL請(qǐng)求),在當(dāng)前使用高速緩存線的其它高速緩存代理處高速緩存線的狀態(tài)被降級(jí)到“無效”。
表300包括列310至330。列310包括節(jié)點(diǎn)控制器從本地高速緩存代理或者遠(yuǎn)程節(jié)點(diǎn)控制器接收的各種請(qǐng)求類型。列320包括“共享”或者“獨(dú)占”高速緩存線當(dāng)前狀態(tài)標(biāo)識(shí)符,而列330包括基于列310中的請(qǐng)求類型和列320中的高速緩存線當(dāng)前狀態(tài)的動(dòng)作。
行340至360示出了當(dāng)節(jié)點(diǎn)控制器從本地高速緩存代理接收到高速緩存線請(qǐng)求時(shí)所采取的動(dòng)作。行340示出了通過從本地高速緩存代理接收到共享請(qǐng)求并且對(duì)應(yīng)高速緩存線的當(dāng)前狀態(tài)是共享,節(jié)點(diǎn)控制器簡(jiǎn)單地將高速緩存線發(fā)送到本地高速緩存代理。例如,兩個(gè)處理器可以共享(例如讀取)特定高速緩存線,而第三處理器希望讀取同一高速緩存線。
行350示出了當(dāng)節(jié)點(diǎn)控制器從本地高速緩存代理接收到共享請(qǐng)求而且對(duì)應(yīng)高速緩存線的當(dāng)前狀態(tài)是獨(dú)占時(shí),節(jié)點(diǎn)控制器先通知控制代理(它是具有處于獨(dú)占狀態(tài)中的高速緩存線的高速緩存代理)將它的狀態(tài)降級(jí)到“共享”。節(jié)點(diǎn)控制器然后將高速緩存線發(fā)送到本地高速緩存代理,繼而節(jié)點(diǎn)控制器將它的記錄更新為高速緩存線處于共享狀態(tài)中。
行360示出了當(dāng)節(jié)點(diǎn)控制器接收到獨(dú)占請(qǐng)求類型時(shí),高速緩存線的當(dāng)前狀態(tài)在一定程度上不是實(shí)質(zhì)性的,因?yàn)楣?jié)點(diǎn)控制器由于本地高速緩存代理正在請(qǐng)求獨(dú)占訪問而通知共享高速緩存代理以及控制代理將它們的狀態(tài)降級(jí)到無效。一旦發(fā)送該通知,節(jié)點(diǎn)控制器將高速緩存線發(fā)送到本地高速緩存代理,繼而節(jié)點(diǎn)控制器更新它的記錄以將本地高速緩存代理標(biāo)識(shí)為高速緩存線的控制代理。
行370至行390示出了當(dāng)節(jié)點(diǎn)控制器從遠(yuǎn)程節(jié)點(diǎn)控制器接收到請(qǐng)求時(shí)所采取的動(dòng)作。行370示出了當(dāng)節(jié)點(diǎn)控制器接收到遠(yuǎn)程共享請(qǐng)求并且高速緩存線的當(dāng)前狀態(tài)是共享時(shí),節(jié)點(diǎn)控制器將高速緩存線和高速緩存線前送狀態(tài)控制發(fā)送到遠(yuǎn)程節(jié)點(diǎn)控制器。繼而,節(jié)點(diǎn)控制器更新它的記錄以標(biāo)識(shí)出遠(yuǎn)程節(jié)點(diǎn)控制器現(xiàn)在具有對(duì)于特定高速緩存線的高速緩存線前送狀態(tài)控制。
行380示出了當(dāng)節(jié)點(diǎn)控制器接收到遠(yuǎn)程共享請(qǐng)求并且對(duì)應(yīng)高速緩存線的當(dāng)前狀態(tài)是獨(dú)占時(shí),節(jié)點(diǎn)控制器先通知控制代理將它的狀態(tài)降級(jí)到共享。節(jié)點(diǎn)控制器然后將高速緩存線和高速緩存線前送狀態(tài)控制發(fā)送到遠(yuǎn)程節(jié)點(diǎn)控制器。繼而,節(jié)點(diǎn)控制器更新它的記錄以標(biāo)識(shí)出遠(yuǎn)程節(jié)點(diǎn)控制器現(xiàn)在具有對(duì)于特定高速緩存線的高速緩存線前送狀態(tài)控制。
行390示出了當(dāng)節(jié)點(diǎn)控制器接收到遠(yuǎn)程獨(dú)占請(qǐng)求類型時(shí),高速緩存線的當(dāng)前狀態(tài)、比如行360中所示的當(dāng)前狀態(tài)在一定程度上不是實(shí)質(zhì)性的。節(jié)點(diǎn)控制器先通知共享高速緩存代理以及控制代理將它們的狀態(tài)降級(jí)到無效。一旦發(fā)送該通知,節(jié)點(diǎn)控制器將高速緩存線和高速緩存線前送狀態(tài)控制發(fā)送到遠(yuǎn)程節(jié)點(diǎn)控制器。繼而,節(jié)點(diǎn)控制器更新它的記錄以標(biāo)識(shí)出遠(yuǎn)程節(jié)點(diǎn)控制器現(xiàn)在具有對(duì)于特定高速緩存線的前送狀態(tài)控制。
圖4是示出了在高速緩存代理從節(jié)點(diǎn)控制器請(qǐng)求和接收到高速緩存線時(shí)所采取的步驟的流程圖。高速緩存代理包含于處理器中,該處理器處理比如來自應(yīng)用的高速緩存線請(qǐng)求。高速緩存線請(qǐng)求可以對(duì)應(yīng)于內(nèi)部高速緩存線(在處理器內(nèi)部)或者外部高速緩存線(在處理器外部)。
高速緩沖器處理開始于400,由此高速緩存代理在步驟410從應(yīng)用405接收存儲(chǔ)器請(qǐng)求。例如,應(yīng)用405可以計(jì)算數(shù)字值和要求存儲(chǔ)在特定高速緩存線中的數(shù)字。在步驟420,高速緩存代理在存儲(chǔ)器映射425中查找存儲(chǔ)器位置以識(shí)別高速緩存線的“歸屬節(jié)點(diǎn)”,它是高速緩存線的物理處理器位置。存儲(chǔ)器映射425可以存儲(chǔ)于比如計(jì)算機(jī)存儲(chǔ)器的易失性存儲(chǔ)區(qū)上。
確定處理器本身是否為歸屬節(jié)點(diǎn)(判決430)。如果處理器本身是歸屬節(jié)點(diǎn),則判決430轉(zhuǎn)移到“是”分支432,由此高速緩存從本地存儲(chǔ)器取回高速緩存線(步驟435)并且在步驟440將高速緩存線提供給應(yīng)用405。高速緩存代理處理在445結(jié)束。
另一方面,如果所請(qǐng)求的高速緩存線的歸屬節(jié)點(diǎn)是在不同的處理器,則判決430轉(zhuǎn)移到“否”分支438,由此高速緩存代理基于上面所識(shí)別的存儲(chǔ)器映射位置來識(shí)別對(duì)應(yīng)高速緩存線的歸屬節(jié)點(diǎn)(步驟450)。例如,在四個(gè)處理器的系統(tǒng)中,高速緩存代理可以識(shí)別出高速緩存線的歸屬節(jié)點(diǎn)是在第三處理器。
在步驟460,高速緩存代理將請(qǐng)求發(fā)送到歸屬節(jié)點(diǎn)處理器(包含于處理器465中),而且將“探聽”發(fā)送到處理器465中的其它處理器以及節(jié)點(diǎn)控制器470。節(jié)點(diǎn)控制器470是控制高速緩存線前送的本地節(jié)點(diǎn)控制器。在步驟480,高速緩存代理從節(jié)點(diǎn)控制器470接收所請(qǐng)求的高速緩存線,并且在步驟485將高速緩存線提供到應(yīng)用405。處理在490結(jié)束。
圖5是示出了在節(jié)點(diǎn)控制器處理高速緩存線請(qǐng)求時(shí)所采取的步驟的高級(jí)流程圖。節(jié)點(diǎn)控制器處理在500開始,由此節(jié)點(diǎn)控制器從包含于處理器515中的本地高速緩存代理或者從遠(yuǎn)程節(jié)點(diǎn)控制器520接收高速緩存線請(qǐng)求。
確定高速緩沖線請(qǐng)求是來自處理器515(本地請(qǐng)求)還是來自遠(yuǎn)程節(jié)點(diǎn)控制器(遠(yuǎn)程請(qǐng)求)(判決530)。如果高速緩存線請(qǐng)求是遠(yuǎn)程請(qǐng)求,則判決530轉(zhuǎn)移到“是”分支532,由此節(jié)點(diǎn)控制器處理遠(yuǎn)程請(qǐng)求(預(yù)定義的過程塊535,關(guān)于進(jìn)一步細(xì)節(jié),見圖6和對(duì)應(yīng)文字)。
另一方面,如果高速緩存線請(qǐng)求是本地請(qǐng)求,則判決530轉(zhuǎn)移到“否”分支538,由此確定高速緩存線請(qǐng)求的“請(qǐng)求類型”。請(qǐng)求類型可以是“共享”請(qǐng)求(只讀)或者請(qǐng)求類型可以是“獨(dú)占”請(qǐng)求(打算修改)(判決540)。如果請(qǐng)求是獨(dú)占請(qǐng)求,則判決540轉(zhuǎn)移到“獨(dú)占”分支542,由此該處理向具有處于共享狀態(tài)或者獨(dú)占狀態(tài)中的對(duì)應(yīng)高速緩存線的其它代理通知將它們的狀態(tài)降級(jí)到“無效”狀態(tài),因?yàn)楸镜馗咚倬彺娲碚谡?qǐng)求對(duì)對(duì)應(yīng)高速緩存線的獨(dú)占狀態(tài)(步驟545)。
在步驟550,節(jié)點(diǎn)控制器將高速緩存線發(fā)送到本地高速緩存代理,而始終維持高速緩存線的“前送狀態(tài)控制”。這意味著即使節(jié)點(diǎn)控制器將高速緩存線發(fā)送到本地高速緩存代理,但是當(dāng)高速緩存代理下次請(qǐng)求同一高速緩存線時(shí),節(jié)點(diǎn)控制器仍然負(fù)責(zé)將高速緩存線發(fā)送到其它高速緩存代理。在步驟555,節(jié)點(diǎn)控制器更新記錄,該記錄將本地高速緩存代理標(biāo)識(shí)為新的控制代理(歸因于獨(dú)占高速緩存線請(qǐng)求)。
另一方面,如果高速緩存線請(qǐng)求是共享請(qǐng)求(只讀),則判決540轉(zhuǎn)移到“共享”分支548,由此確定對(duì)應(yīng)高速緩存線的當(dāng)前狀態(tài),當(dāng)前狀態(tài)可以是共享或者獨(dú)占(判決560)。如果高速緩存線當(dāng)前狀態(tài)是“共享”,則判決560轉(zhuǎn)移到“共享”分支562,由此節(jié)點(diǎn)控制器在步驟565將高速緩存線發(fā)送到處理器515中的本地高速緩存代理。同樣,節(jié)點(diǎn)控制器維持前送狀態(tài)控制。
另一方面,如果高速緩存線當(dāng)前狀態(tài)是獨(dú)占,則判決560轉(zhuǎn)移到“獨(dú)占”分支568,由此節(jié)點(diǎn)控制器在步驟570通知控制代理(即當(dāng)前具有高速緩存線獨(dú)占狀態(tài)的代理)將它的狀態(tài)降級(jí)到它的狀態(tài)。在步驟575,節(jié)點(diǎn)控制器將高速緩存線前送到位于處理器515中的本地高速緩存代理。節(jié)點(diǎn)控制器在步驟580中記錄沒有高速緩存代理當(dāng)前是控制代理。
確定是否繼續(xù)節(jié)點(diǎn)控制器處理(判決590)。如果節(jié)點(diǎn)控制器應(yīng)當(dāng)繼續(xù)處理高速緩存線請(qǐng)求,則判決590轉(zhuǎn)移到“是”分支592,該分支循環(huán)回到處理另一高速緩存線請(qǐng)求。這一循環(huán)繼續(xù)到節(jié)點(diǎn)控制器應(yīng)當(dāng)終止為止,在這一點(diǎn),判決590轉(zhuǎn)移到“否”分支598,由此處理在599結(jié)束。
圖6是示出了在處理遠(yuǎn)程高速緩存線請(qǐng)求時(shí)所采取的步驟的流程圖。圖6中的步驟類似于圖5中的步驟,不同在于節(jié)點(diǎn)控制器將高速緩存線的“前送狀態(tài)控制” 以及高速緩存線本身前送到遠(yuǎn)程節(jié)點(diǎn)控制器。處理在600開始,由此確定遠(yuǎn)程節(jié)點(diǎn)控制器的請(qǐng)求類型(判決610)。如果該請(qǐng)求是遠(yuǎn)程獨(dú)占請(qǐng)求,則判決610轉(zhuǎn)移到“遠(yuǎn)程獨(dú)占”分支612,由此該處理向具有處于共享狀態(tài)或者獨(dú)占狀態(tài)中的對(duì)應(yīng)高速緩存線的其它代理通知將它們的狀態(tài)降級(jí)到無效狀態(tài),因?yàn)楸镜馗咚倬彺娲碚谡?qǐng)求對(duì)對(duì)應(yīng)高速緩存線的獨(dú)占狀態(tài)(步驟615)。
在步驟620,節(jié)點(diǎn)控制器將高速緩存線和前送狀態(tài)控制發(fā)送到遠(yuǎn)程節(jié)點(diǎn)控制器。結(jié)果,遠(yuǎn)程節(jié)點(diǎn)控制器現(xiàn)在負(fù)責(zé)處理對(duì)于特定高速緩存線的后續(xù)請(qǐng)求。在步驟625,節(jié)點(diǎn)控制器更新它的記錄,該記錄標(biāo)識(shí)出遠(yuǎn)程節(jié)點(diǎn)控制器具有高速緩存線的前送狀態(tài)控制。
另一方面,如果高速緩存線請(qǐng)求是共享請(qǐng)求(只讀),則判決610轉(zhuǎn)移到“遠(yuǎn)程共享”分支618,由此確定對(duì)應(yīng)高速緩存線的當(dāng)前狀態(tài),當(dāng)前狀態(tài)可以是共享或者獨(dú)占(判決630)。如果高速緩存線當(dāng)前狀態(tài)是“共享”,則判決630轉(zhuǎn)移到“共享”分支632,由此節(jié)點(diǎn)控制器在步驟635將高速緩存線和前送狀態(tài)控制發(fā)送到遠(yuǎn)程節(jié)點(diǎn)控制器。在步驟640,節(jié)點(diǎn)控制器更新它的記錄,該記錄標(biāo)識(shí)出遠(yuǎn)程節(jié)點(diǎn)控制器具有高速緩存線的前送狀態(tài)控制。
另一方面,如果高速緩存線當(dāng)前狀態(tài)是獨(dú)占,則判決630轉(zhuǎn)移到“獨(dú)占”分支638,由此節(jié)點(diǎn)控制器在步驟645通知控制代理(即當(dāng)前具有高速緩存線獨(dú)占狀態(tài)的代理)將它的狀態(tài)降級(jí)到“共享”。在步驟650,節(jié)點(diǎn)控制器將高速緩存線和前送狀態(tài)控制發(fā)送到遠(yuǎn)程節(jié)點(diǎn)控制器。節(jié)點(diǎn)控制器在步驟655記錄沒有高速緩存代理是控制代理(獨(dú)占控制)并且遠(yuǎn)程節(jié)點(diǎn)控制器具有高速緩存線的前送狀態(tài)控制。處理在660返回。
圖7圖示了信息處理系統(tǒng)701,它是能執(zhí)行這里所述計(jì)算操作的計(jì)算機(jī)系統(tǒng)的簡(jiǎn)化例子。計(jì)算機(jī)系統(tǒng)701包括耦合到主機(jī)總線702的處理器700。二級(jí)(L2)高速緩存存儲(chǔ)器704也耦合到主機(jī)總線702。主機(jī)到PCI橋接器706耦合到主存儲(chǔ)器708,包括高速緩存存儲(chǔ)器和主存儲(chǔ)器控制功能,而且提供總線控制以處理在PCI總線710、處理器700、L2高速緩存704、主存儲(chǔ)器708和主機(jī)總線702之間的傳送。主存儲(chǔ)器708耦合到主機(jī)到PCI橋接器706以及主機(jī)總線702。僅由一個(gè)或多個(gè)主機(jī)處理器700所使用的設(shè)備,比如LAN卡730,耦合到PCI總線710。服務(wù)處理器接口和ISA訪問通行712提供在PCI總線710和PCI總線714之間的接口。以這一方式,PCI總線714與PCI總線710相隔離。比如閃存718的設(shè)備耦合到PCI總線714。在一個(gè)實(shí)施中,閃存718包括BIOS代碼,該代碼結(jié)合了用于各種低級(jí)系統(tǒng)功能和系統(tǒng)引導(dǎo)功能的必要處理器可執(zhí)行代碼。
PCI總線714為一個(gè)或多個(gè)主機(jī)處理器700和服務(wù)處理器716所共享的各種設(shè)備(例如閃存718)提供接口。PCI到ISA橋接器735提供用以對(duì)于在PCI總線714與ISA總線740之間的傳送進(jìn)行處理的總線控制、通用串行總線(USB)功能745、電源管理功能755,而且可以包括未示出的其它功能單元,比如實(shí)時(shí)時(shí)鐘(RTC)、DMA控制、中斷支持和系統(tǒng)管理總線支持。非易失性RAM 720附接于ISA總線740。服務(wù)處理器716包括用于在初始化步驟期間與一個(gè)或多個(gè)處理器700通信的JTAG和I2C總線722。JTAG/I2C總線722也耦合到L2高速緩存704、主機(jī)到PCI橋接器706和主存儲(chǔ)器708,提供在處理器、服務(wù)處理器、L2高速緩存、主機(jī)到PCI橋接器與主存儲(chǔ)器之間的通信路徑。服務(wù)處理器716也可以訪問系統(tǒng)電源資源以使信息處理設(shè)備701斷電。
外圍設(shè)備和輸入/輸出(I/O)設(shè)備可以附接于各種接口,例如耦合到ISA總線740的并行接口762、串行接口764、鍵盤接口768和鼠標(biāo)接口770??蛇x地,可以通過附接于ISA總線740的超級(jí)I/O控制器(未示出)來容納許多I/O設(shè)備。
為了將計(jì)算機(jī)系統(tǒng)701附接到另一計(jì)算機(jī)系統(tǒng)以通過網(wǎng)絡(luò)拷貝文件,LAN卡730耦合到PCI總線710。類似地,為了使用電話線連接將計(jì)算機(jī)系統(tǒng)701連接到ISP以連接到因特網(wǎng),調(diào)制解調(diào)器775連接到串行端口和PCI到ISA橋接器735。
盡管圖7示出了采用一個(gè)或多個(gè)處理器700的一個(gè)信息處理系統(tǒng),但是信息處理系統(tǒng)可以采用許多形式。例如,信息處理系統(tǒng)701可以采用桌面型、服務(wù)器、便攜式、膝上型、筆記本或者其它形式要素的計(jì)算機(jī)或者數(shù)據(jù)處理系統(tǒng)。信息處理系統(tǒng)701也可以采用其它形式要素,比如個(gè)人數(shù)字助理(PDA)、游戲設(shè)備、ATM機(jī)、便攜電話設(shè)備、通信設(shè)備或者包括處理器和存儲(chǔ)器的其它設(shè)備。
本發(fā)明的優(yōu)選實(shí)施之一是客戶機(jī)應(yīng)用,即例如可以駐留于計(jì)算機(jī)隨機(jī)存取存儲(chǔ)器中的代碼模塊中的指令集(程序代碼)。在被計(jì)算機(jī)需要之前,指令集可以存儲(chǔ)于比如硬盤的另一計(jì)算機(jī)存儲(chǔ)器中,或者比如光盤(用于最終用在CD ROM中)或軟盤(用于最終用在軟盤驅(qū)動(dòng)中)的可移動(dòng)存儲(chǔ)器中或者經(jīng)由因特網(wǎng)或其它計(jì)算機(jī)網(wǎng)絡(luò)下載。因此,本發(fā)明可以實(shí)施成一種用于在計(jì)算機(jī)中使用的計(jì)算機(jī)程序產(chǎn)品。此外,盡管在通過軟件有選擇地激活或者配置的通用計(jì)算機(jī)中方便地實(shí)施所述各種方法,但是本領(lǐng)域普通技術(shù)人員也將認(rèn)識(shí)到,可以在硬件中、在固件中或者在構(gòu)造為執(zhí)行所需方法步驟的更專業(yè)的裝置中實(shí)現(xiàn)這樣的方法。
盡管已經(jīng)示出和描述了本發(fā)明的特定實(shí)施例,但是對(duì)于本領(lǐng)域技術(shù)人員將明顯的是,基于這里的教學(xué),在不脫離本發(fā)明及其更廣泛的方面時(shí)可以做出變化和修改。因此,所附權(quán)利要求書旨在于在它們的范圍之內(nèi)涵蓋在本發(fā)明的真實(shí)精神和范圍之內(nèi)的所有這樣的變化和修改。另外,將理解到本發(fā)明僅由所附權(quán)利要求書限定。本領(lǐng)域技術(shù)人員將理解到,如果意圖指出所引入權(quán)利要求要素的具體數(shù)字,則這樣的意圖將明確地記載于權(quán)利要求中,而在缺乏這樣的記載時(shí)則沒有這樣的限制。對(duì)于非限制性例子,作為對(duì)理解的幫助,所附權(quán)利要求包含了引導(dǎo)短語(yǔ)“至少一個(gè)”和“一個(gè)或多個(gè)”的使用以引入權(quán)利要求要素。然而,這種短語(yǔ)的使用不應(yīng)當(dāng)理解為意味著,通過不定冠詞“a”或“an”對(duì)權(quán)利要求要素的引入會(huì)把任何包含這樣引入的權(quán)利要求要素的特定權(quán)利要求限制為僅包含一個(gè)這種元素的發(fā)明,而這一點(diǎn)即使在同一權(quán)利要求包括引導(dǎo)短語(yǔ)“一個(gè)或多個(gè)”或者“至少一個(gè)”和比如“a”或“an”的不定冠詞時(shí)仍然成立;對(duì)于在權(quán)利要求書中使用定冠詞也遵循同一原則。
權(quán)利要求
1.一種計(jì)算機(jī)實(shí)施的方法,包括在節(jié)點(diǎn)控制器檢測(cè)高速緩存線請(qǐng)求;在該節(jié)點(diǎn)控制器確定該高速緩存線請(qǐng)求是否對(duì)應(yīng)于本地高速緩存代理;以及響應(yīng)于確定該高速緩存線請(qǐng)求對(duì)應(yīng)于該本地高速緩存代理,將高速緩存線前送到該本地高速緩存代理,同時(shí)在該節(jié)點(diǎn)控制器保留高速緩存線前送狀態(tài)控制,該高速緩存線對(duì)應(yīng)于該高速緩存線請(qǐng)求并且該高速緩存線前送狀態(tài)控制對(duì)應(yīng)于該高速緩存線。
2.權(quán)利要求1的方法,還包括確定該高速緩存線請(qǐng)求對(duì)應(yīng)于遠(yuǎn)程節(jié)點(diǎn)控制器;以及響應(yīng)于確定該高速緩存線請(qǐng)求對(duì)應(yīng)于該遠(yuǎn)程節(jié)點(diǎn)控制器,將該高速緩存線和該高速緩存線前送狀態(tài)控制前送到該遠(yuǎn)程節(jié)點(diǎn)控制器。
3.權(quán)利要求2的方法,其中該高速緩存線請(qǐng)求對(duì)應(yīng)于該遠(yuǎn)程節(jié)點(diǎn)控制器,該方法還包括確定該高速緩存線請(qǐng)求是遠(yuǎn)程共享請(qǐng)求;確定與該高速緩存線對(duì)應(yīng)的高速緩存線當(dāng)前狀態(tài)是獨(dú)占;以及響應(yīng)于確定該高速緩存線請(qǐng)求是遠(yuǎn)程共享請(qǐng)求和確定該高速緩存線當(dāng)前狀態(tài)是獨(dú)占通知控制代理將它的狀態(tài)降級(jí)到共享,其中該控制代理與該獨(dú)占高速緩存線狀態(tài)相關(guān)聯(lián);以及響應(yīng)于該通知,將記錄更新為該遠(yuǎn)程節(jié)點(diǎn)控制器具有對(duì)于該高速緩存線的高速緩存線前送狀態(tài)控制。
4.權(quán)利要求2的方法,其中該高速緩存線請(qǐng)求對(duì)應(yīng)于該遠(yuǎn)程節(jié)點(diǎn)控制器,該方法還包括確定該高速緩存線請(qǐng)求是遠(yuǎn)程獨(dú)占請(qǐng)求;確定與該高速緩存線對(duì)應(yīng)的高速緩存線當(dāng)前狀態(tài)是獨(dú)占;以及響應(yīng)于確定該高速緩存線請(qǐng)求是遠(yuǎn)程獨(dú)占請(qǐng)求和確定該高速緩存線當(dāng)前狀態(tài)是獨(dú)占通知一個(gè)或多個(gè)其它本地高速緩存代理將它們的狀態(tài)降級(jí)到無效;以及響應(yīng)于該通知,將記錄更新為該遠(yuǎn)程節(jié)點(diǎn)控制器具有對(duì)于該高速緩存線的高速緩存線前送狀態(tài)控制。
5.權(quán)利要求1的方法,還包括確定該高速緩存線請(qǐng)求是共享請(qǐng)求;確定與該高速緩存線對(duì)應(yīng)的高速緩存線當(dāng)前狀態(tài)是獨(dú)占;以及響應(yīng)于確定該高速緩存線請(qǐng)求是共享請(qǐng)求和確定該高速緩存線當(dāng)前狀態(tài)是獨(dú)占通知控制代理將它的狀態(tài)降級(jí)到共享,其中該控制代理與該獨(dú)占高速緩存線狀態(tài)相關(guān)聯(lián);以及響應(yīng)于該通知,將記錄更新為該控制代理不再具有對(duì)于該高速緩存線的獨(dú)占高速緩存線狀態(tài)。
6.權(quán)利要求1的方法,還包括確定該高速緩存線是獨(dú)占請(qǐng)求;確定與該高速緩存線對(duì)應(yīng)的高速緩存線當(dāng)前狀態(tài)是獨(dú)占;以及響應(yīng)于確定該高速緩存線請(qǐng)求是獨(dú)占請(qǐng)求和確定該高速緩存線當(dāng)前狀態(tài)是獨(dú)占通知控制代理將它的狀態(tài)降級(jí)到無效,其中該控制代理與該獨(dú)占高速緩存線狀態(tài)相關(guān)聯(lián);以及響應(yīng)于該通知,將記錄更新為該本地代理具有對(duì)于該高速緩存線的獨(dú)占高速緩存線狀態(tài)。
7.權(quán)利要求1的方法,其中該高速緩存線請(qǐng)求是從包括總線讀取線請(qǐng)求和總線讀取無效請(qǐng)求的組中所選擇的。
8.一種信息處理系統(tǒng),包括一個(gè)或多個(gè)處理器;可由該處理器訪問的存儲(chǔ)器;可由該處理器訪問的一個(gè)或多個(gè)非易失性存儲(chǔ)設(shè)備;以及用于管理高速緩存線前送狀態(tài)控制的高速緩存線管理工具,該高速緩存線管理工具有效地執(zhí)行如下步驟在節(jié)點(diǎn)控制器檢測(cè)通過計(jì)算機(jī)網(wǎng)絡(luò)接收的高速緩存線請(qǐng)求;在該節(jié)點(diǎn)控制器確定該高速緩存線請(qǐng)求是否對(duì)應(yīng)于本地高速緩存代理;以及響應(yīng)于確定該高速緩存線請(qǐng)求對(duì)應(yīng)于該本地高速緩存代理,通過該計(jì)算機(jī)網(wǎng)絡(luò)將高速緩存線前送到該本地高速緩存代理,同時(shí)在該節(jié)點(diǎn)控制器保留高速緩存線前送狀態(tài)控制,該高速緩存線對(duì)應(yīng)于該高速緩存線請(qǐng)求而該高速緩存線前送狀態(tài)控制對(duì)應(yīng)于該高速緩存線。
9.權(quán)利要求8的信息處理系統(tǒng),其中該高速緩存線管理工具還執(zhí)行如下步驟確定該高速緩存線請(qǐng)求對(duì)應(yīng)于遠(yuǎn)程節(jié)點(diǎn)控制器;以及響應(yīng)于確定該高速緩存線請(qǐng)求對(duì)應(yīng)于該遠(yuǎn)程節(jié)點(diǎn)控制器,通過該計(jì)算機(jī)網(wǎng)絡(luò)將該高速緩存線和該高速緩存線前送狀態(tài)控制前送到該遠(yuǎn)程節(jié)點(diǎn)控制器。
10.權(quán)利要求9的信息處理系統(tǒng),其中該高速緩存線請(qǐng)求對(duì)應(yīng)于該遠(yuǎn)程節(jié)點(diǎn)控制器,該高速緩存線管理工具還執(zhí)行如下步驟確定該高速緩存線請(qǐng)求是遠(yuǎn)程共享請(qǐng)求;確定與該高速緩存線對(duì)應(yīng)的高速緩存線當(dāng)前狀態(tài)是獨(dú)占;以及響應(yīng)于確定該高速緩存線請(qǐng)求是遠(yuǎn)程共享請(qǐng)求和確定該高速緩存線當(dāng)前狀態(tài)是獨(dú)占通過計(jì)算機(jī)網(wǎng)絡(luò)通知控制代理將它的狀態(tài)降級(jí)到共享,其中該控制代理與該獨(dú)占高速緩存線狀態(tài)相關(guān)聯(lián);以及響應(yīng)于該通知,將位于該非易失性存儲(chǔ)設(shè)備之一中的記錄更新為該遠(yuǎn)程節(jié)點(diǎn)控制器具有對(duì)于該高速緩存線的高速緩存線前送狀態(tài)控制。
11.權(quán)利要求9的信息處理系統(tǒng),其中該高速緩存線請(qǐng)求對(duì)應(yīng)于該遠(yuǎn)程節(jié)點(diǎn)控制器,該高速緩存線管理工具還執(zhí)行如下步驟確定該高速緩存線請(qǐng)求是遠(yuǎn)程獨(dú)占請(qǐng)求;確定與該高速緩存線對(duì)應(yīng)的高速緩存線當(dāng)前狀態(tài)是獨(dú)占;以及響應(yīng)于確定該高速緩存線請(qǐng)求是遠(yuǎn)程獨(dú)占請(qǐng)求和確定該高速緩存線當(dāng)前狀態(tài)是獨(dú)占通過該計(jì)算機(jī)網(wǎng)絡(luò)通知一個(gè)或多個(gè)其它本地高速緩存代理將它們的狀態(tài)降級(jí)到無效;以及響應(yīng)于該通知,將包含于該非易失性存儲(chǔ)設(shè)備之一中的記錄更新為該遠(yuǎn)程節(jié)點(diǎn)控制器具有對(duì)于該高速緩存線的高速緩存線前送狀態(tài)控制。
12.權(quán)利要求8的信息處理系統(tǒng),其中該高速緩存線管理工具還執(zhí)行如下步驟確定該高速緩存線請(qǐng)求是共享請(qǐng)求;確定與該高速緩存線對(duì)應(yīng)的高速緩存線當(dāng)前狀態(tài)是獨(dú)占;以及響應(yīng)于確定該高速緩存線請(qǐng)求是共享請(qǐng)求和確定該高速緩存線當(dāng)前狀態(tài)是獨(dú)占通過該計(jì)算機(jī)網(wǎng)絡(luò)通知控制代理將它的狀態(tài)降級(jí)到共享,其中該控制代理與該獨(dú)占高速緩存線狀態(tài)相關(guān)聯(lián);以及響應(yīng)于該通知,將位于該非易失性存儲(chǔ)設(shè)備之一中的記錄更新為該控制代理不再具有對(duì)于該高速緩存線的獨(dú)占高速緩存線狀態(tài)。
13.權(quán)利要求8的信息處理系統(tǒng),其中該高速緩存線管理工具還執(zhí)行如下步驟確定該高速緩存線是獨(dú)占請(qǐng)求;確定與該高速緩存線對(duì)應(yīng)的高速緩存線當(dāng)前狀態(tài)是獨(dú)占;以及響應(yīng)于確定該高速緩存線請(qǐng)求是獨(dú)占請(qǐng)求和確定該高速緩存線當(dāng)前狀態(tài)是獨(dú)占通過該計(jì)算機(jī)網(wǎng)絡(luò)通知控制代理將它的狀態(tài)降級(jí)到無效,其中該控制代理與該獨(dú)占高速緩存線狀態(tài)相關(guān)聯(lián);以及響應(yīng)于該通知,將位于該非易失性存儲(chǔ)設(shè)備之一中的記錄更新為該本地代理具有對(duì)于該高速緩存線的獨(dú)占高速緩存線狀態(tài)。
全文摘要
提出一種用于缺省數(shù)據(jù)前送一致的高速緩存代理的系統(tǒng)和方法。節(jié)點(diǎn)控制器從本地高速緩存代理(本地處理器)或者從遠(yuǎn)程節(jié)點(diǎn)控制器接收高速緩存線請(qǐng)求。當(dāng)節(jié)點(diǎn)控制器從本地高速緩存代理接收請(qǐng)求時(shí),節(jié)點(diǎn)控制器將對(duì)應(yīng)高速緩存線發(fā)送到本地高速緩存代理,而始終維持高速緩存線前送狀態(tài)控制。當(dāng)節(jié)點(diǎn)控制器從遠(yuǎn)程節(jié)點(diǎn)控制器接收請(qǐng)求時(shí),節(jié)點(diǎn)控制器將高速緩存線隨同高速緩存線前送狀態(tài)控制一起發(fā)送到遠(yuǎn)程節(jié)點(diǎn)控制器。此外,節(jié)點(diǎn)控制器基于高速緩存線請(qǐng)求來源、請(qǐng)求類型和高速緩存線當(dāng)前狀態(tài)來執(zhí)行特定動(dòng)作。
文檔編號(hào)G06F12/08GK1991795SQ20061013934
公開日2007年7月4日 申請(qǐng)日期2006年9月26日 優(yōu)先權(quán)日2005年12月28日
發(fā)明者克里斯·多姆布勞斯基, 馬庫(kù)斯·萊瑟恩·科恩蓋, 恩甘·恩戈克·法姆 申請(qǐng)人:國(guó)際商業(yè)機(jī)器公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1