微型計(jì)算機(jī)原理與接口技術(shù)(第2版):第1章 Pentium保護(hù)模式存儲(chǔ)管理_第1頁(yè)
微型計(jì)算機(jī)原理與接口技術(shù)(第2版):第1章 Pentium保護(hù)模式存儲(chǔ)管理_第2頁(yè)
微型計(jì)算機(jī)原理與接口技術(shù)(第2版):第1章 Pentium保護(hù)模式存儲(chǔ)管理_第3頁(yè)
微型計(jì)算機(jī)原理與接口技術(shù)(第2版):第1章 Pentium保護(hù)模式存儲(chǔ)管理_第4頁(yè)
微型計(jì)算機(jī)原理與接口技術(shù)(第2版):第1章 Pentium保護(hù)模式存儲(chǔ)管理_第5頁(yè)
已閱讀5頁(yè),還剩62頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、微型計(jì)算機(jī)原理與接口技術(shù)(第2版) 第1章 Pentium保護(hù)模式存儲(chǔ)管理 1.1 虛擬存儲(chǔ)器及其工作原理 虛擬存儲(chǔ)器又稱為虛擬存儲(chǔ)系統(tǒng)。虛擬存儲(chǔ)器是為滿足用戶對(duì)存儲(chǔ)空間不斷擴(kuò)大的要求而提出的,隨著用戶程序復(fù)雜性的增加,占用存儲(chǔ)空間越來(lái)越大。其解決辦法是,可擴(kuò)大主存,但是造價(jià)高,空間利用率很低,并不是好的途徑。采用虛擬存儲(chǔ)器,可較好地解決這個(gè)問(wèn)題。虛擬存儲(chǔ)器這個(gè)概念是1961年由英國(guó)曼徹斯特大學(xué)的Kilburn等人提出的,并于20世紀(jì)70年代廣泛應(yīng)用于大中型計(jì)算機(jī)之中,現(xiàn)在的微型計(jì)算機(jī)也都采用了這種技術(shù)。虛擬存儲(chǔ)器是由主存儲(chǔ)器、輔助存儲(chǔ)器、輔助硬件和操作系統(tǒng)管理軟件組成的一種存儲(chǔ)體系。它把輔助

2、存儲(chǔ)器作為主存儲(chǔ)器的擴(kuò)充,對(duì)應(yīng)用程序員來(lái)說(shuō),好像計(jì)算機(jī)系統(tǒng)有一個(gè)容量很大的主存。虛擬存儲(chǔ)系統(tǒng)的目標(biāo)是為了增加存儲(chǔ)器的存儲(chǔ)容量,它的速度接近于主存,單位造價(jià)接近于輔存,因此性能價(jià)格比很高。 表1.1.1 虛擬存儲(chǔ)器和Cache存儲(chǔ)器的比較 1.1.1 地址空間及地址 在虛擬存儲(chǔ)器中有3種地址空間及對(duì)應(yīng)的3種地址。3種地址空間分別是虛擬地址空間、主存地址空間、輔存地址空間。虛擬地址空間:又稱為虛存地址空間,是應(yīng)用程序員用來(lái)編寫程序的地址空間,與此相對(duì)應(yīng)的地址稱為虛地址或邏輯地址。主存地址空間:又稱為實(shí)存地址空間,是存儲(chǔ)、運(yùn)行程序的空間,其相應(yīng)的地址稱為主存物理地址或?qū)嵉刂贰]o存地址空間:也就是磁盤

3、存儲(chǔ)器的地址空間,是用來(lái)存放程序的空間,相應(yīng)的地址稱為輔存地址或磁盤地址。 1.1.2 虛擬存儲(chǔ)器工作原理 存貯管理方式 由于采用的存貯映象算法不同,就形成了不同的存貯管理方式,其中主要有段式、頁(yè)式和段頁(yè)式3種。Pentium支持分段存儲(chǔ)管理、分頁(yè)存儲(chǔ)管理和段頁(yè)式存儲(chǔ)管理。Pentium微處理器片內(nèi)存儲(chǔ)管理部件負(fù)責(zé)對(duì)物理存儲(chǔ)器實(shí)施安全可靠且行之有效的存儲(chǔ)管理操作。當(dāng)存儲(chǔ)管理部件正常運(yùn)轉(zhuǎn)時(shí),程序是不能直接對(duì)物理存儲(chǔ)器進(jìn)行尋址操作的,只能對(duì)一個(gè)被稱之為虛擬存儲(chǔ)器的存儲(chǔ)器模型進(jìn)行尋址操作。Pentium微處理機(jī)的存儲(chǔ)管理部件由分段部件和分頁(yè)部件組成。分段部件可以提供多個(gè)各自獨(dú)立的地址空間,而分頁(yè)部件

4、可以使用少量的隨機(jī)存儲(chǔ)器(RAM)和磁盤存儲(chǔ)器去支持一個(gè)很大的地址空間模型。由程序提供的地址叫做邏輯地址。分段部件的功能之一就是將邏輯地址轉(zhuǎn)換成一個(gè)連續(xù)的不分段的地址空間,這個(gè)地址空間的地址叫做線性地址。而分頁(yè)部件的主要功能就是將線性地址轉(zhuǎn)換成物理地址。 1.2 分段存儲(chǔ)管理 1.2.1 分段存儲(chǔ)管理的基本思想 通常,一個(gè)程序由多個(gè)模塊組成,特別是在結(jié)構(gòu)化程序設(shè)計(jì)思想提出之后,程序的模塊性就更強(qiáng)了。一個(gè)復(fù)雜的大程序總可以分解成多個(gè)在邏輯上相對(duì)獨(dú)立的模塊,模塊間的界面和調(diào)用關(guān)系是可以清楚定義的。這些模塊可以是主程序、各種能賦于名稱的子程序或過(guò)程,也可以是表格、數(shù)組、樹(shù)、向量等某類數(shù)據(jù)元素的集合。

