新四季網

支持事務認證的硬體裝置接口的製作方法

2023-07-09 07:26:26 4

專利名稱:支持事務認證的硬體裝置接口的製作方法
支持事務認證的硬體裝置接口
背景技術:
近年來,虛擬機技術的使用顯著增加。該技術在主機作業系統內執行模擬真實計 算機的軟體,真實計算機有時稱為「物理機」。物理機的該模擬有時稱為「虛擬機」。客機操 作系統能夠在虛擬機上運行,以及從客機作業系統的角度來看,虛擬機與物理機沒什麼區 另|J。另外,虛擬機監視軟體(有時稱為「超級監視者(hypervisor)」)可以用作作業系統和 多個虛擬機之間的層,以允許多個作業系統並發地在多個虛擬機上運行,所有都由單個物 理機進行支持。超級監視者用作每個虛擬機與物理機之間的協調和仲裁點,以確保各機之 間所需的隔離。可能因為功能原因(例如為了避免資源爭用)和因為安全性原因而需要這 種隔離。更快的機器以及更便宜的軟體使得虛擬機技術對於先前可能另外忽視了這種技 術的一群用戶富有吸引力且可行。但是隨著虛擬機的用戶數量的增加,這些用戶對於其性 能可處於與它們的物理對應物相當的水平的虛擬機的需求也隨之增加。滿足這些性能需求 已經證明是挑戰性的,很大部分上歸因於虛擬機的很多低級功能使用軟體來實現的事實。 對於原應由對應的物理機以硬體執行的操作,這種功能的軟體實現增加了顯著程度的等待 時間和開銷。由超級監視者對單主機資源進行劃分、分派和管理也增加了開銷,所增加的開 銷進一步促成虛擬機和物理機之間的性能差異。
為了克服有時與超級監視者相關聯的上述等待時間和開銷問題中的一些問題,已 經開發出了一些計算機系統的互連結構的基於硬體的擴展(例如對外圍部件互連或PCI的 擴展),其允許在超級監視者下運行的客機作業系統在多個虛擬機之間共享的I/O裝置上 執行直接的輸入和輸出(I/O)操作。但是,這些互連擴展缺乏當前在很多處理器上可用的 各類型的基於硬體的安全性和保護機制。這種基於硬體的處理器機制允許超級監視者確保 在處理器上執行操作的多個虛擬機之間的操作隔離,同時相較基於軟體的安全性和保護機 制減少了與實施這種隔離相關聯的開銷。


