保護位址模式

2021-09-26 02:48:51 字數 1045 閱讀 7942

80386是乙個32位的cpu,也就是它的alu資料匯流排是32位的,同時它的位址匯流排與資料匯流排寬度一致,也是32位,其定址能力達到4gb。從理論上說,當資料匯流排與位址匯流排寬度一致時,其cpu結構應該簡潔明瞭。但是,80386無法做到這一點。作為x86產品系列的一員,80386必須維持那些段暫存器的存在,還必須支援實模式,同時又要能支援保護模式。

intel選擇了在段暫存器的基礎上構築保護模式,並且保留段暫存器16位。在保護模式下,它的段範圍不再受限於64k,可以達到4g。

從8086的16位到80386的32位處理器,這看起來是處理器位數的變化,但實質上是處理器體系結構的變化,從定址方式上說,就是從「實模式」到「保護模式」的變化。

gdtr  線性基位址   段限屬性  

根據這個線性的基位址,硬體可以找到描述符表的位置;然後段暫存器——現在被稱作段選擇符的高13位作為這個描述符表的偏移位址,找到裡面乙個相應的描述符,並將這個描述符裝載入描述符暫存器中,這樣就得到了相應的段基址;

描述符暫存器中的32位的段基址和32位偏移位址相加,即可以得到乙個32位的位址,這個位址稱之為線性位址

接下來有兩種情況:

(1) 如果分頁機制被禁止,這個位址就是實體地址了。     

(2) 採用分頁機制。此時32位的線性位址分為3個部分,(10位)頁目錄索引 (10位)頁表索引 (12位)偏移位址

首先高10位的頁目錄索引部分和cr3暫存器(它存放著頁目錄位址)結合,找到相應的頁表的位址;然後根據中間的10位的頁表索引,找到相應的頁的起始位置;然後,根據低12位的偏移位址,在這個頁中就可以找到對應的實體地址。

保護地球已過時

提到超級英雄,拯救地球,先進的 裝備,肌肉男,美女,你一定會聯想到好萊塢大片。隨著電影技術的發展,電影越來越好看,除了保留了一定的傳統設定,如超級英雄,肌肉男,美女等,英雄的 越來越先進,功能越來越特異話,不僅是基因,超常的速度,等等,如今英雄的任務已由保護地球改為保護太空,保護星球。之間 銀河護衛...

實模式與保護模式的位址變換

實模式下的位址變換 邏輯位址 實體地址 一 實模式下的位址變換 16位系統中,資料匯流排為16位,位址匯流排為20位,可定址1m位址空間。由於暫存器只有16位,而位址匯流排是20位,如果只使用乙個暫存器存放位址,則定址範圍小於1m。為了充分利用位址空間,採用 段基址 段偏移 的方式,對20位的位址空...

保護模式下的邏輯位址,線性位址,實體地址

ia32保護模式中,邏輯位址 16位段選擇子 32位偏移位址,具體的值應該是指令經過編譯 彙編產生的,如果是應用程式設計的話,編譯 彙編只產生偏移位址,段選擇子的值由系統分配。在定址時,16位段選擇子位於cs ss ds es fs gs暫存器中,32位偏移位址位於指令 中。邏輯位址如何轉換成線性位...