官术网_书友最值得收藏!

2.7 80x86/Pentium系列微處理器工作模式

80x86/Pentium系列微處理器的工作模式共有4種,如表2-7所示。

表2-7 80x86/Pentium的工作模式

不同的工作模式對存儲器的管理方法不同,下面介紹這幾種工作模式的特點。

1.實地址模式

實地址模式又稱為實模式。以8086為代表的16位微處理器只能工作于實地址模式,為了與16位微處理器兼容,32位的微處理器也設(shè)置了實地址模式。32位的微處理器工作在實地址模式下時,只相當(dāng)于一個快速的8086 CPU,基于8086的源程序代碼可以直接在32位微處理器上運行,另外,還能有效使用8086所不支持的尋址方式、32位寄存器和大部分32位微處理器才能支持的指令。

工作于實地址模式的微處理器具有如下特點:

① 尋址、存儲器管理和中斷機(jī)構(gòu)都與8086一致。

② 默認(rèn)操作數(shù)的長度是16位,但可超越訪問32位的寄存器,并可使用FS和GS作為附加數(shù)據(jù)段的段基址進(jìn)行尋址。

③ 只允許處理器尋址第一個1MB的存儲器空間, 32位微處理器的32位地址只有低20位地址有效,采用分段方式訪問存儲空間,每段大小固定為64KB。物理地址由段寄存器提供的16位段基址值左移4位加上段內(nèi)偏移地址構(gòu)成。

④ 存儲器中地址為FFFF0H~FFFFFH為初始化專用區(qū),00000H~003FFH為中斷向量專用區(qū),這兩個區(qū)域?qū)儆诒A魠^(qū),用戶不能隨意存取數(shù)據(jù)。

⑤ 只支持單任務(wù)工作方式

系統(tǒng)啟動或復(fù)位后,32位微處理器自動進(jìn)入實地址模式。

2.保護(hù)模式

保護(hù)模式又稱為虛地址模式。是由80286芯片引入的,以實現(xiàn)虛擬存儲管理,即在CPU結(jié)構(gòu)內(nèi)部設(shè)置存儲器管理單元MMU,以實現(xiàn)將外部存儲器中由虛擬地址指定的程序映射到內(nèi)存中由物理地址指定的同一程序。在80286中存儲器管理采用段式存儲管理機(jī)制可實現(xiàn)16MB的物理地址空間和1GB的虛擬地址空間的訪問。80386采用段頁式存儲管理機(jī)構(gòu),可提供4GB的物理地址空間和64TB的虛擬地址空間。關(guān)于虛擬存儲器的管理模式將在第5章講述。

計算機(jī)軟件是由系統(tǒng)軟件和應(yīng)用軟件構(gòu)成,在實現(xiàn)其應(yīng)用時,系統(tǒng)軟件與各應(yīng)用軟件需要同時運行,

圖2-31 特權(quán)層結(jié)構(gòu)

為了保證各軟件的相對獨立性,需要對存儲器采取相應(yīng)的管理措施即保護(hù)機(jī)制。保護(hù)機(jī)制有兩類,一類是多任務(wù)環(huán)境下的保護(hù)機(jī)制,是由軟件和硬件相互配合,通過給每一任務(wù)分配不同的虛擬地址空間,使每一任務(wù)有各自不同的虛擬-物理地址映射,以實現(xiàn)不同任務(wù)之間的完全隔離。另一類是同一任務(wù)內(nèi)的保護(hù)機(jī)制,即對任務(wù)設(shè)立特權(quán)級實現(xiàn)的,如圖2-31所示。特權(quán)級分為0~3四級,數(shù)值最低的特權(quán)級最高。如特權(quán)級1的代碼可以訪問特權(quán)級1的數(shù)據(jù)及特權(quán)級2、3的代碼和數(shù)據(jù),但不能訪問特權(quán)級0的代碼和數(shù)據(jù)。

工作于保護(hù)模式的微處理器具有如下特點:

① 可以使用四級保護(hù)功能,實現(xiàn)程序間、程序與用戶間、用戶與操作系統(tǒng)間的隔離和保護(hù),為多任務(wù)操作系統(tǒng)提供優(yōu)化支持。

