亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

為什么在64位虛擬地址與物理地址(52位長)相比,4位短(48位長)?

為什么在64位虛擬地址與物理地址(52位長)相比,4位短(48位長)?

MM們 2019-09-03 16:59:53
在“低級編程:英特爾?64架構上的C,匯編和程序執行”一書中,我讀到:每個虛擬64位地址(例如,我們在程序中使用的地址)由幾個字段組成。地址本身實際上只有48位寬; 它被符號擴展為64位規范地址。它的特點是它的17個左位是相等的。如果不滿足條件,則在使用時立即拒絕該地址。然后借助特殊表將48位虛擬地址轉換為52位物理地址。為什么虛擬地址和物理地址之間的差異為4位?
查看完整描述

4 回答

?
weixin_慕少0359847

TA貢獻1條經驗 獲得超0個贊

因為虛擬地址地址空間是某個進程的地址空間。
虛擬地址和物理地址偏移量字段一樣。但虛擬地址的頁號長度小于物理地址,因為表示范圍不同嘛。

查看完整回答
反對 回復 2019-12-10
?
MMTTMM

TA貢獻1869條經驗 獲得超4個贊

您說:“只使用9位運行來索引每個級別的表”,然后再描述虛擬地址組件。但作者表示,對于每個表索引都使用12位(加起來為48位)而不是9位。我只是說如果有什么好的東西來自這個觀察。其他位是一個符號位,其他17位(加上64位)必須等于不丟棄的地址,如我的書中引用的那樣。作者將架構描述為“Intel 64架構:也稱為x86_64和AMD64” 

查看完整回答
反對 回復 2019-09-03
?
拉丁的傳說

TA貢獻1789條經驗 獲得超8個贊

即使是2MB的頁面并不可怕; 漢斯甚至建議4M可能沒問題。(這是x86-32巨大的頁面大小。)而BTW,只有像數據庫這樣的高性能軟件才會將非易失性存儲DIMM映射到自己的虛擬地址空間,相當于直接IO。其他一切都將通過文件系統?;蛘呷绻銐蚩欤ɑ駾RAM有限/不存在),OS可以mmap(PROT_READ|PROT_EXEC)通過將非易失性存儲直接映射到1G / 2M / 4k頁來滿足請求。將映射限制為2M的2M對齊倍數將是一個全面的勝利。

查看完整回答
反對 回復 2019-09-03
  • 4 回答
  • 0 關注
  • 1635 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號