5、模塊的大小可以各不相同,有的甚至事先無(wú)法確定。但每一個(gè)模塊都是一個(gè)特定功能的獨(dú)立的程序段,都是以該段的起點(diǎn)為0相對(duì)編址。把主存按段分配的存儲(chǔ)管理方式就稱為段式管理。程序進(jìn)入內(nèi)存時(shí),各程序段要求占據(jù)相對(duì)獨(dú)立的內(nèi)存區(qū)間。因此,現(xiàn)代微機(jī)系統(tǒng)把物理空間分成相對(duì)獨(dú)立的許多內(nèi)存段,每個(gè)內(nèi)存段放置一個(gè)程序段,至此內(nèi)存段與程序段統(tǒng)一,統(tǒng)稱為段。一個(gè)程序擁有多個(gè)段、不同程序占據(jù)不完全相同的幾個(gè)段。而且管理系統(tǒng)所需要的信息放置在屬于系統(tǒng)所有的段中。 1分段存儲(chǔ)管理工作過(guò)程 2虛擬地址和虛擬地址空間 Pentium微處理機(jī)在保護(hù)模式下的存儲(chǔ)器管理單元使用48位的存儲(chǔ)器指針。它分為段選擇符(或簡(jiǎn)稱為選擇符)和偏移量?jī)?/p>

6、部分。該48位存儲(chǔ)器指針?lè)Q為虛擬地址,它在程序中用以規(guī)定指令或數(shù)據(jù)的存儲(chǔ)器位置。段選擇符16位,偏移量32位。段選擇符可放在Pentium微處理機(jī)段寄存器中。若要訪問(wèn)存儲(chǔ)器中的代碼,則段選擇符應(yīng)放在CS中。若要訪問(wèn)存儲(chǔ)器中的數(shù)據(jù),則段選擇符應(yīng)放在DS、ES、FS、GS、SS中的任意一個(gè)。偏移量放在Pentium微處理機(jī)的用戶可訪問(wèn)的寄存器中。若要訪問(wèn)存儲(chǔ)器中的代碼,則偏移量放在EIP寄存器中。若要訪問(wèn)存儲(chǔ)器中的數(shù)據(jù),則偏移量放在EAX、EBX、ECX、EDX、ESI、EDI等寄存器中。由于偏移量是32位長(zhǎng),所以段大小可達(dá)4G字節(jié)。我們說(shuō)段大小可達(dá)4G字節(jié)是因?yàn)槎未笮?shí)際上可變的,它可從1個(gè)字節(jié)

7、到4G字節(jié)。 保護(hù)模式下的存儲(chǔ)器指針及段選擇符格式 3虛實(shí)地址轉(zhuǎn)換 Pentium微處理機(jī)的分段存儲(chǔ)管理機(jī)制允許將46位虛擬地址映射到硬件所需的32位物理地址。首先由虛擬地址(也稱邏輯地址)段選擇符部分的13位索引字段確定段描述符在段表(也稱段描述符表)的位置。然后取出段描述符中的32位基地址并與偏移量相加,得到32位的線性地址。如果不啟用分頁(yè)功能,則線性地址就直接作為物理地址。 虛實(shí)地址轉(zhuǎn)換示意圖 1.2.2 段描述符 段描述符是Pentium微處理機(jī)存儲(chǔ)管理部件用以管理64T字節(jié)虛擬存儲(chǔ)地址空間分段的基本元素。一個(gè)段描述符對(duì)應(yīng)于虛擬地址空間中的一個(gè)存儲(chǔ)器段。段描述符是位于主存中的一種數(shù)據(jù)結(jié)

8、構(gòu),由系統(tǒng)程序創(chuàng)建,它為處理機(jī)提供段的基本信息。所有段描述符均由8個(gè)字節(jié)組成。段描述符內(nèi)保存著供處理機(jī)使用的有關(guān)段的屬性、段的大小、段在存儲(chǔ)器中的位置以及控制和狀態(tài)信息。一般說(shuō)來(lái),各段描述符都是由各種編譯程序、各種連接程序、各種裝入程序或者是操作系統(tǒng)產(chǎn)生的,而不是由各種應(yīng)用程序生成的。段描述符按段的性質(zhì)可分為程序段描述符、系統(tǒng)段描述符和門描述符,如圖1.2.4所示。對(duì)于不同的描述符,其格式存在差異。 段描述符的分類 1程序段描述符 程序段描述符的格式:(1)基地址字段Pentium微處理機(jī)用這個(gè)字段來(lái)規(guī)定某一個(gè)段在4GB物理地址空間中的起始位置。段描述符的第24和第7字節(jié)組成了32位的基址字段

9、,這個(gè)基址可以訪問(wèn)4G(232)字節(jié)的主存空間。(2)段界限字段段描述符中的段界限字段是用來(lái)定義段的大小規(guī)模。段描述符的第0、1字節(jié)和第6字節(jié)的低4位是20位的段界限字段,該字段的值決定了段的長(zhǎng)度,而該字段的值的單位由“G”位決定?!癎”位稱作粒度位,用來(lái)確定段界限所使用的長(zhǎng)度單位。(3)粒位G字段段描述符中的這個(gè)字段是用來(lái)確定段界限所使用的長(zhǎng)度單位。段描述符的第6字節(jié)的D7位是粒度位G字段。G=0時(shí),段的長(zhǎng)度以一個(gè)字節(jié)為單位。G=1時(shí),段的長(zhǎng)度以4K(212)字節(jié)為單位。當(dāng)G=0時(shí),段界限字段值的范圍可從1B到1MB(因?yàn)槎谓缦逓?0位)范圍。在這種情況下,段界限字段的值可在1B的基礎(chǔ)上,每

10、次增值1B。當(dāng)G=1時(shí),段界限字段值的范圍可從4KB到4GB范圍。在這種情況下,段界限字段的值可在4KB的基礎(chǔ)上,每次增值4KB。(4)分類S字段 段描述符中的第5字節(jié)的D4位“S”字段是用來(lái)區(qū)分是系統(tǒng)段描述符還是非系統(tǒng)段描述符。當(dāng)S=0時(shí),是系統(tǒng)段描述符。當(dāng)S=1時(shí),是非系統(tǒng)段描述符。(5)段存在位P字段P字段表示該段是否在內(nèi)存中。段描述符的第5字節(jié)的D7位是P字段。當(dāng)P=1時(shí),表示該段在內(nèi)存中。當(dāng)P=0時(shí),表示該段不在內(nèi)存中。 (6)系統(tǒng)可用位AVL字段表示系統(tǒng)軟件是否可用本段。段描述符的第6字節(jié)的D4位是AVL字段。當(dāng)AVL=1時(shí),表示系統(tǒng)軟件可用本段。當(dāng)AVL=0時(shí),表示系統(tǒng)軟件不能用

