位址:
unix設計與實作(學習核心書籍,是一個核心設計文檔)
1.位址總線
位址總線 (Address Bus;又稱:位址總線) 屬于一種電腦總線 (一部份),是由CPU 或有DMA
能力的單元,用來溝通這些單元想要存取(讀取/寫入)電腦記憶體元件/地方的實體位址。(學術了解)
cpu能夠通路記憶體的範圍(通俗了解)
現象:裝了32位的win7系統,明明記憶體條8G,可是系統隻識别了3.8G,裝了64位,才能識别8G
32位能表示/通路 4,294,967,296 bit (2的23次方)
bit 4,294,967,296 (計算是 %1024)
kbit 4,194,304
mbit 4,096
gbit 4 (可以看出最大通路是4G,但是實際3.8,其餘的用作其他用途)
樹莓派 32位 1G 949M 但也隻能通路到949M 剩下的作為他用呗
2.實體位址
硬體實際位址或絕對位址
假如樹莓派隻有1個G這麼大的(實體位址)記憶體,cpu(總線)可以通路到4個G,但你要運作的程式又超過了1個G,此時虛拟位址可以将實體位址的1個G映射4個G,此時程式就可以運作。如若沒有虛拟位址的映射,則不能。
3.虛拟位址
邏輯(基于算法的位址(軟體層面的位址,假的位址)) 位址稱為虛拟位址
如果程式在磁盤的實體位址隻有1個G,但是你又想運作超過1個G的程式,此時就得虛拟位址,可以将1個G的實體位址映射成4個G(其實真正實體位址裡的資料其實是在虛拟位址上跑的,虛拟位址可以比真正的實體位址大)
其實我們寫的所有代碼都是操控的虛拟位址,不管是上層應用程式,還是底層操控的位址都是虛拟位址
BCM2835 樹莓派3b cpu型号 它是 ARM-cotexA53架構
