Data

哪些組件使用虛擬地址、線性地址、物理地址和邏輯地址?

  • September 22, 2015

我對作業系統中不同類型的地址有點困惑:

  • 虛擬地址
    完全由 CPU 使用?
  • 物理地址
    是從什麼樣的硬體中使用的?
  • 線性地址
    從 ?
  • 邏輯地址
    從 ?

如果您上傳圖片以查看應用領域,您會幫我一個大忙嗎?

我不會畫圖,那是你的任務,但我會試著解釋你提到的概念的基本關係。

駐留在物理記憶體晶片中的數據使用物理地址空間進行引用。只有作業系統的最底層部分使用它。

邏輯地址空間(這裡的邏輯地址被用作物理地址的對應空間)是例如應用程序用來引用其數據的空間。在一個非常簡單的實現中,它可能是線性的,但是由於這種方法有很多缺點(其中一個是大記憶體需要很長的地址),分段(地址是對(段,偏移))或分頁(具有相同的想法,但頁面始終具有相同的大小)方法通常已被採用。

虛擬地址空間是指所使用的地址是虛擬的,並且通常不對應於實際的物理地址空間(由於具有許多不同的儲存設備,例如 RAM 和一部分硬碟)。在現代電腦中,它還掩蓋了各個應用程序的地址空間,因此它們不會相互干擾。

以上是來自以下來源的綜合:

電腦基礎知識:架構和組織

電腦科學簡明百科全書

物理/邏輯/虛擬記憶體地址之間的區別

引用自:https://unix.stackexchange.com/questions/231217