TLB

TLB

TLB(Translation Lookaside Buffer)轉換檢測緩衝區是一個記憶體管理單元,用於改進虛擬地址到物理地址轉換速度的快取。

TLB是一個小的,虛擬定址的快取,其中每一行都保存著一個由單個PTE(Page Table Entry,頁表項)組成的塊。如果沒有TLB,則每次取數據都需要兩次訪問記憶體,即查頁表獲得物理地址和取數據。

基本介紹

  • 中文名:轉換檢測緩衝區
  • 外文名:Translation Lookaside Buffer
  • 簡稱:TLB
  • 性質:記憶體管理單元
  • 別稱:快表技術
基本信息,英文縮寫,庫檔案,緩衝區,基本概念,內部組成,

基本信息

英文縮寫

Translation Lookaside Buffer的縮寫,用於虛擬地址與實地址之間的互動,提供一個尋找實地址的快取區,能夠有效減少尋找物理地址所消耗時間。

庫檔案

OLE庫檔案,其中存放了OLE自動化對象的數據類型、模組和接口定義,自動化伺服器通過TLB檔案就能了解自動化對象的使用方法。

緩衝區

基本概念

TLB:Translation lookaside buffer,即旁路轉換緩衝,或稱為頁表緩衝;裡面存放的是一些頁表檔案(虛擬地址物理地址的轉換表)。
又稱為快表技術。由於“頁表”存儲在主存儲器中,查詢頁表所付出的代價很大,由此產生了TLB。
X86保護模式下的定址方式:段式邏輯地址—〉線形地址—〉頁式地址;
頁式地址=頁面起始地址+頁內偏移地址
對應於虛擬地址:叫page(頁面);對應於物理地址:叫frame(頁框);
X86體系的系統記憶體里存放了兩級頁表,第一級頁表稱為頁目錄,第二級稱為頁表。
TLB和CPU里的一級、二級快取之間不存在本質的區別,只不過前者快取頁表數據,而後兩個快取實際數據。

內部組成

1:TLB在X86體系的CPU里的實際套用最早是從Intel的486CPU開始的,在X86體系的CPU裡邊,一般都設有如下4組TLB:
第一組:快取一般頁表(4K位元組頁面)的指令頁表快取(Instruction-TLB);
第二組:快取一般頁表(4K位元組頁面)的數據頁表快取(Data-TLB);
第三組:快取大尺寸頁表(2M/4M位元組頁面)的指令頁表快取(Instruction-TLB);
第四組:快取大尺寸頁表(2M/4M位元組頁面)的數據頁表快取(Data-TLB);
2:TLB命中和TLB失敗
如果TLB中正好存放著所需的頁表,則稱為TLB命中(TLB Hit);如果TLB中沒有所需的頁表,則稱為TLB失敗(TLB Miss)。
3: TLB條目數 即TLB裡面可以存儲的表項數目,一般也叫entry數。
4:TLB的聯合方式
1〉全相聯方式:Athlon XP
2〉組相聯方式:P4
當CPU執行機構收到應用程式發來的虛擬地址後,首先到TLB中查找相應的頁表數據,如果TLB中正好存放著所需的頁表,則稱為TLB命中(TLB Hit),接下來CPU再依次看TLB中頁表所對應的物理記憶體地址中的數據是不是已經在一級、二級快取里了,若沒有則到記憶體中取相應地址所存放的數據。既然說TLB是記憶體里存放的頁表的快取,那么它裡邊存放的數據實際上和記憶體頁表區的數據是一致的,在記憶體的頁表區里,每一條記錄虛擬頁面和物理頁框對應關係的記錄稱之為一個頁表條目(Entry),同樣地,在TLB裡邊也快取了同樣大小的頁表條目(Entry)。

相關詞條

熱門詞條

聯絡我們