1. 程式人生 > >純DOS下記憶體的管理—真實模式下訪問4GB記憶體

純DOS下記憶體的管理—真實模式下訪問4GB記憶體

好了,廢話說了這麼多,再不切入正題的話估計會有人向我扔雞蛋了,下面就來告訴大家怎麼做到在真實模式下訪問4GB記憶體。這種技術需要保護模式支援,所以只能在80386以上的CPU中執行。 學過一點保護模式的讀者都知道,在保護模式下段地址暫存器中內容的不再象真實模式那樣是段的基地址,而只是描述符表中的一個索引,段的真正資訊(基地址、限長、訪問許可權等)放在描述符表中,當訪問一資料時CPU會從描述符表取出段的描述資訊來檢查訪問是否合法,不合法就產生異常,合法則允許訪問。每次訪問都要讀出描述符資訊再檢查是一個比較費時的過程,為了提高記憶體訪問的速度,Intel公司在CPU中為每個段暫存器配備了一個高速緩衝器來存放段的描述符資訊,這樣訪問記憶體時就不用頻繁地訪問描述表,只要從高速緩衝進行校驗就行,只有在改變段暫存器的值時才訪問描述符表將新的段描述符裝入高速緩衝中。我們就利用CPU
的這個特性來達成我們的目的。首先進入保護模式,把某個段暫存器設為基地址0H,限長4GB,然後再退回真實模式。這樣就可以通過該段暫存器直接訪問4GB的記憶體了