② 存儲器可用物理地址空間、虛擬地址空間和線性地址空間(除80286外)三種方式描述,在保護(hù)模式下,尋址是通過描述符表的數(shù)據(jù)結(jié)構(gòu)實現(xiàn)對主存單元的訪問。

③ 在保護(hù)模式下,借助存儲器管理部件MMU將外存空間有效地映射到內(nèi)存,使用戶編程時使用的存儲空間大大超過實際物理地址空間。

3.虛擬8086模式

根據(jù)前述,32位的微處理器在實地址模式下不支持保護(hù)和多任務(wù)機(jī)制,但很多時候需要在多任務(wù)環(huán)境的保護(hù)模式下運行基于8086的程序。為了解決這一問題,32位的微處理器從80386開始支持在保護(hù)和多任務(wù)的環(huán)境中直接運行基于8086編寫的程序,這就是虛擬8086模式。

在虛擬8086模式下,32位微處理器允許同時運行8086的操作系統(tǒng)和應(yīng)用程序以及32位操作系統(tǒng)和應(yīng)用程序,既能正確運行基于8086的源程序代碼,又能有效利用保護(hù)模式的多種功能,因而具有更好的靈活性。

工作于虛擬8086的微處理器具有的特點如下:

① 存儲器尋址空間1MB。

② 段寄存器及用法與實地址模式下完全相同。

③ 采用分頁管理,可把虛擬8086模式下的1MB物理地址空間映射到32位微處理器的4GB物理空間的任意位置。

在虛擬8086模式下中,基于8086的程序可以在保護(hù)模式的操作系統(tǒng)下運行,可以使用保護(hù)模式下的存儲管理機(jī)制、中斷和異常處理機(jī)制以及多任務(wù)機(jī)制等為8086任務(wù)提供管理與何護(hù)。

4.系統(tǒng)管理模式

系統(tǒng)管理模式是一個對所有Intel處理器都統(tǒng)一的標(biāo)準(zhǔn)體系結(jié)構(gòu)特性。該模式為操作系統(tǒng)和核心程序提供節(jié)能管理和系統(tǒng)安全管理等機(jī)制。

進(jìn)入系統(tǒng)管理模式后,處理器首先保存當(dāng)前運行程序或任務(wù)的基本信息,然后切換到一個分開的地址空間,執(zhí)行系統(tǒng)管理相關(guān)的程序,退出系統(tǒng)管理模式,處理器將恢復(fù)原來程序的狀態(tài)。

處理器在系統(tǒng)管理模式下切換到的地址空間,稱為系統(tǒng)管理RAM,其使用類似實地址的存儲模型。

5.工作模式間的轉(zhuǎn)換

如前述,現(xiàn)代微處理器有4種工作模式:實地址模式、保護(hù)模式、虛擬8086模式和系統(tǒng)管理模式。這4種工作模式是靠微處理器的存儲管理機(jī)制實現(xiàn)的。

圖2-32 微處理器工作模式轉(zhuǎn)換圖

微處理器的工作模式及其相互轉(zhuǎn)換方法如圖2-32所示。對系統(tǒng)復(fù)位或?qū)R0中的PE位變?yōu)檫壿?后,處理器進(jìn)入實地址模式。通過給CR0寄存器中的PE位置1,微處理器將進(jìn)入保護(hù)模式,在進(jìn)行該操作前必須對其他方面做好初始化。通過將EFLAG寄存器中的VM位置為邏輯1就可由保護(hù)模式進(jìn)入虛擬8086模式。若要進(jìn)入系統(tǒng)存儲器管理模式,則可使Pentium處理器的SMI系統(tǒng)管理中斷輸入信號有效。使用RSM指令可以從系統(tǒng)存儲器管理模式中斷返回到被中斷程序的中斷點處。

主站蜘蛛池模板: 河东区| 晋中市| 镇原县| 乾安县| 涞源县| 章丘市| 侯马市| 沿河| 如皋市| 林口县| 姚安县| 香港 | 九龙坡区| 浮梁县| 安仁县| 嘉黎县| 井陉县| 萨嘎县| 黑水县| 洪江市| 浮山县| 金寨县| 扶风县| 四平市| 昌平区| 崇义县| 庐江县| 扎兰屯市| 余庆县| 共和县| 珲春市| 赤城县| 垦利县| 北碚区| 澄江县| 万山特区| 青河县| 安图县| 邳州市| 正阳县| 师宗县|