現在將參考附圖來對本發明的例示性實施例進行詳細描述。在這些附圖中圖1示出根據至少一些說明性實施例的計算機系統的功能圖,其中,該計算機系 統包括與多功能共享I/O裝置交互的多個虛擬機;圖2示出根據至少一些說明性實施例構造的圖1的處理邏輯的詳細框圖;圖3示出根據至少一些說明性實施例構造的圖1的多功能共享I/O裝置的詳細框 圖;以及圖4示出根據至少一些說明性實施例的在多個虛擬機使用的多功能共享I/O裝置 內分派和隔離裝置功能的方法。符號和命名在下面的說明書和權利要求書各處使用某些術語來指代特定的系統部件。如本領 域技術人員將理解的,計算機公司可能用不同的名稱來指代部件。此文檔不打算區分名稱不同而功能相同的部件。在下面的討論中以及在權利要求書中,術語「包括」和「包含」以 開放的方式使用,並由此應該解釋為表示「包括,但是不局限於…」。此外,術語「耦合」意圖 表示間接的、直接的、光學或無線的電連接。因此,如果第一裝置耦合到第二裝置,則該連接 可以是通過直接電連接,通過經由其他裝置和連接的間接電連接,通過光學電連接,或通過 無線電連接。另外,術語「系統」指的是兩個或更多個硬體和/或軟體部件的集合,以及可 以用於指代電子裝置,諸如計算機、計算機的一部分、計算機組合等。進一步地,術語「軟體」 包括能夠在處理器上運行的任何可執行代碼,而不管用於存儲該軟體的介質如何。因此,存 儲在非易失性存儲器中的並且有時稱為「嵌入固件」的代碼被包括在軟體的定義中。
具體實施例方式圖1示出了根據至少一些說明性實施例構造的系統100的功能表示,該系統100 具有能夠支持多個虛擬機軟體程序的共享輸入/輸出(I/O)裝置250。多個虛擬機112、115 和118在虛擬化層120上執行並與該虛擬化層120交互,所有這些都在處理邏輯200上執 行。虛擬化層120可以是由處理邏輯200執行的基本輸入輸出系統(Bi OS)軟體的部件, 與在作業系統上執行的超級監視者軟體交互的作業系統(OS)的部件,或者集成的超級監 視者作業系統(例如圖1的主機超級監視者作業系統(0S-0) 110)的部件。虛擬機112、115 和118的每一個以及主機超級監視者作業系統110包括邏輯裝置驅動程序(Drvr 113、116、 119和122),所述邏輯裝置驅動程序由每個對應的虛擬機和主機OS用來提供經由互連層級 結構(interconnect hierarchy) 130對共享I/O裝置250的訪問。客機作業系統111、114 和117(0S-1、0S-2和0S-3)每一個分別在虛擬機112、115和118上執行,並且每個經由對 應的邏輯驅動程序(113、116和119)與互連層級結構130交互。主機超級監視者作業系統 110類似地經由邏輯驅動程序122與共享I/O裝置250交互。
處理邏輯200包括根複合體(root complex) 230,其將處理邏輯200耦合到互連 層級結構130 (例如擴展的外圍部件互連(PCI-X)總線或者PCI express (PCIe)總線),並 用作處理邏輯200內的內部部件與互連層級結構130之間的互連接口。互連層級結構130 進一步耦合到共享1/0裝置250的互連I/F 252,由此為處理邏輯200上執行的作業系統 提供與由共享1/0裝置250暴露的各種功能交互的路徑。每種功能表示與其他功能獨立地 操作的共享1/0裝置250 (下面更詳細描述)的實例,每種功能包括該裝置的一些或全部能 力。圖1的虛線表示在每個作業系統與共享1/0裝置250的對應功能(F0到Fn)之間的邏 輯路徑。共享1/0裝置250進一步包括應用特定(application specific)邏輯254和裝 置特定(device specific)接口 256 (例如乙太網接口),應用特定邏輯254耦合到互連I/ F 252,用於實現由該裝置執行的功能(例如網絡接口功能),該裝置特定接口 256也耦合到 應用特定邏輯254。圖2示出了根據至少一些說明性實施例構造的適於支持圖1的系統100的處理邏 輯200的詳細框圖。處理邏輯200包括處理器210,其能夠執行加載到存儲器220上的軟體 程序。存儲器220經由根複合體230耦合到處理器210,以及可以使用易失性存儲裝置(例 如隨機存取存儲器或RAM)或非易失性存儲裝置(例如硬碟)或易失性和非易失性存儲裝 置的組合來實現。虛擬機112是一種軟體程序,該軟體程序加載到存儲器220中,並在由主 機超級監視者作業系統110提供的操作環境內在處理器210上執行。虛擬機經由虛擬化層120與共享I/O裝置250交互,該虛擬化層120是主機超級監視者作業系統110的部件。雖 然圖2中示出了僅僅一個虛擬機,但是可以在處理邏輯200內並發執行多個虛擬機,如圖1 所示。繼續參考圖2,主機超級監視者作業系統(OS-O) 110也駐留在存儲器220內,並在 處理器210上執行,經由裝置驅動程序122和虛擬化層120與共享I/O裝置250交互。處 理器210耦合到根複合體230,該根複合體230用作處理器210和互連層級結構130 (例 如PCI-X總線或PCI Express總線)之間的互連接口或橋,所述互連層級結構130包括 一個或多個通信分組交換機(switch)(例如交換機135)。虛擬機112包括客機作業系統 (OS-I) 111,其經由裝置驅動程序(Drvr) 113、虛擬根複合體(vRC) 222、虛擬互連層級結構 224和虛擬裝置(vDev) 226與共享I/O裝置250的一個或多個功能的虛擬化表示進行交互。 在圖2的說明性實施例中,虛擬根複合體222、虛擬互連層級結構224和虛擬裝置226每一 個均以軟體實現為虛擬機112的部件。圖3示出根據至少一些說明性實施例構造的共享I/O裝置250的詳細框圖。共享 I/O裝置250包括互連接口(I/F) 252,該互連接口 252將共享I/O裝置250耦合到互連層 級結構130。互連I/F 252還耦合到應用特定邏輯254,該應用特定邏輯254包括處理邏輯 257和裝置特定硬體258。處理邏輯257實現共享I/O裝置250的至少一些功能。處理邏 輯257可以以硬體實現(例如實現為可編程邏輯陣列)、以軟體實現(例如實現為嵌入式固 件或處理器上執行的微代碼),或使用硬體和軟體的組合來實現。處理邏輯257耦合到互連 I/F 252以及耦合到裝置特定硬體258,允許處理邏輯257經由互連層級結構130將共享I/ O裝置250的功能暴露給其他硬體和軟體(例如暴露給在圖1的處理器210上執行的虛擬 機)。 通過暴露有時稱為共享I/O裝置250的「功能」的內容,在多個虛擬機之中共享說 明性實施例的共享I/O裝置250。每個功能表示經由互連層級結構130暴露給其他硬體和 軟體的一組能力。這些能力對於每個功能可以相同或者不同。功能出現在互連層級結構 130上,就像它是具有為該功能限定的能力的獨特裝置。在基於PC I的系統的上下文中,例 如,每個功能具有與之相關聯的PCI裝置地址。雖然所描述的說明性實施例包括基於硬體 的裝置功能,本領域普通技術人員將認識到,其他說明性實施例可以包括虛擬化的裝置功 能(例如在PCI特殊興趣組(PCI-SIG)輸入/輸出虛擬化(IOV)規範中描述的本地虛擬裝 置功能),以及所有這些裝置功能在本公開的範圍內。在系統(例如圖2的系統200)的重置之後,在總線初始化期間,對基於PCI的裝 置分配地址,該過程有時稱為枚舉(enumeration)。在枚舉期間,PCI根複合體的主控器掃 描PCI總線來確定存在什麼裝置,確定它們的能力是什麼,以及對每個識別的裝置分配地 址。在圖2的說明性實施例中,處理器210掃描互連層級結構130來尋找耦合到該互連的 裝置。當遇到共享I/O裝置250時,作為枚舉進程的一部分,在處理器210上執行的枚舉軟 件(未示出)執行PCI配置寫入,其向該裝置分配地址。在共享I/O裝置250內的控制寄 存器的一個或多個控制位(未示出)可以在配置寫入期間設置,從而將共享I/O裝置250 置於「源鎖存」模式,所述「源鎖存」模式使得共享裝置鎖存寫入源的標識符,以及在重置後 的後續配置寫入,如下描述。當上述配置寫入在互連重置(例如在PCI總線上的總線級別硬體重置)之後發生,並且(作為當前配置寫入或先前配置寫入的結果)共享I/O裝置被配置處於源鎖存模 式時,由共享I/O裝置識別並保存該寫入的源或始發者。在至少一些說明性實施例中,寫入 的源或始發者包括在處理器210上執行的特權軟體。這種特權軟體可以包括作業系統、超 級監視者作業系統、或基本輸入輸出系統(BIOS)軟體。在基於PCI的系統的上下文中,例 如,說明性實施例的共享I/O裝置250保存PCI配置寫入事務(transaction)內的識別字 段的內容,該識別欄位稱為請求ID(RID)欄位。該RID欄位包括在總線130的總線層級結 構限定的地址空間內唯一識別事務源(在此情況下為處理器210)的標識符。通過在系統 重置後將配置寫入的RID保存到共享I/O裝置250,該共享I/O裝置能夠使用後續事務的 RID欄位來認證事務的源(例如總線控制器或特權軟體)。一旦在處理器(例如處理器210)上執行並控制互連層級結構(例如互連層級結 構130)的特權軟體使得共享I/O裝置250鎖存與該處理器/特權軟體相關聯的RID,該特 權軟體然後就可以將共享I/O裝置的一個或多個功能與除了它自己的RID之外的附加特定 RID相關聯。該附加特定RID,一旦被如下所述地鎖存,就允許將每個功能作為獨特裝置而 對其進行非特權訪問,所述每個功能僅能夠由與特權軟體分配給該功能的特定RID相關聯 的源或由特權軟體自身(經由特權軟體的鎖存RID)訪問。例如,如果共享I/O裝置250接 收請求訪問該裝置的功能的事務,但是RID欄位不匹配與該功能相關聯的RID (或者與特權 軟體相關聯的RID),則該事務被當作異常狀況且不予接受。可以簡單地不允許並忽視該事 務(導致總線超時),或能夠生成異常,將所嘗試的訪問標記為安全性侵害。因為特權軟體是在圖2的處理器210上執行的第一軟體,該特權軟體「擁有」系統 100的物理資源。該特權軟體可以被視為將系統的物理資源分派給其他軟體應用(例如分 配給圖1的虛擬機)的「可信」代理。特權軟體可以通過數種機制中的一種機制配置共享I/ 0裝置250的每個功能並對共享I/O裝置250的每個功能實施控制。在至少一個說明性實 施例中,每個功能將對於某些操作、寄存器或存儲區(例如與PCI裝置的功能相關聯的PCI 配置空間)的訪問限制到僅僅特權軟體(經由鎖存的RID)。在其他說明性實施例(例如圖 1-3中所示的實施例)中,功能0被保留為僅能由特權軟體(經由鎖存的RID)訪問的監控 功能。雖然特權軟體仍可以訪問其他非零功能(例如以修護所有功能共有的異常狀況),但 是非特權軟體被阻止訪問功能0。功能0由此允許特權軟體執行監控操作,而無需直接訪問 其他功能。這些監控操作能夠包括共享I/O裝置250的一般控制、配置和狀態,以及該裝置 的非零功能的控制、配置和狀態。處理器210與共享I/O裝置的功能0的配對創建了有時所稱的「劃分」(在此情況 下為監控劃分)。通過將總線的兩個端點(這裡是處理器210和共享I/O裝置250的功能 0)配對,來創建劃分。在至少一些說明性實施例中,監控劃分對於多功能裝置是唯一的,因 為其不僅包括功能0還包括所有其他非零功能。通過將其他端點(例如圖1的虛擬機112、 115和118)與共享I/O裝置250的其他非零功能配對,來創建其他非監控劃分。當特權軟 件將非零功能與例如分配給圖1的其中一個虛擬機的RID相關聯時,該非零功能在該虛擬 機內作為具有唯一(unique)的基本功能0的虛擬裝置而被暴露。因此,參考圖1和2,共享 I/O裝置250的功能1在虛擬機112內表現為虛擬裝置226的功能0,以及經由虛擬互連層 級結構224耦合到虛擬根複合體222。系統100的多個虛擬機內的虛擬根複合體的創建可 以被視為系統100的真實、物理根複合體230的共享。驅動程序113向客機作業系統111提供到虛擬裝置226的接口。以這種方式,共享I/O裝置250的功能1被作為真實、非共享 的裝置暴露給客機作業系統111,如從虛擬機112的角度所看到的。由特權軟體分配給虛擬 根複合體222的RID與共享I/O裝置250的功能1的配對定義了與虛擬機112唯一相關聯 的劃分。如已經指出的,在處理器210上執行的特權軟體向也在處理器210上執行的每個 虛擬機分配RID。在至少一些說明性實施例中,當特權軟體最初將RID分配給每個裝置時 (例如在先前描述的PCI枚舉過程期間),該特權軟體保留一定範圍的RID。這些RID被 留出以供處理器210上執行的虛擬機稍後使用。可以使用數種機制中的一種機制將源自 每個虛擬機(例如圖1的虛擬機112、115和118)的事務呈現在互連層級結構130上,其 中RID對應於特定虛擬機(例如圖2的虛擬機112)。在至少一些說明性實施例中,處理 器210能夠將處理器上執行的軟體應用與特定RID相關聯,以及作為在應用之間的上下文 切換的一部分,能夠當在互連層級結構130 (例如PCIe總線)上傳輸事務時設置真實根復 合體(例如圖2的根複合體230)使用的RID的值。這種處理器的示例包括來自Intel 的vPro 、Xeon :和Itaniumi 處理器族(利用Intel 虛擬化技術或IVT,以及有時稱為 「Vanderpool」擴展),以及來自AdvancedMicro Devices 的基於AMD64的處理器系列(利 用 AMD-Virtualization 或 AMD-V ,有時稱為 「Pacifica」 擴展)。在至少一些說明性實施例中,處理器210不具有當經過互連層級結構130傳輸事 務時改變真實根複合體使用的RID的能力。在至少一些這樣的實施例中,在互連層級結構 130內的至少一個通信分組交換機(例如PCI Express交換機)由特權軟體配置為將源自 根複合體230的事務的RID替換為另一 RID。替換後的RID根據事務的目標裝置地址或目 標ID(TID)來確定。如果TID對應於如之前描述的與虛擬機相關聯的裝置或裝置的功能, 事務的原始RID將被替換為分配給與該裝置或功能相關聯的虛擬機的RID。以這種方式,該 裝置或裝置功能將接收具有唯一識別事務的真實源(例如圖2的虛擬機112)的RID的事 務。在至少一些說明性實施例中,如所述的能夠進行RID替換的通信分組交換機(例如圖2 的交換機135)被耦合到根複合體230,在該通信分組交換機與該根複合體之間沒有其他中 間交換機。通過如圖2所示將根複合體230耦合到交換機135,在處理邏輯200和互連130 之間的事務通過兩個「可信」實體(也就是根複合體230和交換機135)進行交換,該兩個 「可信」實體中的每一個保護事務的完整性(例如PCIe事務的RID和TID欄位的有效性)。如已經指出的,每個虛擬機具有與之相關聯的虛擬裝置,該虛擬裝置提供對互連 層級結構130的訪問。每個虛擬裝置表示互連層級結構端點,以及具有與之相關聯的唯一 地址,並由此具有與之相關聯的唯一請求標識符。繼續參考圖1和圖2,在至少一些說明性 實施例中,當虛擬機首次在處理器210上執行時,作為它自己的虛擬總線初始化序列的一 部分,虛擬機訪問共享1/0裝置250的其中一個功能代碼,所述功能代碼先前作為虛擬機的 配置定義的一部分與特權軟體分配給虛擬機的虛擬根複合體的RID相關聯。將配置寫入傳 輸給指定為虛擬機的配置的一部分的共享1/0裝置250的功能代碼,並且結果將該功能分 配給虛擬機。例如,當在處理器210上執行虛擬機112時,虛擬總線初始化序列導致將配置寫入 事務發到共享1/0裝置250的功能代碼1。在此示例中,功能代碼1被指定為虛擬機112的 配置的一部分。所述配置寫入導致將互連層級結構130的地址空間內的地址分配給功能代碼1。此地址進一步由驅動程序113映射到虛擬機112的虛擬總線的地址空間中。因為對 功能1的配置寫入是自重置後的首次寫入,因此由虛擬機112發起的寫入事務的RID由共 享I/O裝置250進行保存,由此將功能1唯一地分配給虛擬機112的虛擬根複合體的RID。 當向功能1發送後續事務時,如果事務的RID欄位不匹配所保存的用於功能1的根複合體 RID (也就是該事務不源自虛擬機112),則不允許該事務並生成異常(由特權軟體處理),如 之前描述的。類似地,附加的虛擬機能夠與共享I/O裝置250的附加功能相關聯。因為每個功能 表現為獨特的裝置,所以每個虛擬機進行操作如同它具有自己的獨特的I/O裝置,所述I/O 裝置具有為分配給對應虛擬機的共享I/O裝置250的功能而定義的功能。因此,能夠配置 為並發地使用共享I/O裝置250的虛擬機的數量等於在共享I/O裝置250上可用的功能的 總數量減1 (排除監控功能0)。虛擬機與共享I/O裝置250的功能的每個關聯都定義了劃 分,其中劃分號反映了功能號(例如劃分3和虛擬機與共享I/O裝置250的功能3的配對 相關聯)。如已經指出的,在至少一些說明性實施例中,基於在重置後的首次配置寫入的 RID,將功能代碼與RID(並由此與虛擬機)相關聯。該重置可以是一般的系統重置,或僅與 一個功能相關聯的重置(有時稱為「功能級別重置」或FLR)。功能的關聯能夠以下述兩種 方式中的至少一種方式來改變1)系統重置,且所有關聯被清除;或2)發出對特定功能的 功能級別重置,以及清除用於該特定功能的RID-功能關聯。一旦清除了用於特定功能的關 聯(例如在關閉先前與該功能相關聯的虛擬機並發出該功能的功能級別重置之後),對該 功能的下一個配置寫入將基於在該FLR之後接收的配置寫入事務的RID欄位來創建新的關 聯。通過將對共享I/O裝置250的給定功能的訪問限制到僅僅源自具有匹配為該功能 保存的RID的RID的虛擬機的事務,每個功能保持虛擬機在虛擬機程序自身的界限外部的 資源之間的隔離,而無需超級監視者來監視並截獲從一個虛擬機到分派給另一虛擬機的資 源的未授權事務。利用支持連結到軟體棧(例如圖1的超級監視者主機作業系統110內的 特權軟體)的硬體劃分的協議,而跨互連層級結構保持並實施隔離。資源(這裡是共享1/ 0裝置250)有效地以硬體管理其自己接收的事務,由此減少與在超級監視者軟體內實施事 務隔離和安全性相關聯的開銷。進一步地,在資源處基於硬體的隔離和安全性的實施還用於擴展合併了該資源的 系統(例如圖1的系統100)的總體能力,方式是通過即使相同系統內的其他資源不安全也 允許該系統的至少一些資源的安全操作。因為自管理資源驗證所有接收的事務,所以不需 要由超級監視者或其他特權軟體來截獲和/或監視事務。因此,在超級監視者或其他特權 軟體的保護範圍之外的未授權事務(例如經過超出圖1的根複合體230的邊界的中間通信 分組交換機和總線層級結構段傳輸的事務)被不允許且不被充當總線層級結構內的端點 的自管理資源所接受。圖4示出根據至少一些說明性實施例的用於在共享多功能裝置內分派和隔離功 能的方法300。虛擬機將事務傳輸到共享裝置的功能(框302),並且檢查該事務以確定該 事務是否是配置寫入事務(框304)。如果該事務是配置寫入,並且進一步如果它是自系統 重置或功能級別重置後的首次配置寫入(框306),則保存該事務的RID並將該RID與該功能相關聯(框308),結束該方法(框316)。如果該事務是配置寫入(框304)但其不是自 重置後的首次配置寫入(框306),則該事務被不允許且被標記(框310),結束該方法(框 316)。如果由虛擬機傳輸的事務不是配置寫入(框304),且該事務RID匹配先前為該功 能保存的RID(框312),則允許該事務(框314),結束該方法(框316)。如果由虛擬機傳 輸的事務不是配置寫入(框304),但是該事務RID不匹配先前保存的與該功能相關聯的 RID (框312),則該事務被不允許且被標記(框310),完成該方法。上述討論意圖對本發明的原理和各個實施例進行說明。一旦完全理解了上面的公 開內容,對於本領域技術人員來說,許多變化和修改是顯而易見的。例如,雖然所述實施例 包括單處理器系統,但是所述系統和方法也可以在多處理器或甚至多主機系統(例如刀片 伺服器)中實現。此外,雖然說明性實施例是在基於PCI的系統的上下文中描述的,但是所 述系統和方法也可以使用其他總線和/或利用具有唯一源標識符的事務的網絡交換結構 體系架構來實現。並且,雖然本公開的說明性實施例描述了將RID、裝置和裝置功能與虛擬 機軟體程序相關聯,但是此種關聯不局限於虛擬機軟體程序,並且所述RID、裝置和裝置功 能可以與在諸如描述的說明性實施例中的那些之類的處理邏輯和處理器上執行的任何軟 件程序相關聯。意圖將以下的權利要求書解釋為包括所有這樣的變化和修改。
權利要求
一種裝置(250),包括互連接口(252);以及耦合到所述互連接口的處理邏輯(257),其提供通過所述互連接口對於所述裝置的多個功能的訪問;其中,由所述裝置接收的並與所述多個功能中的功能相關聯的第一事務使得將所述第一事務內的請求標識符分配給所述功能;以及其中,如果在所述第一事務之後的第二事務的請求標識符不匹配分配給所述功能的所述請求標識符,則拒絕對於所述功能的訪問。
2.根據權利要求1所述的裝置,其中,在所述裝置接收所述第一事務之前重置所述裝 置(250)的至少一部分。
3.根據權利要求1所述的裝置,其中,所述第一事務的請求標識符到所述功能的分配 在不首先執行所述裝置(250)的至少一部分的重置的情況下不能被改變。
4.一種計算機系統,包括處理器,其執行多個軟體程序;包括處理邏輯(257)的裝置(250),其中,所述處理邏輯允許所述多個軟體程序訪問所 述裝置的多個功能中的一個或多個功能;以及 將所述處理器耦合到所述裝置的互連;其中,與所述裝置的功能相關聯並且源自所述多個軟體程序中的第一軟體程序的第一 事務被傳輸到所述裝置,並使得將所述第一事務內的第一請求標識符分配給所述功能;以 及其中,如果第二後續事務內的第二請求標識符不匹配所述第一請求標識符,則拒絕對 於所述功能的訪問。
5.根據權利要求4所述的計算機系統,其中,所述第二後續事務源自所述多個軟體程 序中的第二軟體程序。
6.根據權利要求4所述的計算機系統,還包括耦合到所述處理器和所述互連的橋,其 中,所述橋將所述第一請求標識符設置為與所述第一軟體程序相關聯的值。
7.根據權利要求4所述的計算機系統,其中,所述互連包括通信分組交換機,以及其 中,所述通信分組交換機將所述第一請求標識符設置為與所述第一軟體程序相關聯的值。
8.一種方法,包括第一軟體程序向裝置(250)的功能傳輸第一事務,所述第一事務包括第一請求標識符;所述裝置將所述第一請求標識符分配給所述功能;第二軟體程序向裝置的所述功能傳輸第二事務,所述第二事務包括第二請求標識符;以及如果所述第二請求標識符不匹配所述第一請求標識符,則所述裝置不允許所述第二軟 件程序訪問所述裝置。
9.根據權利要求8所述的方法,還包括在執行重置之後、在傳輸任何其他事務之前,傳輸所述第一事務; 用為零的功能標識符指定監控功能,所述功能包括所述監控功能;以及用唯一的非零功能標識符指定所述裝置(250)的所有剩餘功能。
10.根據權利要求8所述的方法,還包括防止向所述功能分配另一請求標識符,直到 執行所述裝置(250)的至少一部分的重置之後。
全文摘要
本文描述了支持事務認證的硬體裝置接口。至少一些說明性實施例包括裝置(250),其包括互連接口(252)以及提供通過該互連接口對所述裝置的多個功能的訪問的處理邏輯(257)(耦合到總線接口(252))。由裝置(250)接收並與所述多個功能中的功能相關聯的第一事務使得將第一事務內的請求標識符分配給該功能。如果在第一事務之後的第二事務的請求標識符不匹配分配給該功能的請求標識符,則拒絕對於該功能的訪問。
文檔編號G06F17/00GK101842784SQ200880113939
公開日2010年9月22日 申請日期2008年9月19日 優先權日2007年10月31日
發明者D·D·賴利 申請人:惠普開發有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