[問題] 有關於 CPU 與 RAM 定址問題

作者: gowrite (gowrite)   2017-09-18 11:18:57
因為初學 C 語言,另外自學相關 作業系統、計算機組織的課程
學習的教材就是各校的開放式課程、講義、網路資料這樣
有些地方看完不太確定,身邊又沒人可以問 QQ
所以想來問一下版友一些基礎問題
就是有關 CPU 32-bit & RAM 定址問題
之前有看到說 32 bit CPU 只能夠定址到 4GB的記憶體
1.原本的思考
所以我就做了一下算數
1 byte 1 KiB 1 MiB 1 GiB
2^32 bits x
作者: Lipraxde (Lipraxde)   2017-09-18 11:28:00
能定址多少記憶體主要還是跟位址線、架構有關
作者: MOONRAKER (㊣牛鶴鰻毛人)   2017-09-18 12:07:00
現在都馬byte address,就算以前也沒啥CPU做bit-addres而32-bit可以定址到4GB就是以byte address而言所以你後面想對了 前面想太多 忘掉就好
作者: jimfan (jimfan)   2017-09-18 15:37:00
響應 Lipraxde君:現時64-bit系統如Linux,只會用上48-bit理由係,2^64可以定16777216 TB的地址,有如斯記憶體的電腦暫時未普及。不過算法的確如此
作者: james732 (好人超)   2017-09-18 19:23:00
其實32bit的CPU定址線有36條,詳見"PAE"
作者: PkmX (阿貓)   2017-09-18 21:17:00
樓上你們要說清楚那是x86和x86_64的特有的啊話說intel似乎要推支援5層page table的cpu出來了有52-bit physical和57-bit virtual address可用
作者: james732 (好人超)   2017-09-18 21:57:00
一時忘了其他家族的32位元處理器XD
作者: jimfan (jimfan)   2017-09-19 14:27:00
五層page table...我太落伍

Links booklink

Contact Us: admin [ a t ] ucptt.com