Intel VT d(5) DMAR表組織結構

2021-09-01 18:06:54 字數 1893 閱讀 4449

乙個dmar結構體用於唯一定義系統中存在的乙個vt-d重定向硬體。其結構體如下所示:

主要包括兩方面的資訊,一是提供vt-d重定向硬體暫存器基位址,為系統軟體訪問vt-d硬體暫存器提供入口(各個偏移量所指向的具體暫存器在vt-d的spec中有詳細的約定,即vt-d硬體的具體實現);另乙個是該vt-d重定向硬體所管轄的硬體,由segment number和device scope兩個區域來定義。device scope結構體由device scope entry組成,每個device scope entry可以用來指明乙個pci endpoint device,乙個pci sub-hierarchy,或者其他裝置,如i/o xapic或者hpet。

rmrr表用於表示bios或者uefi為了dma的使用而保留的一些系統物理記憶體,這些記憶體從作業系統的角度來看其屬性為reserved memory,因為有一些比較傳統的裝置(比如usb、uma顯示卡等)可能會需要用到一些固定的,或者專用的系統記憶體,這時候就需要bios或uefi為其保留。

該表中,主要包括兩方面資訊,即保留的記憶體的範圍(reserved memory region base address和reserved memory region limit address)和針對的物理裝置(segment number和device scope)。

ats是address translation services的意思,它是pcie capability的一種,用於表示pcie裝置是否支援經過pcie root port翻譯過的位址。atsr表只適用於那種pcie裝置支援device-tlb的系統中,即pcie裝置帶有位址轉換加速功能。乙個atsr表表示乙個支援ats功能的pcie root-port,其結構如下所示:

主要包括兩方面資訊:segment number用於定位pcie root-port;device scope用於定位位於該pcie root-port下面的裝置。

rhsr表適用於numa(non-uniform memory)系統(即不同的cpu socket都可能會單獨連線一些記憶體條,不同的cpu socket對同一物理記憶體的訪問路徑可能是不同的),並且系統中的vt-d重定向硬體分布於不同的node上。該錶用於表示vt-d重定向硬體從屬於哪個domain。

乙個andd表用於表示乙個以acpi name-space規則命名,並且可發出dma請求的裝置。andd可以和前面提到的device scope entry結合一起時候。

其中acpi device number,相當於在該vt-d硬體管轄範圍內的以acpi name-space規則命名的硬體id號,前面device scope entry值需要這個id號,就可以找到該andd表,並從該錶的acpi object name區域找到具體的裝置。

5 第 5 章 迴圈

1.可以用迴圈來驗證輸入。在迴圈前的第一次讀取操作,稱為啟動讀取,如果後續還需要繼續讀取,則語句應該在迴圈中。2.在實際程式設計應用中,不建議在 cout 語句中放置遞增或遞減運算子 因為容易出錯 3.需要計數時使用計數器,需要累計彙總時使用累加器。4.標記符號是乙個特殊值,指示著值列表的結尾。一般...

5X5矩陣調換!

將乙個5x5矩陣中最大的元素放在中心,4個角分別放4個最小的元素,寫一函式實現之!include int main printf n return 0 void change int p temp p 12 p 12 pmax pmax temp temp p p pmin pmin temp pm...

工作5年5個月

2005年玩 冒險島 認識了一群朋友,現在都2014年了。那個時候還一起打怪公升級,亞洲服,新加坡服,歐服,後來出現了 傳奇 和其他遊戲的私服。當時就想能出乙個私服才玩的過癮。那個時候流行網路遊戲,讀大學時候選專業就選了遊戲專業。到現在發展很快,頁遊,手遊。本來那時候開始選電子商務的,因為耍遊戲所以...