專(zhuān)利名稱(chēng):在多處理器系統(tǒng)中啟動(dòng)安全內(nèi)核的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計(jì)算機(jī)系統(tǒng),更具體地涉及開(kāi)始其中的安全操作。
背景技術(shù):
基于鏈接的系統(tǒng)拓?fù)淇砂ㄍㄟ^(guò)點(diǎn)到點(diǎn)的鏈接而連接的多個(gè)節(jié)點(diǎn)。該拓?fù)淇梢圆皇峭耆B接的;即是,給定的節(jié)點(diǎn)可以不是直接地與所有其它節(jié)點(diǎn)連接,但是任何節(jié)點(diǎn)可以根據(jù)配置的路由機(jī)制經(jīng)由多個(gè)鏈接到達(dá)任何其它節(jié)點(diǎn)。例如,節(jié)點(diǎn)可以是處理器和輸入/輸出(I/O)中心(hub),或者其它的此類(lèi)設(shè)備。
在系統(tǒng)運(yùn)行的開(kāi)始,信任(trust)處理器硬件,以按照指定的來(lái)工作,并且信任鏈接機(jī)制,以將由硬件發(fā)送的鏈路層消息從一個(gè)鏈接控制器交付到另一個(gè)鏈接控制器。另外,該鏈接機(jī)制在一個(gè)鏈接的各端提供關(guān)于硬件部件的信任的信息。類(lèi)似地,I/O中心的硬件機(jī)制被信任,以按照指定的來(lái)工作。
在特定的實(shí)現(xiàn)中,在系統(tǒng)的結(jié)構(gòu)上運(yùn)行的給定的協(xié)議可被用于訪問(wèn)存儲(chǔ)器和將全部存儲(chǔ)器的一致的外部特征和行為維護(hù)為單個(gè)物理地址空間,盡管也可以存在分離的物理存儲(chǔ)器。但是,這個(gè)一致的行為依賴(lài)于由非信任的軟件所配置的地址解碼和路由機(jī)制。因此,在驗(yàn)證該配置之前,該協(xié)議不能被信任來(lái)正確地訪問(wèn)存儲(chǔ)器。特別的,不能夠信任沒(méi)有錯(cuò)誤和不適當(dāng)?shù)牟僮?,比如存?chǔ)器別名,或者利用不同的映射使用相同的物理地址。因此,存在在這樣的一個(gè)系統(tǒng)中開(kāi)始一個(gè)信任的環(huán)境的需要。
圖1A是根據(jù)本發(fā)明的一個(gè)實(shí)施例的方法的流程圖。
圖1B是圖1A的流程圖的繼續(xù)。
圖2是根據(jù)本發(fā)明的一個(gè)實(shí)施例的系統(tǒng)的方框圖。
圖3是根據(jù)本發(fā)明的一個(gè)實(shí)施例構(gòu)建的生成樹(shù)的方框圖。
圖4是根據(jù)本發(fā)明的一個(gè)實(shí)施例的信任的硬件鏈接的方框圖。
圖5是通過(guò)發(fā)起邏輯處理器所觀察的是根據(jù)本發(fā)明的一個(gè)實(shí)施例的安全啟動(dòng)的時(shí)序圖。
圖6是通過(guò)響應(yīng)邏輯處理器所觀察的是根據(jù)本發(fā)明的一個(gè)實(shí)施例的安全啟動(dòng)的時(shí)序圖。
具體實(shí)施例方式
在不同的實(shí)施例中,在系統(tǒng)拓?fù)渲械乃刑幚砥魃线\(yùn)行的安全內(nèi)核可被安全地啟動(dòng)。另外,可以以一個(gè)安全方式來(lái)測(cè)量和記錄安全內(nèi)核的身份(identity),以及在啟動(dòng)過(guò)程中使用的一個(gè)或者多個(gè)軟件代理。在這種方式中,記錄一個(gè)根源于硬件的傳遞信任的鏈,所述硬件用于啟動(dòng)安全內(nèi)核。
在特定的實(shí)施例中,信任的硬件可包括加在主信任平臺(tái)模塊(TPM)之上的主I/O中心。一個(gè)(非安全的)操作系統(tǒng)(OS)可具有拓?fù)涞倪@個(gè)方面的知識(shí)。另外,運(yùn)行信任的軟件代理,使得它的運(yùn)行不能以任何方式被篡改。
用戶(hù)或者系統(tǒng)管理員也許期望在系統(tǒng)中加載安全內(nèi)核。如在這里所提到的,術(shù)語(yǔ)“安全”是指之后檢查系統(tǒng)并確定給定的內(nèi)核是否被加載的能力。另外,用戶(hù)或者第三方可進(jìn)一步確定內(nèi)核是否被加載到安全的存儲(chǔ)器環(huán)境中。由此,在一個(gè)實(shí)施例中,外部的代理可建立信任,或者通過(guò)向其提供在安全環(huán)境中檢查軟件的能力來(lái)決定信任包含在安全環(huán)境中的內(nèi)核。在一個(gè)實(shí)施例中,將整個(gè)區(qū)域暴露用于檢查,不如檢查代表安全存儲(chǔ)器區(qū)域的加密的散列值(例如,軟件識(shí)別值)。在一個(gè)實(shí)施例中,數(shù)字簽名的安全軟件識(shí)別值被存儲(chǔ)到可被外部代理訪問(wèn)的硬件中。
參考圖1A,顯示了根據(jù)本發(fā)明的一個(gè)實(shí)施例在一個(gè)多處理器系統(tǒng)中啟動(dòng)安全內(nèi)核的一個(gè)方法的流程圖。如圖1A所示,方法100開(kāi)始于加載一個(gè)信任的代理和一個(gè)安全的內(nèi)核到存儲(chǔ)器中(方框110)。在一個(gè)實(shí)施例中,非信任的OS可把信任的代理和安全的內(nèi)核加載到系統(tǒng)存儲(chǔ)器的一個(gè)安全區(qū)域中。該信任的代理和安全的內(nèi)核被存儲(chǔ)在海量存儲(chǔ)設(shè)備中(例如,硬盤(pán)驅(qū)動(dòng)器),并且可被加載到可以被系統(tǒng)的多個(gè)處理器訪問(wèn)的系統(tǒng)存儲(chǔ)器中。另外,OS可構(gòu)建頁(yè)表來(lái)對(duì)安全的內(nèi)核和信任的代理尋址。在一個(gè)實(shí)施例中,這些頁(yè)表的地址和長(zhǎng)度可被存儲(chǔ)在系統(tǒng)的主I/O中心中的特定位置。該OS還可存儲(chǔ)用于驗(yàn)鑒該模塊的公共密鑰。在一個(gè)實(shí)施例中,信任的代理可以是安全驗(yàn)鑒的代碼,其被用作驗(yàn)證系統(tǒng)的配置,更具體地即是系統(tǒng)的存儲(chǔ)器配置。該信任的代理還可被用于開(kāi)始安全內(nèi)核的運(yùn)行。
接著,該OS在一個(gè)發(fā)起邏輯處理器(ILP)上發(fā)布一個(gè)安全啟動(dòng)(方框120)。該安全啟動(dòng)可以是安全進(jìn)入(SENTER)指令,用以開(kāi)始安全進(jìn)入。SENTER指令的運(yùn)行可引起ILP在它的插槽(socket)和其它處理器插槽中發(fā)布專(zhuān)門(mén)的總線(xiàn)消息,并接著為后續(xù)的系統(tǒng)動(dòng)作等待一定的時(shí)間間隔。
在一個(gè)實(shí)施例中,ILP可以被直接連接到主I/O中心,主I/O中心依次可直接連接到主TPM。在這樣一個(gè)實(shí)施例中,ILP可以確認(rèn)它具有一個(gè)到主TPM的信任的路徑。例如,檢查在ILP的插槽中信任的鏈接參數(shù)。此類(lèi)路徑可以是一個(gè)被信任的硬件路徑,其不需要被固件或者硬件初始化。在本方法的運(yùn)行的這個(gè)角度上,在ILP是一個(gè)多處理器插槽的部分的實(shí)施例中,ILP還可引起插槽中的其它的邏輯處理器(OLP)暫停。
接著,ILP構(gòu)建一個(gè)生成樹(shù)(方框130)??筛鶕?jù)期望的算法構(gòu)建該生成樹(shù)。該生成樹(shù)可被用來(lái)識(shí)別與樹(shù)結(jié)構(gòu)的多個(gè)層次中的ILP節(jié)點(diǎn)相關(guān)的系統(tǒng)的所有其它的節(jié)點(diǎn),其中該ILP作為樹(shù)的根結(jié)點(diǎn)。與ILP直接連接的節(jié)點(diǎn)可以是第二層的節(jié)點(diǎn),與這些第二層的節(jié)點(diǎn)直接連接的節(jié)點(diǎn)可以是第三層的節(jié)點(diǎn),以此類(lèi)推。這樣的生成樹(shù)可被用來(lái)驗(yàn)證系統(tǒng)的合適配置并能將基于鏈接的消息路由到不同的節(jié)點(diǎn)。只有信任的硬件和鏈接可被用于構(gòu)建生成樹(shù)。在某個(gè)實(shí)施例中,生成樹(shù)提供信任的廣播機(jī)制,由此ILP能夠發(fā)送消息到每個(gè)處理器插槽;提供用于每個(gè)處理器插槽的裝置來(lái)響應(yīng)廣播消息并且當(dāng)這些響應(yīng)通過(guò)樹(shù)返回到ILP時(shí)被總結(jié);和一種壁壘機(jī)制(barrier mechanism),保證所有的處理器插槽在ILP繼續(xù)進(jìn)行下一個(gè)廣播消息之前達(dá)到一個(gè)已知的狀態(tài)。
仍然參考圖1A,在方框140,一個(gè)安全的啟動(dòng)消息被發(fā)送到生成樹(shù)上的其它插槽。在一個(gè)實(shí)施例中,利用生成樹(shù)協(xié)議發(fā)送這樣的消息,所述生成樹(shù)協(xié)議將消息從根層發(fā)送到下一層(即是下行鏈接節(jié)點(diǎn)),其依次將消息發(fā)送到次低的層,依次類(lèi)推。作為響應(yīng),每一層可將響應(yīng)包發(fā)送回它的傳遞層(即是上行鏈路節(jié)點(diǎn))。由此,當(dāng)所有節(jié)點(diǎn)接收消息并適當(dāng)?shù)仨憫?yīng)時(shí),最終的總結(jié)響應(yīng)包可被傳遞回根結(jié)點(diǎn)。在本方法的運(yùn)行的這個(gè)角度上,在每個(gè)插槽上的響應(yīng)邏輯處理器(RLP)可引起插槽上的OLP暫停。
現(xiàn)在參考圖1B,當(dāng)ILP接收表示所有其它節(jié)點(diǎn)已經(jīng)適當(dāng)?shù)亟邮詹㈨憫?yīng)了SENTER指令的總結(jié)響應(yīng)時(shí),該ILP可驗(yàn)證信任的代理(方框150)。該驗(yàn)證包括,例如執(zhí)行散列計(jì)算并將結(jié)果與之前存儲(chǔ)的散列值比較。該驗(yàn)證信息可接著被發(fā)送到RLP(方框160)。RLP可各自分別驗(yàn)證其能夠在受保護(hù)的存儲(chǔ)器位置訪問(wèn)信任的代理,并且驗(yàn)證信任的代理(方框170)。
當(dāng)ILP為每一個(gè)RLP接收到驗(yàn)證總結(jié)響應(yīng)時(shí),ILP可接著控制在系統(tǒng)的所有插槽上的信任的代理的運(yùn)行(方框180)。例如,在一個(gè)實(shí)施例中,ILP可使用壁壘機(jī)制來(lái)開(kāi)始部分的信任的代理,等待來(lái)自每個(gè)插槽的、它已經(jīng)執(zhí)行了該信任的代理的那個(gè)部分的指示,并進(jìn)行到下一個(gè)部分??衫蒙厦嬗懻摰纳蓸?shù)發(fā)送這樣的指示。
硬件使用生成樹(shù)在每個(gè)處理器插槽啟動(dòng)同樣的信任的代理。該信任的代理可依照單指令多數(shù)據(jù)(SIMD)的形式在每個(gè)處理器插槽上并行地運(yùn)行。這些信任的代理的運(yùn)行協(xié)力利用與ILP協(xié)調(diào)和通信的生成樹(shù)來(lái)完整地驗(yàn)證拓?fù)涞拇鎯?chǔ)器配置。當(dāng)信任的代理成功地驗(yàn)證了該配置,在ILP上運(yùn)行的信任的代理可驗(yàn)證頁(yè)表,該頁(yè)表用作對(duì)安全內(nèi)核尋址、計(jì)算內(nèi)核散列、以及在主TPM中記錄散列。
在信任的代理的運(yùn)行的結(jié)束處,ILP可啟動(dòng)安全內(nèi)核(方框190)。在此時(shí),安全內(nèi)核接管系統(tǒng)操作,并可根據(jù)其中的代碼運(yùn)行(方框195)。例如,安全內(nèi)核可在系統(tǒng)的所有插槽上運(yùn)行。
現(xiàn)在參考圖2,顯示了根據(jù)本發(fā)明的一個(gè)實(shí)施例的系統(tǒng)的框圖。如圖2所示,系統(tǒng)200可以是多處理器系統(tǒng),具有任意的部分連接的點(diǎn)到點(diǎn)體系結(jié)構(gòu)。即是,系統(tǒng)200的某些節(jié)點(diǎn)可以直接連接在一起,同時(shí)其它節(jié)點(diǎn)可經(jīng)由連接在它們之間的中間節(jié)點(diǎn)來(lái)通信。在一個(gè)實(shí)施例中,系統(tǒng)200可以是并發(fā)多處理(SMP)服務(wù)器計(jì)算機(jī),盡管本發(fā)明的范圍不限于此。
即是,盡管在圖2中顯示為服務(wù)器平臺(tái),可以理解在其它實(shí)施例中,系統(tǒng)可以是一個(gè)期望的臺(tái)式計(jì)算機(jī)、可動(dòng)裝置、服務(wù)器或者其它此類(lèi)平臺(tái)中的任何一個(gè)。在某些實(shí)施例中,圖2的不同部件之間的互連可以是點(diǎn)對(duì)點(diǎn)互連,其在系統(tǒng)200內(nèi)提供一致的共享存儲(chǔ)器,并且在一個(gè)這樣的實(shí)施例中,它們之間用于通信的互連和協(xié)議可以組成通用系統(tǒng)接口(CIS)。用這種方式,系統(tǒng)200的多個(gè)處理器、存儲(chǔ)器和其它的部件可一致地互相連接。
在圖2的實(shí)施例中,系統(tǒng)200的所有部件可共同地形成一個(gè)一致的系統(tǒng)。這樣一個(gè)一致的系統(tǒng)可適應(yīng)一致的事務(wù),而不需對(duì)事務(wù)所流經(jīng)的通道進(jìn)行任何排序。雖然在此討論作一個(gè)一致的系統(tǒng),可以理解一致和非一致的事務(wù)都可以通過(guò)并且由系統(tǒng)中的部件執(zhí)行。例如,一個(gè)、一些或者所有與系統(tǒng)200相關(guān)的存儲(chǔ)器的區(qū)域可為非一致的事務(wù)保留。并且,可以理解本發(fā)明的實(shí)施例不限于一致的系統(tǒng)。
如圖2所示,第一處理器插槽210可包括多個(gè)處理核心212a、212b、212c和212d。盡管圖2所示的實(shí)施例包括四個(gè)這樣的處理核心,可以理解在其它的實(shí)施例中,處理器插槽可包括更多或者更少的這樣的核心。如圖2進(jìn)一步所示,處理器核心可以經(jīng)由總線(xiàn)或者環(huán)215連接到一起。在某些實(shí)施例中,比如根據(jù)CSI協(xié)議的實(shí)施例,處理器插槽還包括附加的邏輯功能性,比如存儲(chǔ)控制器功能,和CSI包生成和路由機(jī)制。
例如,在圖2中在處理器插槽210內(nèi)示出的是邏輯功能性216,其可包括存儲(chǔ)控制器和其它邏輯功能性。邏輯功能性216可將節(jié)點(diǎn)標(biāo)識(shí)符(NID)和處理器插槽關(guān)聯(lián)。如圖2中所示,處理器插槽210可具有一個(gè)節(jié)點(diǎn)標(biāo)識(shí)符,在一個(gè)實(shí)施例中指示它是發(fā)起邏輯處理器。邏輯功能性216可包括源地址解碼器,該解碼器為物理存儲(chǔ)器映射中的所有項(xiàng)目將地址映射到對(duì)應(yīng)的節(jié)點(diǎn)(例如NID)。如果配置合適,每個(gè)處理器插槽可包括具有源地址解碼器的邏輯功能性,該源地址解碼器將相同地址對(duì)應(yīng)到相同節(jié)點(diǎn)。在一個(gè)實(shí)施例中,NID可以由不信任的固件在系統(tǒng)初始化時(shí)分配,并且由此不是唯一的。這樣在某些實(shí)施例中,信任的代理可被用于確定每一個(gè)節(jié)點(diǎn)的NID是否實(shí)際上是唯一的。在某些實(shí)施例中,邏輯功能性216還可包括將地址映射到物理存儲(chǔ)器的目標(biāo)地址解碼器,例如,直接連接到給定的處理器插槽的物理存儲(chǔ)器。
存儲(chǔ)器218可被直接連接到處理器插槽210。雖然存儲(chǔ)器218可被直接連接到處理器插槽210,可以理解在各種實(shí)施例中,系統(tǒng)200中的任何處理器插槽都可以訪問(wèn)存儲(chǔ)器218。存儲(chǔ)器218可利用邏輯功能性216內(nèi)的存儲(chǔ)控制器功能性與處理器插槽210連接。另外,雖然沒(méi)有在圖2中示出,可以理解每個(gè)處理器插槽具有一個(gè)或者多個(gè)與其連接的存儲(chǔ)器。雖然每個(gè)插槽具有一個(gè)直接與其連接的物理存儲(chǔ)器,比如高速緩存的附加存儲(chǔ)器單元可與處理器插槽內(nèi)的各個(gè)處理核心關(guān)聯(lián)。在一個(gè)實(shí)施例中,系統(tǒng)內(nèi)的所有存儲(chǔ)器可被尋址為單個(gè)物理地址空間,盡管多個(gè)這樣的存儲(chǔ)器存在,每個(gè)這樣的存儲(chǔ)器都被直接連接到不同的處理器插槽。
進(jìn)一步如圖2所示,處理器插槽210直接連接到處理器插槽220、處理器插槽250和處理器插槽260。另外,處理器插槽210直接連接到主I/O中心290,其依次直接連接到主TPM 292。雖然不在這里詳細(xì)討論,處理器插槽230、240、270和280(和插槽220、250和260)可具有類(lèi)似的處理核心、總線(xiàn)、環(huán)和邏輯功能性,如關(guān)于處理器插槽210所討論的。最后,進(jìn)一步在圖2中顯示的是第二I/O中心295,其直接連接到處理器插槽250、260、270和280。
I/O中心290和295可各自包括多個(gè)端口,用以和與其連接的設(shè)備進(jìn)行交互。例如,在某些實(shí)施例中,這樣的I/O設(shè)備可以是根據(jù)一個(gè)或者多個(gè)總線(xiàn)方案的設(shè)備。在一個(gè)實(shí)施例中,這樣的I/O設(shè)備可以是根據(jù)互連外圍設(shè)備ExpressTM實(shí)體層規(guī)范版本1.0a(Peripheral ComponentInterconnect Express Base Specification Version 1.0a)(2002年7月出版)的互連外圍設(shè)備(PCI)ExpressTM設(shè)備。主TPM292可是根據(jù)值得依賴(lài)的計(jì)算平臺(tái)聯(lián)盟(TCPA)主規(guī)范版本1.1b(2002年2月22日出版)的一個(gè)信任的平臺(tái)模塊。主TPM292可保護(hù)與創(chuàng)建和維護(hù)安全操作環(huán)境相關(guān)的數(shù)據(jù)。在一個(gè)特定的實(shí)施例中,主TPM292可包括用于特別加密、解密和/或者驗(yàn)證過(guò)程的密鑰。主TPM292還可包括存儲(chǔ)空間,用來(lái)保存提要數(shù)據(jù)和其它用在安全環(huán)境中的信息。在一個(gè)實(shí)施例中,在主TPM292中的存儲(chǔ)空間可包括非易失性存儲(chǔ)器(例如,閃存),用來(lái)在掉電的情況下保持其內(nèi)容。
雖然在圖2的實(shí)施例中顯示為每個(gè)處理器插槽包括四個(gè)或者五個(gè)直接連接,其它實(shí)施例可以在不同插槽之間具有更多或者更少的直接連接。并且,可以理解在不同的實(shí)施例中,可以存在更多或者更少的插槽,其每一個(gè)具有不同數(shù)目的核心和不同數(shù)量的邏輯功能性。例如,一個(gè)單處理器系統(tǒng)可實(shí)現(xiàn)成具有一個(gè)單I/O中心和與其連接的關(guān)聯(lián)的I/O設(shè)備?;蛘?,可實(shí)現(xiàn)具有不同數(shù)目的處理器(比如4、8、16或32)的多處理器系統(tǒng),并且適當(dāng)數(shù)目的I/O中心和其它部件可連接到其上。任何這樣的平臺(tái)拓?fù)淇衫命c(diǎn)到點(diǎn)的互連來(lái)提供系統(tǒng)中一致部分的一致性,還允許連接到其上的I/O設(shè)備之間的非一致的對(duì)等事務(wù)。并且,在某些實(shí)施例中,附加部件可出現(xiàn)在系統(tǒng)200中,比如交叉開(kāi)關(guān)、路由器等等。
參考圖3,顯示了根據(jù)本發(fā)明的實(shí)施例的生成樹(shù)的框圖。如圖3所示,生成樹(shù)300可是由ILP構(gòu)建的生成樹(shù)的圖形表示。更具體地,生成樹(shù)300對(duì)應(yīng)圖2的系統(tǒng)200的生成樹(shù),其中處理器插槽210包括ILP。注意到生成樹(shù)的每個(gè)節(jié)點(diǎn)具有一個(gè)節(jié)點(diǎn)標(biāo)識(shí)符,它對(duì)應(yīng)于圖2的匹配處理器插槽的節(jié)點(diǎn)識(shí)別符。如圖3所示,根層節(jié)點(diǎn)310具有節(jié)點(diǎn)識(shí)別符1,對(duì)應(yīng)于圖2的處理器插槽210。二層的節(jié)點(diǎn)包括直接與處理器插槽210連接的節(jié)點(diǎn)。特別地,如圖3所示,二層的節(jié)點(diǎn)包括節(jié)點(diǎn)315、320、325和330,其每一個(gè)對(duì)應(yīng)于系統(tǒng)200中直接與處理器插槽210相連接的節(jié)點(diǎn),即處理器插槽220、250和260以及主I/O中心290。
第三層的節(jié)點(diǎn)包括節(jié)點(diǎn)335、340和350。這些節(jié)點(diǎn)的每一個(gè)對(duì)應(yīng)直接與第二層節(jié)點(diǎn)相連接的節(jié)點(diǎn)。例如,節(jié)點(diǎn)335(例如對(duì)應(yīng)于I/O中心295)直接連接到處理器插槽250;節(jié)點(diǎn)340(例如對(duì)應(yīng)于處理器插槽270)直接連接到處理器插槽260;和節(jié)點(diǎn)350(例如對(duì)應(yīng)于處理器軟件230)直接連接到處理器插槽220。最后,第四層的節(jié)點(diǎn)355和360,這兩者都直接連接到第三層節(jié)點(diǎn),即節(jié)點(diǎn)340。
這樣,生成樹(shù)識(shí)別出在系統(tǒng)內(nèi)參與的插槽的數(shù)量。系統(tǒng)中的每個(gè)插槽(除了根插槽)可具有一個(gè)被識(shí)別為上行鏈接(uplink)的鏈接。由ILP生成的廣播消息可從它的上行鏈接由RLP接收。另外,除了那些葉子(例如圖3的第四層節(jié)點(diǎn))外的所有插槽具有被識(shí)別為下行鏈接的鏈接。每個(gè)插槽可給它們的下行鏈接傳播廣播消息。在某些實(shí)施例中,對(duì)應(yīng)于如圖3中所示的圖形表示的查找表或者其它數(shù)據(jù)結(jié)構(gòu)可被存儲(chǔ)在與ILP所使用的處理器插槽210相關(guān)聯(lián)的存儲(chǔ)器中。
這樣,在構(gòu)造生成樹(shù)結(jié)束時(shí),生成樹(shù)包括關(guān)于節(jié)點(diǎn)數(shù)目及其層數(shù)的信息。在生成樹(shù)枚舉結(jié)束時(shí),唯一的標(biāo)識(shí)符可被分配給每個(gè)節(jié)點(diǎn),并且還可以確定和存儲(chǔ)在一個(gè)給定的節(jié)點(diǎn)之下的節(jié)點(diǎn)計(jì)數(shù)。這樣,如圖3中所示,除了每個(gè)節(jié)點(diǎn)的節(jié)點(diǎn)標(biāo)識(shí)符(也如圖2中所示)外,還會(huì)存在一個(gè)附加的生成樹(shù)的唯一標(biāo)識(shí)符(例如,節(jié)點(diǎn)ID1具有一個(gè)生成樹(shù)識(shí)別符1,然而節(jié)點(diǎn)ID5具有一個(gè)生成樹(shù)識(shí)別符2)。
現(xiàn)在參考圖4,顯示了根據(jù)本發(fā)明的一個(gè)實(shí)施例的信任的鏈接硬件的框圖。該信任的鏈接硬件可被用于提供在處理器插槽內(nèi)的信任的硬件鏈接,以在信任的代理的執(zhí)行完成之前使用??尚湃卧撔湃蔚逆溄佑布?,因?yàn)檠刂溄硬僮骱蛡魉拖r(shí)不需要固件或者軟件。信任的硬件鏈接455a和455b可被包含在處理器插槽內(nèi)(例如插槽410a和410b)。雖然在圖4中顯示兩個(gè)這樣的插槽,這里討論插槽410a及其部件。如圖4所示,硬件鏈接455a可被連接在處理器核心420a和鏈接控制器450a之間。使用信任的硬件鏈接455a,信任的鏈接消息可被發(fā)送到核心420a并從核心420a接收,而不需要依靠軟件或者固件。
相反,對(duì)于一般的系統(tǒng)消息發(fā)送和包傳輸,經(jīng)由總線(xiàn)或者環(huán)425a通過(guò)核心接口430a和協(xié)議引擎435a向/從核心420a傳播基于鏈接的消息。在一個(gè)實(shí)施例中,協(xié)議引擎435a可以是一個(gè)CSI協(xié)議引擎,用以將數(shù)據(jù)和消息格式化到CSI包中。另外,總線(xiàn)440a通過(guò)交叉開(kāi)關(guān)445a連接到協(xié)議引擎435a。從這里,數(shù)據(jù)和消息可被發(fā)送到與處理器插槽關(guān)聯(lián)的其它節(jié)點(diǎn)、存儲(chǔ)器、發(fā)送到鏈接控制器450a,或者其它期望的位置。
因?yàn)榘ê诵慕涌?30a、協(xié)議引擎435a和交叉開(kāi)關(guān)445a的部件是由一個(gè)不信任的固件建立的。在完成信任的代理的運(yùn)行之前這個(gè)通路不提供不可欺騙的訪問(wèn)通路。這樣,在各種實(shí)施例中,硬件鏈接455a可在核心420a和鏈接控制器450b之間提供不可欺騙的訪問(wèn)通路,這在信任的代理驗(yàn)證系統(tǒng)之前特別的適用。例如,在驗(yàn)證之前,鏈接控制器(比如鏈接控制器450a和鏈接控制器450b)可被用于利用來(lái)自核心的特殊指令生成鏈接消息。一個(gè)接收鏈接控制器就可以獲取鏈接消息內(nèi)容,并經(jīng)由信任的硬件鏈接(諸如信任的硬件鏈接455a)使它可以直接為處理器核心所用。在某些實(shí)施例中,可出現(xiàn)從鏈接控制器到處理器核心的事件機(jī)制,使得核心內(nèi)的微碼可被通知在信任的硬件鏈接處新鏈接消息的到達(dá)。在鏈接初始化期間,關(guān)于相鄰節(jié)點(diǎn)的信息可被鏈接控制器獲取,并且對(duì)于協(xié)議引擎和處理器核心可用。在這樣的實(shí)施例中,這樣的信息可包括相鄰節(jié)點(diǎn)的節(jié)點(diǎn)類(lèi)型和節(jié)點(diǎn)標(biāo)識(shí)符。
如圖4中進(jìn)一步所示,對(duì)應(yīng)于那些參考處理器插槽410a而在上面討論的部件可以在處理器插槽410b中找到。另外,在兩個(gè)處理器之間的信任的鏈接可經(jīng)由連接在鏈接控制器450a和鏈接控制器450b之間的硬件鏈接460實(shí)現(xiàn)。這個(gè)信任的鏈接可被用于在信任的代理驗(yàn)證系統(tǒng)之前在處理器插槽之間發(fā)送基于鏈接的消息。
現(xiàn)在參考圖5,顯示了ILP所觀察的、根據(jù)本發(fā)明的一個(gè)實(shí)施例的安全啟動(dòng)的時(shí)序圖。如圖5中所示,安全啟動(dòng)500開(kāi)始于將一個(gè)信任的代理和安全內(nèi)核加載到存儲(chǔ)器(段502)中。如上所討論的,在一個(gè)實(shí)施例中非信任的OS可執(zhí)行該加載操作。接著,SENTER指令可被發(fā)送到包括期望的ILP的處理器插槽(段504)。例如,這樣的指令可由一個(gè)非信任的OS發(fā)布。
當(dāng)ILP接收到SENTER指令時(shí),它可在發(fā)布一個(gè)類(lèi)似的指令到其插槽內(nèi)的其它邏輯處理器和到其它的處理器插槽,以及更特別地到響應(yīng)邏輯處理器(RLP),在每個(gè)處理器插槽中可以有它們中的一個(gè)(時(shí)間505)。對(duì)于哪個(gè)邏輯處理器是ILP和/或RLP的確定可在不同的實(shí)施例中變化,并且可基于軟件或者固件的決定。例如,在一個(gè)實(shí)施例中,ILP可被OS選擇。另外,其它處理器插槽內(nèi)的RLP可被給定的插槽內(nèi)的所有邏輯處理器選擇。在時(shí)間510,ILP可檢驗(yàn)它是否直接連接到主I/O中心。接著在時(shí)間515,ILP可廣播一個(gè)SENTER總線(xiàn)消息到它插槽內(nèi)的OLP,并且每個(gè)OLP可響應(yīng)SENTER指令(時(shí)間520)。
在這個(gè)時(shí)間,可以開(kāi)始一個(gè)SENTER本地事件(段522)。在時(shí)間525,每個(gè)OLP可發(fā)布一個(gè)確認(rèn)(ACK)并進(jìn)入一個(gè)等待狀態(tài)。這個(gè)等待狀態(tài)可由OLP維持,直到后來(lái)被ILP命令離開(kāi)這個(gè)狀態(tài)。
接著可進(jìn)入SENTER全局指令階段(段528)。首先,ILP可在系統(tǒng)內(nèi)發(fā)送一個(gè)尋找來(lái)自節(jié)點(diǎn)的確定(ACK)的消息。當(dāng)ILP接收了ACK時(shí),它可發(fā)送連續(xù)的指令(時(shí)間530)。在這個(gè)時(shí)間,ILP可構(gòu)建一個(gè)生成樹(shù)。
當(dāng)生成樹(shù)的構(gòu)建呈現(xiàn)不同的形式時(shí),在一個(gè)實(shí)施例中,生成樹(shù)可通過(guò)將作為鏈接層消息廣播的脈沖沿樹(shù)向下發(fā)送到下一個(gè)更低的層,并接收沿樹(shù)向上的返回來(lái)構(gòu)建,所述返回是包含了累計(jì)結(jié)果的鏈接層消息。通過(guò)這樣的方式,接收脈沖消息的每個(gè)RLP可將其轉(zhuǎn)發(fā)到它的下行鏈接,并且從下行鏈接接收返回消息。被發(fā)送的該生成樹(shù)基于鏈接的消息可使每個(gè)插槽設(shè)立每個(gè)插槽的層。接著,會(huì)發(fā)生生成樹(shù)枚舉,其中唯一的標(biāo)識(shí)符被分配給每個(gè)節(jié)點(diǎn)。由此,在生成樹(shù)完成之后,每個(gè)插槽被分配了一個(gè)唯一的標(biāo)識(shí)符和一個(gè)層,進(jìn)一步指明它相對(duì)于ILP的相對(duì)位置和到/從插槽的上行鏈路和下行鏈路連接。
在驗(yàn)證和完成生成樹(shù)之后,ILP可發(fā)送SENTER指令到所有其它處理器插槽(時(shí)間535)。接著,ILP可合并從生成樹(shù)上的節(jié)點(diǎn)接收的總結(jié)響應(yīng)(時(shí)間540)。用于該樹(shù)的一個(gè)算法檢驗(yàn)拓?fù)涞能浖渲媒o已經(jīng)每一個(gè)節(jié)點(diǎn)一個(gè)唯一的可在系統(tǒng)的路由協(xié)議中使用的標(biāo)識(shí)符。
接著,ILP可測(cè)量(即計(jì)算散列)和驗(yàn)鑒(即檢驗(yàn)一個(gè)簽名)它在主I/O中心中指定的地址上找到的信任的代理,并且將散列值、信任的代理的基地址和長(zhǎng)度,以及用于檢驗(yàn)簽名的公共密鑰的散列廣播到其它處理器插槽(時(shí)間550)??衫蒙蓸?shù)協(xié)議發(fā)生這樣一個(gè)廣播。當(dāng)其它的插槽驗(yàn)證該信任的代理,它們?cè)跁r(shí)間555發(fā)送之后將被ILP合并的響應(yīng)消息。如果每個(gè)插槽發(fā)送一個(gè)肯定的響應(yīng),在時(shí)間560ILP可加載、記錄信任的代理的散列(例如在主TPM中)并啟動(dòng)信任的代理。如果一個(gè)或者多個(gè)插槽未能肯定地響應(yīng),在某些實(shí)施例中就終止安全啟動(dòng)。在如圖5所示的實(shí)施例中,信任的代理可以是安全的信任的代理(例如,有資格的SINIT-AC,用于安全初始化驗(yàn)鑒的代碼),盡管本發(fā)明的范圍沒(méi)有那么被限制。
接著,可運(yùn)行信任的代理(段572)。在一個(gè)實(shí)施例中,信任的代理的運(yùn)行可發(fā)生在松散地鎖定步進(jìn)(lock-step)的SIMD運(yùn)行中。即是,相同的信任的代理可在所有的插槽上執(zhí)行,在代碼內(nèi)特定的壁壘處同步。例如,ILP可在所有鏈接上發(fā)布包括操作碼和數(shù)據(jù)的廣播消息。每個(gè)RLP可獲得數(shù)據(jù)并轉(zhuǎn)發(fā)該消息到它的下行鏈接(如果有的話(huà)),并處理該數(shù)據(jù)。如果RLP是一個(gè)葉子,它可發(fā)送響應(yīng)消息回到它的上行鏈接。如果RLP是一個(gè)中間節(jié)點(diǎn),它等待來(lái)自它的下行鏈接的所有響應(yīng),利用操作碼總結(jié)所有的響應(yīng),并將總結(jié)的響應(yīng)發(fā)送給它的上行鏈接。當(dāng)最后的ILP獲得來(lái)自所有其它插槽的總結(jié)響應(yīng)時(shí),可繼續(xù)以類(lèi)似的方式運(yùn)行到下一個(gè)壁壘位置。
在運(yùn)行中,信任的代理可驗(yàn)證本地配置和每個(gè)處理器插槽的源地址解碼器(時(shí)間570)。另外,信任的代理可為每個(gè)處理器插槽驗(yàn)證每個(gè)節(jié)點(diǎn)標(biāo)識(shí)符的唯一性(時(shí)間575)。例如,信任的代理可引起源地址解碼器被發(fā)送到ILP(時(shí)間580)。接著,ILP可合并和分析源地址解碼器的比較結(jié)果(時(shí)間585)。接著,通過(guò)驗(yàn)證、加載、記錄和啟動(dòng)安全內(nèi)核可終止信任的代理(時(shí)間590)。在某些實(shí)施例中,這樣的驗(yàn)證信息(例如散列值)可被存儲(chǔ)在主TPM中。在一個(gè)實(shí)施例中,安全的內(nèi)核可以是安全的虛擬機(jī)監(jiān)視器(SVMM),盡管本發(fā)明的范圍沒(méi)有那么被限制。
仍然參考圖5,監(jiān)視器初始化(段592)可以使ILP用特別的指令喚醒所有的插槽中的處理器核心,用以使所有的處理器退出它們的等待狀態(tài)。這樣,在段596,所有的監(jiān)視器加入,以及在時(shí)間598所有的處理器核心參加并且安全內(nèi)核操作開(kāi)始(段599)。
現(xiàn)在參考圖6,顯示根據(jù)本發(fā)明的一個(gè)實(shí)施例的安全啟動(dòng)的時(shí)序圖。更具體地,圖6顯示響應(yīng)邏輯處理器(RPL)所觀察到的安全啟動(dòng)的時(shí)間選擇。這樣,在圖6中看到的安全啟動(dòng)600非常接近地對(duì)應(yīng)于發(fā)生在圖5中的時(shí)序圖。首先,SENTER門(mén)鈴事件發(fā)生(段604)。在這樣一個(gè)事件期間,RLP被來(lái)自ILP的SENTER門(mén)鈴指令所中斷(時(shí)間605)。接著,在時(shí)間610,RLP發(fā)送SENTER下行鏈接消息到它的下行鏈接節(jié)點(diǎn)(如果有的話(huà))。在時(shí)間615,該RLP將SENTER消息廣播到它的插槽內(nèi)的所有處理器(即是OLP的)。插槽中的每個(gè)其它的邏輯處理器可響應(yīng)SENTER循環(huán)(時(shí)間620)。接著SENTER本地事件(段622)發(fā)生,其中每個(gè)OLP發(fā)布回一個(gè)ACK到ILP并且OLP進(jìn)入等待狀態(tài)(在時(shí)間625)。
在段628,SENTER門(mén)鈴全局時(shí)間發(fā)生。當(dāng)RLP接收到所有來(lái)自下行鏈接節(jié)點(diǎn)的ACK時(shí),它發(fā)送一個(gè)連續(xù)的消息到ILP(時(shí)間630)。在時(shí)間635,該RLP合并此類(lèi)連續(xù)的消息。接著,在時(shí)間640,該RLP可接收來(lái)自ILP的驗(yàn)證信息。在一個(gè)實(shí)施例中,ILP可發(fā)送關(guān)于信任的代理的散列值、基地址、大小和公共密鑰散列的信息。另外,在這個(gè)時(shí)間,該RLP可轉(zhuǎn)發(fā)該信息到它的下行鏈接節(jié)點(diǎn)。在時(shí)間645,該RLP可將接收的散列和信任的代理的散列進(jìn)行比較。
在時(shí)間650,該RLP從它的下游節(jié)點(diǎn)接收驗(yàn)證消息并合并這些結(jié)果。并且,該RLP通過(guò)它的上游節(jié)點(diǎn)向上發(fā)送一個(gè)總結(jié)的響應(yīng)到ILP。接著,基于從ILP接收的信息,該RLP加載、驗(yàn)鑒、檢查信任的代理的簽名,并啟動(dòng)信任的代理(時(shí)間655)。
如果所有的處理器插槽到達(dá)這個(gè)點(diǎn),信任的代理運(yùn)行(段672)。特別地,信任的代理驗(yàn)證本地配置和每個(gè)處理器插槽的節(jié)點(diǎn)ID(時(shí)間660),并檢查和驗(yàn)證插槽內(nèi)的源地址解碼器(時(shí)間665和670)。該RLP可接收來(lái)自下行鏈接插槽的驗(yàn)證的結(jié)果,合并并向上發(fā)送到它的上行鏈接處理器或者ILP(時(shí)間675)。接著,該RLP插槽進(jìn)入特定的等待狀態(tài)(在時(shí)間680)。
在這個(gè)點(diǎn)上,安全內(nèi)核被啟動(dòng),首先在ILP插槽上(段692)。接著,在時(shí)間685,ILP上的安全內(nèi)核用特定的喚醒指令喚醒所有插槽上的所有處理器核心。在這個(gè)時(shí)間,安全內(nèi)核可在系統(tǒng)的一些或者所有處理器上繼續(xù)它的運(yùn)行。例如,在安全啟動(dòng)之后,可創(chuàng)建一個(gè)虛擬機(jī)環(huán)境,其中SVMM可作為系統(tǒng)內(nèi)的最高權(quán)限的代碼來(lái)操作,并且可被用于允許或者拒絕OS或者虛擬機(jī)內(nèi)的應(yīng)用程序?qū)δ承┫到y(tǒng)資源的直接訪問(wèn)。
通過(guò)這種方式,本發(fā)明的實(shí)施例可在一個(gè)被不信任的軟件和固件所配置的專(zhuān)用復(fù)雜服務(wù)器硬件上記錄和啟動(dòng)一個(gè)信任的安全內(nèi)核。該內(nèi)核可接著進(jìn)行構(gòu)建、記錄和證明一個(gè)信任的服務(wù)器執(zhí)行環(huán)境。另外,在特定的環(huán)境中,信任的代理可以SIMD的方式在一個(gè)服務(wù)器拓?fù)涞乃刑幚砥鞑宀凵线\(yùn)行,并且通過(guò)使用信任的壁壘/廣播機(jī)制,可以驗(yàn)證專(zhuān)用的復(fù)雜服務(wù)器拓?fù)涞呐渲茫⑶彝ㄟ^(guò)從硬件通過(guò)信任的代理傳遞信任,可記錄和啟動(dòng)安全的環(huán)境。
實(shí)施例可被實(shí)現(xiàn)在代碼中并且被存儲(chǔ)在已經(jīng)在其上存儲(chǔ)了指令的存儲(chǔ)介質(zhì)上,所述指令被用于對(duì)計(jì)算機(jī)系統(tǒng)進(jìn)行編程以執(zhí)行這些指令。該存儲(chǔ)介質(zhì)可包括,但不局限于任何類(lèi)型的盤(pán),包括軟盤(pán)、光盤(pán)、壓縮盤(pán)只讀存儲(chǔ)器(CD-ROM)、可重寫(xiě)壓縮盤(pán)(CD-RW)和磁光盤(pán),半導(dǎo)體設(shè)備,比如只讀存儲(chǔ)器(ROM)、隨機(jī)訪問(wèn)存儲(chǔ)器(RAM)、可擦可編程只讀存儲(chǔ)器(EPROM)、閃存、電可擦除只讀存儲(chǔ)器(EEPROM)、磁或者光卡,或者任何類(lèi)型的適合存儲(chǔ)電子指令的介質(zhì)。
雖然用有限的實(shí)施例描述了本發(fā)明,本領(lǐng)域的技術(shù)人員可理解各種修改和變體。期望所附的權(quán)利要求覆蓋了落在本發(fā)明的真實(shí)的精神和范圍內(nèi)的所有這些修改和變體。
權(quán)利要求
1.一種方法,包括在具有部分連接的拓?fù)浠蛘咄耆B接的拓?fù)涞南到y(tǒng)的多個(gè)處理器上安全地啟動(dòng)安全內(nèi)核。
2.權(quán)利要求1的方法,還包括使用信任的代理,以安全地啟動(dòng)安全內(nèi)核。
3.權(quán)利要求2的方法,還包括測(cè)量安全內(nèi)核的身份并在傳遞信任的鏈上記錄該身份。
4.權(quán)利要求2的方法,還包括利用信任的代理來(lái)驗(yàn)證系統(tǒng)的存儲(chǔ)器配置。
5.權(quán)利要求4的方法,其中存儲(chǔ)器配置包括具有單一地址空間的分布式存儲(chǔ)器。
6.權(quán)利要求1的方法,其中多個(gè)處理器經(jīng)由專(zhuān)門(mén)的點(diǎn)到點(diǎn)互連連接。
7.一種方法,包括檢驗(yàn)系統(tǒng)的發(fā)起邏輯處理器;如果發(fā)起邏輯處理器被檢驗(yàn),用發(fā)起邏輯處理器來(lái)驗(yàn)證信任的代理;并且如果信任的代理被驗(yàn)證,在系統(tǒng)的多個(gè)處理器上啟動(dòng)信任的代理。
8.權(quán)利要求7的方法,還包括在系統(tǒng)的主中心代理的保護(hù)部分存儲(chǔ)信任的代理的地址信息。
9.權(quán)利要求7的方法,還包括在多個(gè)處理器上構(gòu)建生成樹(shù)。
10.權(quán)利要求9的方法,還包括使用生成樹(shù)在多個(gè)處理器上啟動(dòng)信任的代理。
11.權(quán)利要求7的方法,還包括利用壁壘機(jī)制運(yùn)行信任的代理。
12.權(quán)利要求11的方法,還包括在運(yùn)行信任的代理之后運(yùn)行安全內(nèi)核。
13.權(quán)利要求7的方法,還包括驗(yàn)證系統(tǒng)的存儲(chǔ)器配置。
14.權(quán)利要求7的方法,其中檢驗(yàn)發(fā)起邏輯處理器包括確認(rèn)發(fā)起邏輯處理器和主中心代理之間的直接連接。
15.一種方法,包括利用發(fā)起邏輯處理器在系統(tǒng)的多個(gè)處理器上構(gòu)建生成樹(shù);以及使用生成樹(shù)在多個(gè)處理器上啟動(dòng)信任的代理。
16.權(quán)利要求15的方法,還包括在多個(gè)處理器上運(yùn)行信任的代理。
17.權(quán)利要求15的方法,還包括利用非安全的操作系統(tǒng)將安全的內(nèi)核加載到系統(tǒng)的存儲(chǔ)器中。
18.權(quán)利要求17的方法,還包括將關(guān)于安全的內(nèi)核和信任的代理的信息存儲(chǔ)到系統(tǒng)的主中心代理中。
19.權(quán)利要求15的方法,還包括用該生成樹(shù)中的唯一的標(biāo)識(shí)符來(lái)枚舉多個(gè)處理器的每一個(gè)。
20.權(quán)利要求19的方法,還包括將唯一的標(biāo)識(shí)符與那些同多個(gè)處理器的每一個(gè)相連接的多個(gè)節(jié)點(diǎn)相關(guān)聯(lián)。
21.權(quán)利要求15的方法,其中構(gòu)建生成樹(shù)包括將第一消息廣播到直接連接的節(jié)點(diǎn)并接收來(lái)自直接連接的節(jié)點(diǎn)的返回消息。
22.權(quán)利要求21的方法,還包括將來(lái)自直接連接的節(jié)點(diǎn)的第一消息轉(zhuǎn)發(fā)到與其直接連接的下行鏈接節(jié)點(diǎn)。
23.權(quán)利要求15的方法,還包括將發(fā)起邏輯處理器選為生成樹(shù)的根。
24.一種設(shè)備,包括一個(gè)處理器核心;一個(gè)鏈接控制器;信任的硬件鏈接,用以將處理器核心直接連接到鏈接控制器。
25.權(quán)利要求24的設(shè)備,還包括與處理器核心直接連接的協(xié)議引擎,該協(xié)議引擎由非信任的代理配置。
26.權(quán)利要求25的設(shè)備,其中協(xié)議引擎包括通用系統(tǒng)接口引擎。
27.權(quán)利要求25的設(shè)備,其中協(xié)議引擎被連接到鏈接控制器。
28.權(quán)利要求24的設(shè)備,其中鏈接控制器適于在信任的代理已經(jīng)驗(yàn)證該設(shè)備之前,經(jīng)由信任的硬件鏈接與處理器核心通信。
29.權(quán)利要求24的設(shè)備,其中處理器核心、信任的硬件鏈接和鏈接處理器是部分的處理器插槽。
30.權(quán)利要求24的設(shè)備,還包括經(jīng)由點(diǎn)到點(diǎn)互連而連接的多個(gè)處理器插槽。
31.權(quán)利要求24的設(shè)備,其中如果接收到鏈接信息,鏈接控制器適于直接通知處理器核心。
32.一種系統(tǒng),包括具有一發(fā)起邏輯處理器的第一處理器插槽;與第一處理器插槽連接的動(dòng)態(tài)隨機(jī)訪問(wèn)存儲(chǔ)器;與第一處理器插槽連接的第二處理器插槽;以及包含指令的存儲(chǔ)器介質(zhì),如果運(yùn)行該指令,能使系統(tǒng)利用發(fā)起邏輯處理器在第一處理器插槽和第二處理器插槽上啟動(dòng)信任的代理。
33.權(quán)利要求32的系統(tǒng),還包括與第一處理器插槽直接連接的主中心代理。
34.權(quán)利要求33的系統(tǒng),還包括與主中心代理直接連接的主信任平臺(tái)模塊。
35.權(quán)利要求32的系統(tǒng),其中第一處理器插槽包括在鏈接控制器和處理器核心之間的信任的硬件鏈接。
36.權(quán)利要求32的系統(tǒng),其中第一處理器插槽和第二處理器插槽經(jīng)由點(diǎn)到點(diǎn)互連連接。
37.權(quán)利要求32的系統(tǒng),其中發(fā)起邏輯處理器適于在第一處理器插槽和第二處理器插槽上構(gòu)建生成樹(shù)。
38.權(quán)利要求32的系統(tǒng),其中動(dòng)態(tài)隨機(jī)訪問(wèn)存儲(chǔ)器被直接連接到第一處理器插槽,并且可被第一處理器插槽和第二處理器插槽訪問(wèn)。
39.一種產(chǎn)品,包括包含指令的機(jī)器可訪問(wèn)存儲(chǔ)介質(zhì),如果運(yùn)行該指令,能使系統(tǒng)在系統(tǒng)的多個(gè)處理器上安全地啟動(dòng)安全的內(nèi)核,其中該系統(tǒng)包括部分連接的拓?fù)洹?br>
40.權(quán)利要求39的產(chǎn)品,還包括指令,如果運(yùn)行該指令,能使系統(tǒng)使用信任的代理來(lái)安全地啟動(dòng)安全的內(nèi)核。
41.權(quán)利要求40的產(chǎn)品,還包括指令,如果運(yùn)行該指令,能使系統(tǒng)測(cè)量安全內(nèi)核的身份,并在傳遞信任的鏈上記錄該身份。
42.權(quán)利要求40的產(chǎn)品,還包括指令,如果運(yùn)行該指令,能使系統(tǒng)利用信任的代理驗(yàn)證系統(tǒng)的存儲(chǔ)器配置。
全文摘要
在本發(fā)明的實(shí)施例中,一個(gè)方法包括檢驗(yàn)一個(gè)系統(tǒng)的一個(gè)發(fā)起邏輯處理器;如果發(fā)起邏輯處理器被檢驗(yàn),利用發(fā)起邏輯處理器來(lái)驗(yàn)證信任的代理;并且如果信任的代理被驗(yàn)證,在系統(tǒng)的多個(gè)處理器上啟動(dòng)信任的代理。在執(zhí)行了這樣一個(gè)信任的代理之后,在某些實(shí)施例中就可以啟動(dòng)安全內(nèi)核。該系統(tǒng)可以是例如多處理器服務(wù)器系統(tǒng),其具有帶有專(zhuān)門(mén)的點(diǎn)到點(diǎn)互連的部分或者完全連接的拓?fù)洹?br>
文檔編號(hào)G06F12/14GK1704922SQ20041007877
公開(kāi)日2005年12月7日 申請(qǐng)日期2004年9月17日 優(yōu)先權(quán)日2004年6月3日
發(fā)明者J·H·威爾遜, I·T·肖因納斯, M·S·尤西夫, L·J·蘭金, D·W·格勞羅克, R·J·格雷納, J·A·蘇頓, K·維德, W·M·懷斯曼 申請(qǐng)人:英特爾公司