第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

x86分頁是如何工作的?

x86分頁是如何工作的?

x86分頁是如何工作的?這個(gè)問題是為了填補(bǔ)關(guān)于這個(gè)問題的免費(fèi)信息的空白。我相信一個(gè)好的答案將適合于一個(gè)大的,所以答案,或至少在幾個(gè)答案。主要目標(biāo)是給完整的初學(xué)者提供足夠的信息,這樣他們就可以自己掌握手冊,并且能夠理解與分頁相關(guān)的基本OS概念。建議的準(zhǔn)則:答案應(yīng)該是初學(xué)者友好的:具體的,但可能是簡化的例子是非常重要的。歡迎應(yīng)用上述概念。引用有用的資源是好的歡迎介紹OSS如何使用分頁功能。歡迎Pae和PSE解釋。歡迎進(jìn)入x86_64的小版本相關(guān)的問題,以及為什么我認(rèn)為它們不是欺騙:x86頁表是如何工作的?標(biāo)題幾乎與這一問題相同,但該機(jī)構(gòu)提出與CR3和TLB有關(guān)的具體問題。這個(gè)問題是這個(gè)問題的一個(gè)子集。x86虛擬化是如何工作的?*身體只要求消息來源。
查看完整描述

2 回答

?
猛跑小豬

TA貢獻(xiàn)1858條經(jīng)驗(yàn) 獲得超8個(gè)贊

以下是一個(gè)非常簡短、高層次的答案:

x86處理器以幾種可能的模式之一工作(大致是:真實(shí)的、受保護(hù)的、64位的)。每種模式都可以使用幾種可能的內(nèi)存尋址模型中的一種(但不是每一種模式都可以使用每個(gè)模型),即:實(shí)模式尋址、分段尋址和平行線尋址。

在現(xiàn)代世界中,只有保護(hù)模式或64位模式下的平坦線性尋址是相關(guān)的,這兩種模式本質(zhì)上是相同的,主要的區(qū)別是機(jī)器字的大小,因此內(nèi)存的可尋址量。

現(xiàn)在,內(nèi)存尋址模式賦予機(jī)器指令的內(nèi)存操作數(shù)(如mov DWORD PTR [eax], 25,存儲(chǔ)32位(又名dword)將值25的整數(shù)放入內(nèi)存中,該內(nèi)存的地址存儲(chǔ)在eax32位寄存器)。在平坦線性尋址中,這個(gè)數(shù)字在eax允許在一個(gè)連續(xù)的范圍內(nèi)運(yùn)行,從零到最大值(在我們的例子中是2)。32?1)。

然而,平坦的尋址可以是傳呼未傳呼..在不分頁的情況下,地址直接引用物理內(nèi)存。帶著分頁,處理器的內(nèi)存管理單元(或MMU)透明地為所需地址(現(xiàn)在稱為虛擬地址)進(jìn)入查找機(jī)制,即所謂的頁表,并獲得一個(gè)新值,該值被解釋為物理地址。最初的操作現(xiàn)在運(yùn)行在物理內(nèi)存中的這個(gè)新的轉(zhuǎn)換地址上,即使用戶只看到虛擬地址。

分頁的主要好處是頁表由操作系統(tǒng)管理。因此,操作系統(tǒng)可以任意修改和替換頁面表,例如“切換任務(wù)”時(shí)。它可以保存一個(gè)完整的頁表集合,每個(gè)“進(jìn)程”一個(gè),每當(dāng)它決定某個(gè)特定進(jìn)程要在給定的CPU上運(yùn)行時(shí),它就會(huì)將進(jìn)程的頁表加載到該CPU的MMU中(每個(gè)CPU都有自己的一組頁表)。結(jié)果是每個(gè)進(jìn)程都看到了自己的虛擬當(dāng)操作系統(tǒng)不得不為其分配內(nèi)存時(shí),無論哪個(gè)物理頁面是空閑的,地址空間看起來都是一樣的。它永遠(yuǎn)不知道任何其他進(jìn)程的內(nèi)存,因?yàn)樗荒苤苯釉L問物理內(nèi)存。

頁表是嵌套的樹狀數(shù)據(jù)結(jié)構(gòu),存儲(chǔ)在普通內(nèi)存中,由操作系統(tǒng)編寫,但由硬件直接讀取,因此格式是固定的。通過設(shè)置一個(gè)特殊的CPU控制寄存器指向頂層表,它們將被“加載”到MMU中。CPU使用一個(gè)稱為TLB的緩存來記住查找,因此對(duì)相同幾個(gè)頁面的重復(fù)訪問比分散的訪問要快得多,這是因?yàn)門LB丟失的原因以及通常的數(shù)據(jù)緩存原因。經(jīng)常會(huì)看到術(shù)語“TLB條目”用于指頁表?xiàng)l目,即使它們沒有緩存在TLB中。

如果您擔(dān)心某個(gè)進(jìn)程可能只是禁用分頁或嘗試修改頁表:這是不允許的,因?yàn)閤86實(shí)現(xiàn)了特權(quán)級(jí)別(稱為“循環(huán)”),用戶代碼執(zhí)行的權(quán)限級(jí)別太低,無法修改CPU的頁表。


查看完整回答
反對(duì) 回復(fù) 2019-07-10
  • 2 回答
  • 0 關(guān)注
  • 720 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)