對於計算機系統的一點個人理解

 

cpu訪問內存的一個數據的流程:

  1. cpu會在邏輯地址空間中找到它要訪問的邏輯地址,即得到一個虛擬地址

  2. 然後交給mmu硬件去訪問TLB,命中則得到真實的物理地址,不命中則去訪問主存DRAM,得到包含該頁的頁表,然後得到物理地址。

  3. 之後這個物理地址會按照cache的匹配方式分爲標記位、組索引、塊偏移,去訪問SRAM(cache),命中則返回所需數據,不命中則訪問主存DRAM

  4. 然後如果是進行讀取操作的話是直接會行替換更新cache,寫的話會看是否是寫分配而更新cache。

 

而彙編代碼的地址對應的是虛擬地址的話,那麼重定位做的也只是在虛擬地址空間層面上的將地址重定位

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章