11、本段。 (7)特權(quán)級(jí)DPL字段這個(gè)字段用來(lái)定義段的特權(quán)級(jí)。段描述符的第5字節(jié)的D6、D5位是DPL字段。DPL字段占有2位,故有4個(gè)特權(quán)級(jí):00、01、10、11,稱作0級(jí)、1級(jí)、2級(jí)、3級(jí)。0級(jí)的特權(quán)最高,1級(jí)次之,3級(jí)的特權(quán)最低。借助于保護(hù)機(jī)構(gòu),用這個(gè)字段定義的特權(quán)級(jí)去控制對(duì)這個(gè)段的訪問(wèn)。其訪問(wèn)原則是高特權(quán)級(jí)的程序段可以訪問(wèn)低特權(quán)級(jí)程序的數(shù)據(jù)段,反之則不行。(8)類型TYPE字段段描述符的第5字節(jié)的低4位是類型TYPE字段。類型TYPE字段在不同的段描述符中有不同的格式。1)數(shù)據(jù)段或堆棧段描述符中的類型TYPE字段。數(shù)據(jù)段或堆棧段描述符中的類型TYPE字段的格式如表1.2.2所示。 E可執(zhí)

12、行位。當(dāng)E=0時(shí),是數(shù)據(jù)段或堆棧段。 ED擴(kuò)展方向位。當(dāng)ED=0時(shí),向上擴(kuò)展(地址增加方向),通常用于數(shù)據(jù)段。它指明段的地址范圍是從基地址向高位地址方向擴(kuò)展,可以一直擴(kuò)展到該數(shù)據(jù)段的上界,上界的界限值是最大值。在數(shù)據(jù)段內(nèi),段界限字段規(guī)定了該數(shù)據(jù)段的上界,使用時(shí),段的偏移量值必須小于等于界限值。當(dāng)ED=1時(shí),向下擴(kuò)展(地址減小方向),通常用于堆棧段。它指明從段的最大偏移量處向低位地址方向擴(kuò)展,可以一直擴(kuò)展到該堆棧段的下界,下界的界限值是最小值。在向下擴(kuò)展的堆棧段內(nèi),段界限字段規(guī)定了該堆棧段的下界,使用時(shí),偏移量的值必須大于界限。在80X86系統(tǒng)中,堆棧向小地址方向生成,堆棧底部的地址最大,隨著壓

13、入堆棧的數(shù)據(jù)增多,棧頂?shù)牡刂吩絹?lái)越小,這就是“向下擴(kuò)展”的含義,為此,要規(guī)定一個(gè)界限,使棧頂?shù)钠屏坎荒苄∮谶@個(gè)值。 W可寫位。當(dāng)W=0時(shí),不允許寫入。當(dāng)W=1時(shí),允許寫入。 A訪問(wèn)位。當(dāng)A=0時(shí),該段尚未被訪問(wèn)。當(dāng)A=1時(shí),該段已被訪問(wèn)。2)代碼段描述符中的類型TYPE字段代碼段描述符中的類型TYPE字段的格式如表1.2.3所示。 E可執(zhí)行位。當(dāng)E=1時(shí),是代碼段。 C一致性位。所謂一致性檢查,就是采用特權(quán)級(jí)進(jìn)行控制。當(dāng)C=0時(shí),表示非一致性代碼段,此時(shí)忽視段描述符的特權(quán)值。當(dāng)C=1時(shí),表示一致性代碼段,需要進(jìn)行特權(quán)級(jí)檢查。 R可讀位。當(dāng)R=0時(shí),不允許讀。當(dāng)R=1時(shí),允許讀。當(dāng)然,對(duì)程序段

14、來(lái)說(shuō),通常都是“可執(zhí)行的”。R位取0可防止用戶程序?qū)Υ鎯?chǔ)器里的“目標(biāo)程序代碼”做手腳。R位為0的描述符只能加載到CS的描述符寄存器,而R位為1的描述符可加載到CS、DS、ES、FS及GS的描述符寄存器,此時(shí),可以讀取段內(nèi)的數(shù)據(jù)(程序代碼)。 A訪問(wèn)位。當(dāng)A=0時(shí),該段尚未被訪問(wèn);當(dāng)A=1時(shí),該段已被訪問(wèn)。 (9)D位/B位字段段描述符的第6字節(jié)的D6位是D位/B位字段。這個(gè)字段在代碼段描述符中叫做D位字段,而在數(shù)據(jù)段和堆棧段描述符中叫做B位字段。該字段可分為下述三種情況。1)在代碼段描述符中,用來(lái)指示代碼段中缺省的操作數(shù)的長(zhǎng)度和有效地址長(zhǎng)度。當(dāng)D=1時(shí),說(shuō)明采用的是32位操作數(shù)和32位有效地址

15、的尋址方式。D=0時(shí),則說(shuō)明采用的是16位操作數(shù)和16位有效地址的尋址方式。2)在堆棧段描述符中,用來(lái)指示堆棧指針寄存器的大小。當(dāng)B=1時(shí),使用的是32位的堆棧指針寄存器ESP。當(dāng)B=0時(shí),使用的是16位的堆棧指針寄存器SP。堆棧段的上界是一個(gè)各位均為1的地址。當(dāng)B=1時(shí),上界地址值為0FFFFFFFFH。當(dāng)B=0時(shí),上界地址值為0FFFFH。3)在數(shù)據(jù)段描述符中,用來(lái)指示數(shù)據(jù)段中操作數(shù)的長(zhǎng)度。當(dāng)B=1時(shí),使用的是32位的操作數(shù)。當(dāng)B=0時(shí),使用的是16位的操作數(shù)。(10)兼容位字段段描述符的第6字節(jié)的D5位必須是0,以便與將來(lái)的處理器兼容。 程序段描述符的格式 2系統(tǒng)段描述符 系統(tǒng)段描述符中

16、的類型TYPE字段的格式 3門描述符 門描述符用來(lái)控制訪問(wèn)的目標(biāo)代碼段的入口點(diǎn)。所謂門是一種關(guān)卡,用來(lái)控制從一段程序到另一段程序或從一個(gè)任務(wù)到另一個(gè)任務(wù)的轉(zhuǎn)移。在轉(zhuǎn)移過(guò)程中自動(dòng)進(jìn)行保護(hù)檢查,并控制轉(zhuǎn)移到目的程序的入口。門描述符包括調(diào)用門、任務(wù)門、中斷門和陷阱門。這些門為控制轉(zhuǎn)移提供了一個(gè)間接的辦法,這一辦法允許處理器自動(dòng)地完成保護(hù)檢查。它也允許系統(tǒng)設(shè)計(jì)者控制操作系統(tǒng)的入口點(diǎn)。調(diào)用門用于改變特權(quán)級(jí)別,任務(wù)門用于任務(wù)切換,中斷門和陷阱門用于確定中斷服務(wù)程序。門描述符的第0、1、6、7字節(jié)是一個(gè)32位的偏移地址,第4字節(jié)是一個(gè)字計(jì)數(shù),第2、3字節(jié)是一個(gè)段選擇符,第5字節(jié)是門描述符的屬性。32位的偏移

17、地址指向中斷服務(wù)程序或其他程序的入口。 門描述符的格式 1.2.3 全局描述符表及寄存器 全局描述符表由段描述符組成。全局描述符表和段描述符都由系統(tǒng)程序產(chǎn)生。描述符表就是描述符的一個(gè)陣列,是存放在主存中的一種數(shù)據(jù)結(jié)構(gòu)。在Pentium微處理機(jī)中,全局描述符表寄存器GDTR指定了全局描述符表GDT在內(nèi)存中的起始地址。全局描述符表是Pentium微處理機(jī)進(jìn)入保護(hù)方式后存儲(chǔ)器管理系統(tǒng)中的一個(gè)重要組成部分。GDTR是Pentium微處理機(jī)中的48位寄存器。該寄存器的低2個(gè)字節(jié)標(biāo)識(shí)為16位界限,它規(guī)定了GDT按字節(jié)進(jìn)行計(jì)算的地址范圍的大小。GDTR的高4個(gè)字節(jié)標(biāo)為32位基地址,指示GDT在存儲(chǔ)器中開(kāi)始的

18、物理地址。用裝全局描述符表寄存器指令LGDT和存全局描述符表寄存器指令SGDT,可以對(duì)全局描述符表寄存器GDTR的內(nèi)容進(jìn)行裝入和保存的操作。由GDTR確定GDT存儲(chǔ)位置和界限 1.2.4 局部描述符表及寄存器 局部描述符表寄存器LDTR也是Pentium微處理機(jī)存儲(chǔ)器管理部件的一部分,每個(gè)任務(wù)除了可訪問(wèn)全局描述符表外還可訪問(wèn)它自己的描述符表,這個(gè)描述符表稱為局部描述符表LDT,它由LDTR定義某個(gè)任務(wù)用到的局部存儲(chǔ)器地址空間。Pentium微處理機(jī)中的局部描述符表寄存器LDTR由16位選擇符、32位基址、20位界限和12位屬性組成。基址、界限和屬性不可訪問(wèn),屬于程序不可見(jiàn)的部分,程序只能對(duì)16

19、位的段選擇符進(jìn)行訪問(wèn)。局部描述符表寄存器LDTR中的段選擇符是一個(gè)指向全局描述符表GDT中LDT描述符的選擇符,它還不能直接確定局部描述符表LDT的位置。如果LDTR中裝入了段選擇符,Pentium微處理機(jī)自動(dòng)地將相應(yīng)的LDT描述符從全局描述符表GDT中讀出來(lái),并裝入LDTR中程序不可見(jiàn)部分。也就是說(shuō),全局描述符表GDT中的LDT描述符才確定了局部描述符表。由LDTR確定LDT存儲(chǔ)位置和界限 1.2.5 中斷描述符表及寄存器 同全局描述符表寄存器一樣,Pentium微處理機(jī)通過(guò)中斷描述符表寄存器IDTR在內(nèi)存中定義了一個(gè)中斷描述符表IDT,中斷描述符表是Pentium微處理機(jī)進(jìn)入保護(hù)方式后存儲(chǔ)

20、器管理系統(tǒng)中的又一個(gè)重要組成部分。同GDTR一樣,IDTR是Pentium微處理機(jī)中的48位寄存器。該寄存器的低2個(gè)字節(jié)標(biāo)識(shí)為16位界限,它規(guī)定了IDT按字節(jié)計(jì)算的大小,IDT最大可達(dá)64KB(但是Pentium微處理機(jī)只能夠支持256個(gè)中斷和異常,最多占用2KB)。IDTR的高4個(gè)字節(jié)標(biāo)為32位基地址,指示IDT在存儲(chǔ)器中開(kāi)始的物理地址。中斷描述符表IDT中存放的描述符類型均是門描述符。門提供了一種將程序控制轉(zhuǎn)移到中斷服務(wù)程序入口的手段。每個(gè)門8個(gè)字節(jié),包含服務(wù)程序的屬性和起始地址。由IDTR確定IDT存儲(chǔ)位置和界限 1.2.6 任務(wù)狀態(tài)段及寄存器 在多任務(wù)系統(tǒng)中,多個(gè)任務(wù)可以并行執(zhí)行。當(dāng)然

21、,這種并行是宏觀上的并行。為了實(shí)現(xiàn)多個(gè)任務(wù)同時(shí)工作,就要求每個(gè)任務(wù)都有自己的虛擬存儲(chǔ)空間,都有自己的一個(gè)局部描述符表LDT,存放該任務(wù)私有的描述符。任務(wù)間的轉(zhuǎn)移必然會(huì)引起任務(wù)切換。任務(wù)切換操作要保存現(xiàn)有任務(wù)的機(jī)器狀態(tài)(指處理器的工作環(huán)境,比如各個(gè)寄存器的狀態(tài)),裝入新任務(wù)的機(jī)器狀態(tài)。這時(shí)的機(jī)器狀態(tài)就是通常操作系統(tǒng)的任務(wù)控制塊,對(duì)于Pentium微處理機(jī),稱之為任務(wù)狀態(tài)段TSS(Task State Segment)。任務(wù)狀態(tài)段TSS如同每個(gè)任務(wù)有自己的一個(gè)LDT一樣,各個(gè)任務(wù)都有自己的TSS。 TSS的格式 由TR確定TSS存儲(chǔ)位置和界限 任務(wù)寄存器TR中的32位基址值標(biāo)識(shí)任務(wù)狀態(tài)段在內(nèi)存中的

22、起始物理地址,20位界限值定義段的大小。雖然任務(wù)狀態(tài)段TSS描述符和其他任何描述符一樣,包含了任務(wù)狀態(tài)段TSS的位置、大小和優(yōu)先級(jí)別。但它們之間的區(qū)別在于TSS描述符所描述的TSS段不包含數(shù)據(jù)和代碼,它包含了任務(wù)狀態(tài)和任務(wù)間的關(guān)聯(lián)信息,以使任務(wù)可以被嵌套(第一個(gè)任務(wù)可以調(diào)用第二個(gè)任務(wù),而第二個(gè)任務(wù)又可以調(diào)用第三個(gè)任務(wù),依此類推)。TSS描述符由任務(wù)寄存器TR尋址。TR的內(nèi)容由裝任務(wù)寄存器指令LTR和存任務(wù)寄存器指令STR進(jìn)行裝入和保存。TR的內(nèi)容也可由保護(hù)模式下運(yùn)行程序中的遠(yuǎn)轉(zhuǎn)移JMP或遠(yuǎn)調(diào)用CALL指令來(lái)改變。LTR指令通常用于系統(tǒng)初始化過(guò)程中裝入第一個(gè)任務(wù)的選擇符。在初始化之后,遠(yuǎn)調(diào)用CA

23、LL或遠(yuǎn)轉(zhuǎn)移JMP指令通常對(duì)任務(wù)進(jìn)行切換。1.2.7 段選擇符及寄存器 在實(shí)模式下,段寄存器的16位值是基地址。而在保護(hù)模式下,為了加快對(duì)存儲(chǔ)器的訪問(wèn),每個(gè)段寄存器都有一個(gè)程序員不可見(jiàn)的段描述符高速緩沖寄存器與之對(duì)應(yīng)。這樣,每一個(gè)段寄存器就由兩部分組成,一部分為16位的可見(jiàn)部分,另一部分為64位的不可見(jiàn)部分(或稱段描述符高速緩沖寄存器)。對(duì)段寄存器的可見(jiàn)部分來(lái)說(shuō),可用傳送指令MOV裝入,而不可見(jiàn)部分則只能由處理機(jī)裝入,用戶是不能也不可能進(jìn)行干預(yù)和操作的。段寄存器的可見(jiàn)部分裝入的是16位的段選擇符。段選擇符用于識(shí)別(選擇)在全局描述符表GDT或局部描述符表LDT內(nèi)被逐一登記的段描述符。在8字節(jié)段

24、描述符中包含有定義段所用的32位的基地址、20位的段界限、12位的屬性(其中包括段類型、訪問(wèn)控制以及其他一些信息)。 1段選擇符 選擇符分為3個(gè)字段:13位索引字段INDEX,1位描述符表選擇字段TI和2位的請(qǐng)求特權(quán)級(jí)字段RPL。(1)描述符表選擇字段TI 段選擇符中的D2位(TI)是描述符表選擇字段,這個(gè)字段用來(lái)說(shuō)明使用的是全局描述符表GDT,還是局部描述符表LDT。當(dāng)TI=0時(shí),選擇的是全局描述符表GDT。當(dāng)TI=1時(shí),選擇的是局部描述符表LDT。(2)索引字段INDEX段選擇符中的D15D3位是索引字段,共13位,這就意味著,利用索引字段可以從擁有213=8192個(gè)段描述符的描述符表中選

25、出任何一個(gè)段描述符來(lái)。索引值乘以8就是相對(duì)于GDT或LDT首址的偏移量,處理機(jī)用這個(gè)偏移量再加上描述符表的基地址(來(lái)自全局描述符表寄存器GDTR,或者局部描述符表寄存器LDTR)就是段描述符在描述符表中的地址。(3)請(qǐng)求特權(quán)級(jí)字段RPL段選擇符中的D1、D0位是請(qǐng)求特權(quán)級(jí)字段。RPL字段占有2位,故有4個(gè)特權(quán)級(jí),00、01、10、11,稱作0級(jí)、1級(jí)、2級(jí)、3級(jí)。0級(jí)的特權(quán)最高,1級(jí)次之,3級(jí)的特權(quán)最低。 2段選擇符裝入段寄存器的操作 段選擇符裝入段寄存器的操作是通過(guò)應(yīng)用程序中的指令完成的。裝段寄存器的指令有2類,即直接的裝段寄存器指令和隱含的裝段寄存器指令。(1)直接的裝段寄存器指令:可使用

26、傳送指令MOV、彈出堆棧指令POP、加載段寄存器指令LDS、LSS、LGS、LFS。這些指令都是顯式地訪問(wèn)段寄存器。(2)隱含的裝段寄存器指令:可使用調(diào)用一個(gè)過(guò)程指令CALL、遠(yuǎn)轉(zhuǎn)移指令JMP。這種指令更改代碼段寄存器CS的內(nèi)容。由于絕大多數(shù)指令都要涉及段,所以段選擇符總是被裝在段寄存器內(nèi)備用。 1.3 保護(hù)模式下的訪問(wèn)操作與保護(hù)機(jī)制 1.3.1 保護(hù)機(jī)制的分類 1任務(wù)間存儲(chǔ)空間的保護(hù)任務(wù)間的保護(hù)是通過(guò)每一個(gè)任務(wù)所專用的LDT描述符實(shí)現(xiàn)的。根據(jù)LDT描述符,每個(gè)任務(wù)都有它特定的虛擬空間,因而避免各任務(wù)之間的干擾,起到隔離、保護(hù)的作用。2段屬性和界限的保護(hù)當(dāng)段寄存器進(jìn)行加載時(shí),需要進(jìn)行段存在性檢

27、查(屬性字節(jié)的P位)以及段限檢查。在段描述符中給出了20位的段界限值,每當(dāng)產(chǎn)生一個(gè)邏輯地址時(shí),都要比較偏移量和段限值。一旦偏移地址大于段限值,CPU就終止執(zhí)行命令,并發(fā)出越限異常。由此限制每個(gè)程序段只在自己的程序、數(shù)據(jù)段內(nèi)運(yùn)行,不相互干擾。最后,還要對(duì)該段的讀寫權(quán)限進(jìn)行檢查。3特權(quán)級(jí)與特權(quán)級(jí)保護(hù)特權(quán)級(jí)與特權(quán)保護(hù)是為了支持多用戶多任務(wù)操作系統(tǒng),使系統(tǒng)程序和用戶的任務(wù)程序之間、各任務(wù)程序之間互不干擾而采取的保護(hù)措施。Pentium微處理機(jī)系統(tǒng)提供了一個(gè)4級(jí)特權(quán)管理系統(tǒng),也就是4級(jí)保護(hù)系統(tǒng),如圖1.3.1所示。這樣可為不同程序規(guī)定一個(gè)權(quán)限,控制特權(quán)指令和I/O指令的使用,控制對(duì)段和段描述符的訪問(wèn),從

28、而有效地防止不同程序執(zhí)行時(shí)的相互干擾或非法訪問(wèn)、非法改寫GDT和LDT。 3種形式的特權(quán)管理 在實(shí)施管理中使用了3種形式的特權(quán)管理:當(dāng)前任務(wù)特權(quán)CPL、選擇符特權(quán)RPL和描述符特權(quán)DPL。并且規(guī)定:特權(quán)級(jí)為P的段中存儲(chǔ)的數(shù)據(jù),只能由特權(quán)級(jí)高于或等于P的段中運(yùn)行的程序使用;特權(quán)級(jí)為P的代碼段/過(guò)程,只能由在低于或等于P的特權(quán)級(jí)下執(zhí)行的任務(wù)調(diào)用。(1)當(dāng)前特權(quán)級(jí)CPLCPL是當(dāng)前正在執(zhí)行的代碼段所具有的訪問(wèn)特權(quán)級(jí),存放在CS段寄存器的最低兩位。每一項(xiàng)任務(wù)都是在其代碼段描述符所確定的特權(quán)級(jí)中運(yùn)行。當(dāng)前特權(quán)級(jí)就是任務(wù)執(zhí)行時(shí)所處的特權(quán)級(jí)。例如,一個(gè)正在運(yùn)行的任務(wù)的CPL,就是其描述符中訪問(wèn)權(quán)限字節(jié)的DP

29、L。當(dāng)前特權(quán)級(jí)的值一般就是代碼段描述符中的DPL。任務(wù)執(zhí)行時(shí)當(dāng)前特權(quán)級(jí)一般不能改變,如果必須改變,只能通過(guò)代碼段的門描述符的控制轉(zhuǎn)換才能實(shí)現(xiàn)。一般高一級(jí)的任務(wù)可以訪問(wèn)同級(jí)或低級(jí)GDT和LDT中定義的數(shù)據(jù),顯然在第3特權(quán)級(jí)執(zhí)行的任務(wù)對(duì)數(shù)據(jù)的訪問(wèn)受到的限制最大。(2)描述符特權(quán)級(jí)DPLDPL是段被訪問(wèn)的特權(quán)級(jí),保存在該段的段描述符的特權(quán)級(jí)DPL位。(3)請(qǐng)求特權(quán)級(jí)RPLRPL是新裝入段寄存器的段選擇符的特權(quán)級(jí),存放在段選擇符的最低兩位。 1.3.2 數(shù)據(jù)段訪問(wèn)及其特權(quán)級(jí)檢查 數(shù)據(jù)段訪問(wèn)的特權(quán)級(jí)檢查 1.3.3 任務(wù)內(nèi)的段間轉(zhuǎn)移及其特權(quán)級(jí)檢查 程序控制轉(zhuǎn)移有2種類型:NEAR類型的段內(nèi)轉(zhuǎn)移和FAR類

30、型的段間轉(zhuǎn)移。段內(nèi)轉(zhuǎn)移發(fā)生在同一個(gè)代碼段內(nèi),段的基址不變,所以不需要重新訪問(wèn)段描述符。轉(zhuǎn)移發(fā)生時(shí),只需要進(jìn)行段限保護(hù)檢查,即比較偏移量和段限值。段間轉(zhuǎn)移發(fā)生在不同的代碼段之間,不同的代碼段,其基址也不同,因此,轉(zhuǎn)移發(fā)生時(shí),需要重新訪問(wèn)目標(biāo)段的段描述符,以便確定目標(biāo)段的基址。在保護(hù)機(jī)制方面,除了要進(jìn)行段限保護(hù)檢查外,還要進(jìn)行特權(quán)級(jí)檢查。段間轉(zhuǎn)移有2種方法:段間直接控制轉(zhuǎn)移、段間間接控制轉(zhuǎn)移。下面將對(duì)這2種方法的實(shí)現(xiàn)過(guò)程和特權(quán)級(jí)檢查保護(hù)進(jìn)行說(shuō)明。 段間轉(zhuǎn)移方法小結(jié)(1)任務(wù)內(nèi)的控制轉(zhuǎn)移可分為同一特權(quán)級(jí)間的控制轉(zhuǎn)移和不同特權(quán)級(jí)間的控制轉(zhuǎn)移。(2)用JMP指令通過(guò)代碼段描述符,可實(shí)現(xiàn)同一特權(quán)級(jí)間的直接

31、控制轉(zhuǎn)移。(3)用CALL指令通過(guò)代碼段描述符,可實(shí)現(xiàn)同一特權(quán)級(jí)間的直接控制轉(zhuǎn)移,通過(guò)調(diào)用門,可實(shí)現(xiàn)同一特權(quán)級(jí)間或更高特權(quán)級(jí)的間接控制轉(zhuǎn)移。(4)用INT指令(包括異常中斷和外部中斷)通過(guò)中斷門/陷阱門,可實(shí)現(xiàn)同一特權(quán)級(jí)間或更高特權(quán)級(jí)的間接控制轉(zhuǎn)移。(5)將程序控制轉(zhuǎn)移給同一代碼段中的另一條指令,只須使用轉(zhuǎn)移或調(diào)用指令即可,此時(shí),只需要檢查段長(zhǎng)界限,以確保轉(zhuǎn)移或調(diào)用的目標(biāo)不會(huì)超過(guò)當(dāng)前代碼段的邊界。 任務(wù)內(nèi)段間控制轉(zhuǎn)移的描述符訪問(wèn)規(guī)則 段間直接轉(zhuǎn)移過(guò)程及目標(biāo)線性地址的生成 通過(guò)代碼段的段描述符實(shí)現(xiàn)段間直接轉(zhuǎn)移的特權(quán)檢查 用調(diào)用門實(shí)現(xiàn)段間間接轉(zhuǎn)移的過(guò)程 1.3.4 任務(wù)切換及其特權(quán)級(jí)檢查 所謂任務(wù)

32、切換,是指從執(zhí)行某一個(gè)任務(wù)轉(zhuǎn)換到執(zhí)行另外一個(gè)任務(wù)的過(guò)程。任務(wù)切換是多任務(wù)/多用戶系統(tǒng)的一個(gè)非常重要的屬性。Pentium微處理器支持多任務(wù),允許多個(gè)任務(wù)之間通過(guò)硬件進(jìn)行快速切換。任務(wù)切換的過(guò)程是:保存機(jī)器的整個(gè)狀態(tài)(比如所有的寄存器、地址空間、到原來(lái)任務(wù)的鏈接等),裝入新的執(zhí)行狀態(tài),進(jìn)行保護(hù)檢查,開(kāi)始新任務(wù)的執(zhí)行,執(zhí)行完畢后回到原來(lái)的任務(wù)繼續(xù)執(zhí)行。1任務(wù)的設(shè)定在執(zhí)行某任務(wù)以前,必須在存儲(chǔ)器中定義GDT、IDT、LDT和TSS,在GDT中登記(寫入)所需要的段描述符、門描述符、LDT描述符、TSS描述符,在IDT中登記(寫入)所需要的中斷門、陷阱門、任務(wù)門等,并且還必須對(duì)GDTR、IDTR、LD

33、TR、TR設(shè)置適當(dāng)?shù)臄?shù)值。TR給出TSS段的基址。2TSS描述符和任務(wù)門在任務(wù)切換中,通常用到任務(wù)狀態(tài)段TSS和任務(wù)門。TSS描述符和任務(wù)門在前面已有說(shuō)明。每一個(gè)任務(wù)必須有一個(gè)任務(wù)狀態(tài)段TSS與其關(guān)聯(lián)。TSS描述符屬于系統(tǒng)描述符類(屬性字節(jié)中S=0),該描述符包含了TSS在內(nèi)存中的基址和界限。TSS描述符位于GDT中,所以指向TSS描述符的段選擇符的TI位應(yīng)該為0。 用調(diào)用門實(shí)現(xiàn)段間間接轉(zhuǎn)移的特權(quán)級(jí)檢查 3任務(wù)切換的方法 在進(jìn)行任務(wù)切換時(shí),要把新任務(wù)的TSS描述符的選擇符傳送到TR的選擇符字段,對(duì)TR的選擇符字段有兩種修改方法:(1)直接任務(wù)切換:直接訪問(wèn)新任務(wù)的TSS描述符,從而得到新任務(wù)的

34、TSS。在直接任務(wù)切換中,段間JMP/CALL指令的操作數(shù)的段選擇符就是新任務(wù)的TSS描述符的選擇符,它被直接加載到TR的選擇符字段,對(duì)于執(zhí)行IRET指令的情況(必須NT=1),則是把曾經(jīng)壓入到當(dāng)前執(zhí)行任務(wù)的TSS中的返回鏈(返回鏈就是前一個(gè)任務(wù)的TSS描述符的段選擇符,即原來(lái)TR中的16位可見(jiàn)部分內(nèi)容),作為TR選擇符字段的修改值。(2)間接任務(wù)切換:新任務(wù)的TSS描述符的選擇符由任務(wù)門加載。通過(guò)任務(wù)門間接訪問(wèn)新任務(wù)的TSS描述符,從而得到新任務(wù)的TSS。在間接任務(wù)切換中,段間JMP/CALL指令的操作數(shù)的段選擇符是任務(wù)門的選擇符,而任務(wù)門的內(nèi)容包含新任務(wù)的TSS描述符的選擇符,所以,新任務(wù)

35、的TSS描述符的選擇符將由任務(wù)門間接加載到TR的選擇符字段,3任務(wù)切換的方法 這樣,對(duì)任務(wù)的切換,可以采用以下方法:(1)段間JMP/CALL指令:進(jìn)行直接任務(wù)切換或間接任務(wù)切換。(2)INT指令(包括異常中斷和外部中斷):只能進(jìn)行間接任務(wù)切換。訪問(wèn)IDT中的任務(wù)門,新任務(wù)的TSS描述符的選擇符由任務(wù)門加載。當(dāng)中斷/異常發(fā)生時(shí),如果IDT的目標(biāo)項(xiàng)是中斷門或陷阱門,則執(zhí)行中斷處理程序。如果目標(biāo)項(xiàng)是任務(wù)門,則進(jìn)行任務(wù)切換。(3)IRET指令(當(dāng)NT=1時(shí)):只能進(jìn)行直接任務(wù)切換。EFLAGS寄存器的NT位必須為1,表明是處于任務(wù)嵌套。NT為0時(shí),執(zhí)行IRET指令與正常中斷處理程序最后執(zhí)行IRET指

36、令的結(jié)果相同,即只完成正常的中斷返回,不進(jìn)行任務(wù)切換。 任務(wù)間的切換過(guò)程示意圖 1.4 向保護(hù)模式的轉(zhuǎn)換 下面的步驟將完成從實(shí)地址方式到保護(hù)模式的切換: (1)初始化中斷描述符表IDT,使其包含至少前32種中斷類型有效的中斷門描述符。(2)初始化全局描述符表GDT,使其第0項(xiàng)為一個(gè)空描述符,并且使其至少包含一個(gè)數(shù)據(jù)段描述符、一個(gè)代碼段描述符、一個(gè)堆棧段描述符。(3)進(jìn)入保護(hù)模式的實(shí)際方法是通過(guò)指令MOV CR0,R/M 使CR0寄存器中的PE位置1。這就使Pentium置為保護(hù)模式。(4)進(jìn)入保護(hù)模式后,執(zhí)行一條段內(nèi)近JMP指令清除內(nèi)部指令隊(duì)列并把TSS描述符基址裝入到TR中。(5)將初始數(shù)據(jù)

37、段選擇符的值裝入到所有的數(shù)據(jù)段寄存器中。(6)現(xiàn)在Pentium已運(yùn)行在保護(hù)模式下,正在使用GDT和IDT中定義的段描述符。 另一種適合多任務(wù)操作系統(tǒng)進(jìn)入保護(hù)模式的方法是為裝載所有的寄存器而建立任務(wù)切換。對(duì)于多任務(wù)操作系統(tǒng)利用任務(wù)切換來(lái)使Pentium進(jìn)入到保護(hù)模式所需的步驟如下:(1)初始化中斷描述符表IDT,以便它用IDT中的至少32個(gè)描述符提供有效的中斷描述符。(2)初始化全局描述符表GDT,以便使其最少有兩個(gè)任務(wù)狀態(tài)段TSS描述符和初始任務(wù)所需要的原始代碼段及數(shù)據(jù)段描述符。(3)初始化任務(wù)寄存器TR,使它指向一個(gè)TSS,當(dāng)初始任務(wù)發(fā)生切換并訪問(wèn)新的TSS時(shí),當(dāng)前寄存器值將保存在這個(gè)原始

38、的TSS中。(4)進(jìn)入保護(hù)模式后,執(zhí)行一條段內(nèi)近JMP指令清除內(nèi)部指令隊(duì)列,切換到保護(hù)模式下。將當(dāng)前的TSS選擇符裝入到TR寄存器中。(5)用一條遠(yuǎn)轉(zhuǎn)移指令裝載TR寄存器,以便訪問(wèn)新的TSS并保存當(dāng)前狀態(tài)。(6)現(xiàn)在Pentium已運(yùn)行在保護(hù)模式下。 1.5 分頁(yè)存儲(chǔ)管理 分頁(yè)是虛擬存儲(chǔ)器多任務(wù)操作系統(tǒng)另一種存儲(chǔ)器管理方法。段的長(zhǎng)度是可變的,而頁(yè)的長(zhǎng)度是固定的,比如每頁(yè)4KB。分頁(yè)方法將程序分成若干個(gè)大小相同的頁(yè),各頁(yè)與程序的邏輯結(jié)構(gòu)沒(méi)有直接的關(guān)系。分頁(yè)存儲(chǔ)器的這種固定大小頁(yè)有一個(gè)缺點(diǎn),就是存儲(chǔ)管理程序每次分配最少是一個(gè)頁(yè)(即使它們并不全用)。一頁(yè)中未用的存儲(chǔ)器區(qū)域稱為碎片,碎片導(dǎo)致存儲(chǔ)器使用

39、效率降低,但是分頁(yè)大大簡(jiǎn)化了存儲(chǔ)管理程序的實(shí)現(xiàn)。Pentium微處理器采用二級(jí)頁(yè)表方法對(duì)頁(yè)面進(jìn)行管理,第1級(jí)頁(yè)表稱作頁(yè)目錄,頁(yè)目錄中的頁(yè)目錄項(xiàng)指明第2級(jí)頁(yè)表中各頁(yè)表的基址。 1.5.1 頁(yè)目錄與頁(yè)表 1頁(yè)目錄基地址寄存器頁(yè)目錄存儲(chǔ)在內(nèi)存中,并通過(guò)頁(yè)目錄基地址寄存器CR3來(lái)訪問(wèn)??刂萍拇嫫鰿R3保存著頁(yè)目錄的基地址,該基地址起始于任意4KB的邊界。指令MOV CR3,reg用來(lái)對(duì)CR3寄存器進(jìn)行初始化。CR2是頁(yè)故障線性地址寄存器,它保存著檢測(cè)到的最后引起故障的32位線性地址。2頁(yè)目錄頁(yè)目錄由頁(yè)目錄項(xiàng)組成,頁(yè)目錄項(xiàng)包含下一級(jí)頁(yè)表的基址和有關(guān)頁(yè)表的信息。Pentium微處理器中,頁(yè)目錄最多包含10

40、24個(gè)頁(yè)目錄項(xiàng),每個(gè)頁(yè)目錄項(xiàng)為4個(gè)字節(jié),所以,頁(yè)目錄自身占用一個(gè)4KB的頁(yè)面(存儲(chǔ)頁(yè))。32位線性地址的最高10位(A31-A22)是頁(yè)目錄的索引,用于在頁(yè)目錄中查找不同的頁(yè)目錄項(xiàng),而頁(yè)目錄項(xiàng)中保存著下一級(jí)所對(duì)應(yīng)的頁(yè)表的基地址。3頁(yè)表頁(yè)表由頁(yè)表項(xiàng)組成,頁(yè)表項(xiàng)包含頁(yè)面(存儲(chǔ)頁(yè))的基址和有關(guān)頁(yè)面的信息。Pentium微處理器中,頁(yè)表最多包含1024個(gè)頁(yè)表項(xiàng),每個(gè)頁(yè)表項(xiàng)為4個(gè)字節(jié),所以,頁(yè)表自身也占用一個(gè)4KB的頁(yè)面(存儲(chǔ)頁(yè))。32位線性地址的10位(A21-A12)是頁(yè)表的索引,用于在頁(yè)表中查找不同的頁(yè)表項(xiàng),而頁(yè)表項(xiàng)中保存著所對(duì)應(yīng)的頁(yè)面(存儲(chǔ)頁(yè))的基地址,即頁(yè)面(存儲(chǔ)頁(yè))的起始地址。 頁(yè)目錄項(xiàng)格式

41、 頁(yè)表項(xiàng)格式 1.5.2 分頁(yè)轉(zhuǎn)換機(jī)制 1分頁(yè)轉(zhuǎn)換的工作過(guò)程在分頁(yè)轉(zhuǎn)換機(jī)制中,當(dāng)要訪問(wèn)一個(gè)操作單元時(shí),32位線性地址轉(zhuǎn)換為32位物理地址是通過(guò)兩級(jí)查表來(lái)實(shí)現(xiàn)的。圖1.5.3展示了Pentium微處理器的分頁(yè)機(jī)制。這里,程序中產(chǎn)生的線性地址00C02098H經(jīng)過(guò)分頁(yè)機(jī)構(gòu)被轉(zhuǎn)換成物理地址00160098H。分頁(yè)機(jī)制的工作過(guò)程如下:(1)4KB長(zhǎng)的頁(yè)目錄存儲(chǔ)在由CR3寄存器所指定的物理地址。此地址常稱為根地址。假設(shè)要尋址單元的線性地址為:0000000011 0000000010 000010011000B(2)用線性地址中的最高10位(A31-A22)頁(yè)目錄索引,即0000000011B(3號(hào)頁(yè)目錄

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論