80386與8086區別以及保護模式


在windows環境下,cpu的工作方式有三種:實模式:和8086工作一樣(一般為開機時初始化計算機的時候),此時一個任務獨占cpu

                                                        保護模式:即計算開機后所處的狀態,此時可以運行多個程序,多線程。

                                                        虛擬8086模式:即計算機處於保護模式時運行的dos程序,此時處於保護模式,即在保護模式下模擬實模式,使之前8086下能運行的軟                                                                                件在保護模式下仍能運行,實現兼容。

 

80386相對於8086來說,尋址機制改變了,因為80386需要能尋找到更大的地址,所以之前的段地址:偏移地址已經不夠如此大的空間,所以使用一種新的機制,直接用一個通用寄存器來尋址(64位),而因為windows的保護機制(對操作有限制),系統需要知道各個段的信息(如是否可讀可寫),這樣才更好的執行保護,此時便有了段描述表,即將段的信息存儲成一張表,然后用段寄存器來尋址(段寄存器被稱為段描述符),此時就增加了兩個寄存器,即GDTR(全局描述表),和LDTR(局部描述表),LDTR通過windows的分頁機制來進行定位。

windows對中斷的處理不能向8086那樣,windows對用戶的操作作了一些權限,用戶級的代碼不能隨便使用系統級的代碼,就肯定不能像8086那樣,還可以隨便改變中斷程序,80386提供了一個門,用來訪問中斷程序,低級程序調用高級程序,只能通過門來調用,於是80386增加了一個寄存器IDTR,用來存放IDT(中斷描述表)的地址。

 

80386相對於8086尋址更加靈活,還可以改變中斷描述表的地址等,但也對用戶的操作作了更多的限制。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM