亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

蟲蟲首頁| 資源下載| 資源專輯| 精品軟件
登錄| 注冊

穩(wěn)(wěn)定控制系統(tǒng)(tǒng)

  • GB/T 4728.07-2008 電氣簡圖用圖形符號 第07部分:開關(guān)、控制和保護器件

    GB/T 4728.07-2008 電氣簡圖用圖形符號 第07部分:開關(guān)、控制和保護器件

    標簽: 4728.07 2008 電氣 圖形符號

    上傳時間: 2013-06-25

    上傳用戶:eeworm

  • GB-T 2471-1995 電阻器和電容器優(yōu)先數(shù)系

    GB-T 2471-1995 電阻器和電容器優(yōu)先數(shù)系

    標簽: GB-T 2471 1995 電阻器

    上傳時間: 2013-04-15

    上傳用戶:eeworm

  • 永磁同步直線電機的矢量控制.rar

    本文分析了永磁同步直線電動機的運行機理與運行特性,并通過坐標變換,分別得出了電機在a—b—c,α—β、d—q坐標系下的數(shù)學(xué)模型。針對永磁同步直線電機模型的非線性與耦合特性,采用了次級磁場定向的矢量控制,并使id=0,不但解決了上述問題,還實現(xiàn)了最大推力電流比控制。為了獲得平穩(wěn)的推力,采用了SVPWM控制,并對它算法實現(xiàn)進行了研究。 針對速度環(huán)采用傳統(tǒng)PID控制難以滿足高性能矢量控制系統(tǒng),通過對傳統(tǒng)PID控制和模糊控制理論的研究,將兩者相結(jié)合,設(shè)計出能夠在線自整定的模糊PID控制器。將該控制器代替?zhèn)鹘y(tǒng)的PID控制器應(yīng)用于速度環(huán),以提高系統(tǒng)的動靜態(tài)性能。 在以上分析的基礎(chǔ)上,設(shè)計了永磁同步直線電機矢量控制系統(tǒng)的軟、硬件。其中電流檢測采用了新穎的電流傳感器芯片IR2175,以解決溫漂問題;速度檢測采用了增量式光柵尺,設(shè)計了與DSP的接口電路,通過M/T法實現(xiàn)對電機的測速。最后在Matlab/Simlink下建立了電機及其矢量控制系統(tǒng)的仿真模型,并對分別采用傳統(tǒng)PID速度控制器和模糊PID速度控制器的系統(tǒng)進行仿真,結(jié)果表明采用模糊PID控制具有更好的動態(tài)響應(yīng)性能,能有效的抑制暫態(tài)和穩(wěn)態(tài)下的推力脈動,對于負載擾動具有較強的魯棒性。

    標簽: 永磁同步 直線電機 矢量控制

    上傳時間: 2013-07-04

    上傳用戶:13681659100

  • 基于模糊參數(shù)自整定PID控制的交流伺服系統(tǒng)研究.rar

    交流伺服技術(shù)是研制開發(fā)各種先進的機電一體化設(shè)備,如工業(yè)機器人、數(shù)控機床、加工中心等的關(guān)鍵性技術(shù),但是要提高交流伺服系統(tǒng)的控制性能關(guān)鍵在于伺服控制器對電機動態(tài)和靜態(tài)響應(yīng)的控制,要獲得良好的電機動、靜態(tài)性能關(guān)鍵在于伺服控制器的控制算法。為此,本文開展了主要針對電機控制算法中的PID控制器參數(shù)整定算法研究。研究工作是基于黑龍江省科技攻關(guān)項目為支撐。 本論文在查閱大量文獻資料的基礎(chǔ)上,掌握了系統(tǒng)構(gòu)成和基本控制原理,并分析了國內(nèi)交流伺服存在的問題,設(shè)計了基于TI公司電機數(shù)字化控制芯片TMS320F2812的交流伺服控制器的控制單元;基于三菱公司智能化功率器件IPM設(shè)計了控制器的功率單元;以及電源單元和相關(guān)電路的保護單元。 基于電機矢量控制原理,構(gòu)建了永磁同步電機的矢量控制模型,在原有研究的基本PID控制基礎(chǔ)上,根據(jù)模糊控制的基本原理,研究了應(yīng)用于電機控制的模糊參數(shù)自整定PID控制器設(shè)計原理,構(gòu)建模糊參數(shù)自整定PID控制器的數(shù)學(xué)模型,并進行該系統(tǒng)的仿真研究和實際應(yīng)用程序設(shè)計。 本文的重點是闡述模糊參數(shù)自整定PID控制器的設(shè)計原理和方法,利用基于模糊參數(shù)自整定PID控制器的交流伺服系統(tǒng)仿真模型,應(yīng)用Matlab/Simulink仿真軟件平臺驗證模型和算法的正確性,并與常規(guī)PID控制性能進行對比分析。在實際硬件平臺驗證了本文提出算法的可行性和正確性。 通過仿真和實際結(jié)果對比得出結(jié)論,模糊參數(shù)自整定PID控制器可以提高交流伺服系統(tǒng)的動態(tài)和靜態(tài)性能。

    標簽: PID 模糊 參數(shù)

    上傳時間: 2013-04-24

    上傳用戶:lht618

  • PID參數(shù)自整定在溫度控制系統(tǒng)中的應(yīng)用

    ·PID參數(shù)自整定在溫度控制系統(tǒng)中的應(yīng)用

    標簽: PID 參數(shù) 中的應(yīng)用 自整定

    上傳時間: 2013-04-24

    上傳用戶:guobing123

  • 基于參數(shù)自整定的瀝青灑布量控制

      根據(jù)比例因子與系統(tǒng)性能的關(guān)系和整定原則,得到可行的整定規(guī)則表,對瀝青撒布控制系統(tǒng)采用了參數(shù)自整定模糊控制算法控制噴灑的壓力,實現(xiàn)了灑布量的穩(wěn)定精確控制,提高了灑布質(zhì)量和生產(chǎn)效率。

    標簽: 參數(shù) 自整定 瀝青 控制

    上傳時間: 2013-11-01

    上傳用戶:竺羽翎2222

  • 光伏并網(wǎng)逆變器的定頻滯環(huán)電流控制新方法

    提出一種用于光伏發(fā)電系統(tǒng)與公用電網(wǎng)并網(wǎng)的逆變器定頻滯環(huán)電流控制新方法, 該方法首先基于電網(wǎng)線電壓空間矢量將復(fù)平面分為6 個扇區(qū), 在每個扇區(qū)內(nèi)實現(xiàn)兩相開關(guān)解耦分別控制相應(yīng)的線電流; 然后, 在控制相的下一個線電流誤差周期到來時, 計算并調(diào)節(jié)下一周期的滯環(huán)寬度以達到定頻滯環(huán)電流跟蹤, 改善輸出電流波形, 提高控制精度。該方法的主要特點是不需要額外的模擬電路便可以實現(xiàn)開關(guān)頻率的穩(wěn)定。利用Matlab 進行建模, 仿真結(jié)果證明了該方法對穩(wěn)定滯環(huán)開關(guān)頻率是有效的, 同時也表明該方法應(yīng)用于光伏并網(wǎng)逆變器是可行的。

    標簽: 光伏并網(wǎng) 逆變器 定頻 電流控制

    上傳時間: 2013-10-28

    上傳用戶:123312

  • Modicon Premium T PCX 57在郵政分揀系

    摘要:本文詳細的介紹了基于施耐德Modicon Premium T PCX 57 PLC在郵政自動化分揀系統(tǒng)中控制系統(tǒng)的應(yīng)用,系統(tǒng)的網(wǎng)絡(luò)拓撲結(jié)構(gòu),工藝流程和信息采集等。關(guān)鍵詞:T PCX57 PLC FIPIO總線 OPC Momentum I/O模塊 分揀系統(tǒng)

    標簽: Modicon Premium PCX 分揀

    上傳時間: 2013-11-10

    上傳用戶:kristycreasy

  • 微機燈光控制系統(tǒng)

    一、實驗?zāi)康模保莆斩〞r/計數(shù)器、輸入/輸出接口電路設(shè)計方法。    2.掌握中斷控制編程技術(shù)的方法和應(yīng)用。3.掌握8086匯編語言程序設(shè)計方法。 二、實驗內(nèi)容與要求 微機燈光控制系統(tǒng)主要用于娛樂場所的彩燈控制。系統(tǒng)的彩燈共有12組,在實驗時用12個發(fā)光二極管模擬。1. 基本要求:燈光控制共有8種模式,如12個燈依次點亮;12個燈同時閃爍等八種。系統(tǒng)可以通過鍵盤和顯示屏的人機對話,將8種模式進行任意個數(shù)、任意次序的連接組合。系統(tǒng)不斷重復(fù)執(zhí)行輸入的模式組合,直至鍵盤有任意一個鍵按下,退出燈光控制系統(tǒng),返回DOS系統(tǒng)。2. 提高要求:音樂彩燈控制系統(tǒng),根據(jù)音樂的變化控制彩燈的變化,主要有以下幾種:第一種為音樂節(jié)奏控制彩燈,按音樂的節(jié)拍變換彩燈花樣。第二種音律的強弱(信號幅度大小)控制彩燈。強音時,燈的亮度加大,且被點亮的數(shù)目增多。第三種按音調(diào)高低(信號頻率高低)控制彩燈。低音時,某一部分燈點亮;高音時,另一部分點亮。 三、實驗報告要求 1.設(shè)計目的和內(nèi)容 2.總體設(shè)計 3.硬件設(shè)計:原理圖(接線圖)及簡要說明 4.軟件設(shè)計框圖及程序清單5.設(shè)計結(jié)果和體會(包括遇到的問題及解決的方法) 四、設(shè)計原理我們以背景霓虹燈的一種顯示效果為例,介紹控制霓虹燈顯示的基本原理。設(shè)有一排 n 段水平排列的霓虹燈,某種顯示方式為從左到右每0.2 秒逐個點亮。其控制過程如下: 若以“ 1 ”代表霓虹燈點亮,以“ 0 ”代表霓虹燈熄滅,則開始時刻, n 段霓虹燈的控制信號均為“ 0 ”,隨后,控制器將一幀 n 個數(shù)據(jù)送至 n 段霓虹燈的控制端,其中,最左邊的一段霓虹燈對應(yīng)的控制數(shù)據(jù)為“ 1 ”,其余的數(shù)據(jù)均為零,即 1000 … 000 。當 n 個數(shù)據(jù)送完以后,控制器停止送數(shù),保留這種狀態(tài)(定時) 0.2 秒,此時,第 1 段霓虹燈被點亮,其余霓虹燈熄滅。隨后,控制器又在極短的時間內(nèi)將數(shù)據(jù) 1100 … 000 送至霓虹燈的控制端,并定時 0.2 秒,這段時間,前兩段霓虹燈被點亮。由于送數(shù)據(jù)的過程很快,我們觀測到的效果是第一段霓虹燈被點亮 0.2 秒后,第 2 段霓虹燈接著被點亮,即每隔 0.2 秒顯示一幀圖樣。如此下去,最后控制器將數(shù)據(jù) 1111 … 111 送至 n 段霓虹燈的控制端,則 n 段霓虹燈被全部點亮。 只要改變送至每段霓虹燈的數(shù)據(jù),即可改變霓虹燈的顯示方式,顯然,我們可以通過合理地組合數(shù)據(jù)(編程)來得到霓虹燈的不同顯示方式。 五、總體方案論證分析系統(tǒng)設(shè)計思路如下:1) 采集8位開關(guān)輸入信號,若輸入數(shù)據(jù)為0時,將其修改為1。確定輸入的硬件接口電路。采樣輸入開關(guān)量,并存入NUM的軟件程序段。2) 以12個燈依次點亮為例(即燈光控制模式M1),考慮與其相應(yīng)的燈光顯示代碼數(shù)據(jù)。確定顯示代碼數(shù)據(jù)輸出的接口電路。輸出一個同期顯示代碼的軟件程序段(暫不考慮時隙的延時要求)。3) 應(yīng)用定時中斷服務(wù)和NUM數(shù)據(jù),實現(xiàn)t=N×50ms的方法。4) 實現(xiàn)某一種模式燈光顯示控制中12個時隙一個周期,共重復(fù)四次的控制方法。要求在初始化時采樣開關(guān)輸入數(shù)據(jù)NUM,并以此控制每一時隙的延時時間;在每一時隙結(jié)束時,檢查有無鍵按下,若是退出鍵按下,則結(jié)束燈光控制,返回DOS系統(tǒng),若是其他鍵就返回主菜單,重新輸入控制模式數(shù)據(jù)。5) 通過人機對話,輸入8種燈光顯示控制模式的任意個數(shù)、任意次序連接組合的控制模式數(shù)據(jù)串(以ENTER鍵結(jié)尾)。對輸入的數(shù)據(jù)進行檢查,若數(shù)據(jù)都在1 - 8之間,則存入INBUF;若有錯誤,則通過屏幕顯示輸入錯誤,準備重新輸入燈光顯示控制模式數(shù)據(jù)。6) 依次讀取INBUF中的控制模式數(shù)據(jù)進行不同模式的燈光顯示控制,在沒有任意鍵按下的情況下,系統(tǒng)從第一個控制模式數(shù)據(jù)開始,順序工作到最后一個控制模式數(shù)據(jù)后,又返回到第一個控制模式數(shù)據(jù),不斷重復(fù)循環(huán)進行燈光顯示控制。7) 本系統(tǒng)的軟件在總體上有兩部份,即主程序(MAIN)和實時中斷服務(wù)程序(INTT)。討論以功能明確、相互界面分割清晰的軟件程序模塊化設(shè)計方法。即確定有關(guān)功能模塊,并畫出以功能模塊表示的主程序(MAIN)流程框圖和定時中斷服務(wù)程序的流程框圖。    六、硬件電路設(shè)計   以微機實驗平臺和PC機資源為硬件設(shè)計的基礎(chǔ),不需要外加電路。主要利用了以下的資源:1.8255并行口電路8255并行口電路主要負責數(shù)據(jù)的輸入與輸出,可以輸出數(shù)據(jù)控制發(fā)光二極管的亮滅和讀取乒乓開關(guān)的數(shù)據(jù)。實驗時可以將8255的A口、B口和一組發(fā)光二極管相連,C口和乒乓開關(guān)相連。2.8253定時/計數(shù)器8253定時/計數(shù)器和8259中斷控制器一起實現(xiàn)時隙定時。本設(shè)計的定時就是采用的t=N×50ms的方法,50ms由8253定時/計數(shù)器的計數(shù)器0控制定時,N是在中斷服務(wù)程序中軟件計時。8253的OUT0接到IRQ2,產(chǎn)生中斷請求信號。8253定時/計數(shù)器定時結(jié)束會發(fā)出中斷信號,進入中斷服務(wù)程序。3.PC機資源本設(shè)計除了利用PC機作為控制器之外,還利用了PC機的鍵盤和顯示器。鍵盤主要是輸入控制模式數(shù)據(jù),顯示器就是顯示提示信息。   七、軟件設(shè)計   軟件主要分為主程序(MAIN)和中斷服務(wù)程序(INTT),主程序包含系統(tǒng)初始化、讀取乒乓開關(guān)、讀取控制模式數(shù)據(jù)以及按鍵處理等模塊。中斷服務(wù)程序主要是定時時間到后根據(jù)控制模式數(shù)據(jù)點亮相應(yīng)的發(fā)光二極管。1.主程序主程序的程序流程圖如圖1所示。

    標簽: 微機 燈光控制

    上傳時間: 2014-04-05

    上傳用戶:q986086481

  • 匯編+保護模式+教程

    九.輸入/輸出保護為了支持多任務(wù),80386不僅要有效地實現(xiàn)任務(wù)隔離,而且還要有效地控制各任務(wù)的輸入/輸出,避免輸入/輸出沖突。本文將介紹輸入輸出保護。 這里下載本文源代碼。 <一>輸入/輸出保護80386采用I/O特權(quán)級IPOL和I/O許可位圖的方法來控制輸入/輸出,實現(xiàn)輸入/輸出保護。 1.I/O敏感指令輸入輸出特權(quán)級(I/O Privilege Level)規(guī)定了可以執(zhí)行所有與I/O相關(guān)的指令和訪問I/O空間中所有地址的最外層特權(quán)級。IOPL的值在如下圖所示的標志寄存器中。 標  志寄存器 BIT31—BIT18 BIT17 BIT16 BIT15 BIT14 BIT13—BIT12 BIT11 BIT10 BIT9 BIT8 BIT7 BIT6 BIT5 BIT4 BIT3 BIT2 BIT1 BIT0 00000000000000 VM RF 0 NT IOPL OF DF IF TF SF ZF 0 AF 0 PF 1 CF I/O許可位圖規(guī)定了I/O空間中的哪些地址可以由在任何特權(quán)級執(zhí)行的程序所訪問。I/O許可位圖在任務(wù)狀態(tài)段TSS中。 I/O敏感指令 指令 功能 保護方式下的執(zhí)行條件 CLI 清除EFLAGS中的IF位 CPL<=IOPL STI 設(shè)置EFLAGS中的IF位 CPL<=IOPL IN 從I/O地址讀出數(shù)據(jù) CPL<=IOPL或I/O位圖許可 INS 從I/O地址讀出字符串 CPL<=IOPL或I/O位圖許可 OUT 向I/O地址寫數(shù)據(jù) CPL<=IOPL或I/O位圖許可 OUTS 向I/O地址寫字符串 CPL<=IOPL或I/O位圖許可 上表所列指令稱為I/O敏感指令,由于這些指令與I/O有關(guān),并且只有在滿足所列條件時才可以執(zhí)行,所以把它們稱為I/O敏感指令。從表中可見,當前特權(quán)級不在I/O特權(quán)級外層時,可以正常執(zhí)行所列的全部I/O敏感指令;當特權(quán)級在I/O特權(quán)級外層時,執(zhí)行CLI和STI指令將引起通用保護異常,而其它四條指令是否能夠被執(zhí)行要根據(jù)訪問的I/O地址及I/O許可位圖情況而定(在下面論述),如果條件不滿足而執(zhí)行,那么將引起出錯碼為0的通用保護異常。 由于每個任務(wù)使用各自的EFLAGS值和擁有自己的TSS,所以每個任務(wù)可以有不同的IOPL,并且可以定義不同的I/O許可位圖。注意,這些I/O敏感指令在實模式下總是可執(zhí)行的。 2.I/O許可位圖如果只用IOPL限制I/O指令的執(zhí)行是很不方便的,不能滿足實際要求需要。因為這樣做會使得在特權(quán)級3執(zhí)行的應(yīng)用程序要么可訪問所有I/O地址,要么不可訪問所有I/O地址。實際需要與此剛好相反,只允許任務(wù)甲的應(yīng)用程序訪問部分I/O地址,只允許任務(wù)乙的應(yīng)用程序訪問另一部分I/O地址,以避免任務(wù)甲和任務(wù)乙在訪問I/O地址時發(fā)生沖突,從而避免任務(wù)甲和任務(wù)乙使用使用獨享設(shè)備時發(fā)生沖突。 因此,在IOPL的基礎(chǔ)上又采用了I/O許可位圖。I/O許可位圖由二進制位串組成。位串中的每一位依次對應(yīng)一個I/O地址,位串的第0位對應(yīng)I/O地址0,位串的第n位對應(yīng)I/O地址n。如果位串中的第位為0,那么對應(yīng)的I/O地址m可以由在任何特權(quán)級執(zhí)行的程序訪問;否則對應(yīng)的I/O地址m只能由在IOPL特權(quán)級或更內(nèi)層特權(quán)級執(zhí)行的程序訪問。如果在I/O外層特權(quán)級執(zhí)行的程序訪問位串中位值為1的位所對應(yīng)的I/O地址,那么將引起通用保護異常。 I/O地址空間按字節(jié)進行編址。一條I/O指令最多可涉及四個I/O地址。在需要根據(jù)I/O位圖決定是否可訪問I/O地址的情況下,當一條I/O指令涉及多個I/O地址時,只有這多個I/O地址所對應(yīng)的I/O許可位圖中的位都為0時,該I/O指令才能被正常執(zhí)行,如果對應(yīng)位中任一位為1,就會引起通用保護異常。 80386支持的I/O地址空間大小是64K,所以構(gòu)成I/O許可位圖的二進制位串最大長度是64K個位,即位圖的有效部分最大為8K字節(jié)。一個任務(wù)實際需要使用的I/O許可位圖大小通常要遠小于這個數(shù)目。 當前任務(wù)使用的I/O許可位圖存儲在當前任務(wù)TSS中低端的64K字節(jié)內(nèi)。I/O許可位圖總以字節(jié)為單位存儲,所以位串所含的位數(shù)總被認為是8的倍數(shù)。從前文中所述的TSS格式可見,TSS內(nèi)偏移66H的字確定I/O許可位圖的開始偏移。由于I/O許可位圖最長可達8K字節(jié),所以開始偏移應(yīng)小于56K,但必須大于等于104,因為TSS中前104字節(jié)為TSS的固定格式,用于保存任務(wù)的狀態(tài)。 1.I/O訪問許可檢查細節(jié)保護模式下處理器在執(zhí)行I/O指令時進行許可檢查的細節(jié)如下所示。 (1)若CPL<=IOPL,則直接轉(zhuǎn)步驟(8);(2)取得I/O位圖開始偏移;(3)計算I/O地址對應(yīng)位所在字節(jié)在I/O許可位圖內(nèi)的偏移;(4)計算位偏移以形成屏蔽碼值,即計算I/O地址對應(yīng)位在字節(jié)中的第幾位;(5)把字節(jié)偏移加上位圖開始偏移,再加1,所得值與TSS界限比較,若越界,則產(chǎn)生出錯碼為0的通用保護故障;(6)若不越界,則從位圖中讀對應(yīng)字節(jié)及下一個字節(jié);(7)把讀出的兩個字節(jié)與屏蔽碼進行與運算,若結(jié)果不為0表示檢查未通過,則產(chǎn)生出錯碼為0的通用保護故障;(8)進行I/O訪問。設(shè)某一任務(wù)的TSS段如下: TSSSEG                  SEGMENT PARA USE16                        TSS     <>             ;TSS低端固定格式部分                        DB      8 DUP(0)       ;對應(yīng)I/O端口00H—3FH                        DB      10000000B      ;對應(yīng)I/O端口40H—47H                        DB      01100000B      ;對用I/O端口48H—4FH                        DB      8182 DUP(0ffH) ;對應(yīng)I/O端口50H—0FFFFH                        DB      0FFH           ;位圖結(jié)束字節(jié)TSSLen                  =       $TSSSEG                  ENDS 再假設(shè)IOPL=1,CPL=3。那么如下I/O指令有些能正常執(zhí)行,有些會引起通用保護異常:                         in      al,21h  ;(1)正常執(zhí)行                        in      al,47h  ;(2)引起異常                        out     20h,al  ;(3)正常實行                        out     4eh,al  ;(4)引起異常                        in      al,20h  ;(5)正常執(zhí)行                        out     20h,eax ;(6)正常執(zhí)行                        out     4ch,ax  ;(7)引起異常                        in      ax,46h  ;(8)引起異常                        in      eax,42h ;(9)正常執(zhí)行 由上述I/O許可檢查的細節(jié)可見,不論是否必要,當進行許可位檢查時,80386總是從I/O許可位圖中讀取兩個字節(jié)。目的是為了盡快地執(zhí)行I/O許可檢查。一方面,常常要讀取I/O許可位圖的兩個字節(jié)。例如,上面的第(8)條指令要對I/O位圖中的兩個位進行檢查,其低位是某個字節(jié)的最高位,高位是下一個字節(jié)的最低位。可見即使只要檢查兩個位,也可能需要讀取兩個字節(jié)。另一方面,最多檢查四個連續(xù)的位,即最多也只需讀取兩個字節(jié)。所以每次要讀取兩個字節(jié)。這也是在判別是否越界時再加1的原因。為此,為了避免在讀取I/O許可位圖的最高字節(jié)時產(chǎn)生越界,必須在I/O許可位圖的最后填加一個全1的字節(jié),即0FFH。此全1的字節(jié)應(yīng)填加在最后一個位圖字節(jié)之后,TSS界限范圍之前,即讓填加的全1字節(jié)在TSS界限之內(nèi)。 I/O許可位圖開始偏移加8K所得的值與TSS界限值二者中較小的值決定I/O許可位圖的末端。當TSS的界限大于I/O許可位圖開始偏移加8K時,I/O許可位圖的有效部分就有8K字節(jié),I/O許可檢查全部根據(jù)全部根據(jù)該位圖進行。當TSS的界限不大于I/O許可位圖開始偏移加8K時,I/O許可位圖有效部分就不到8K字節(jié),于是對較小I/O地址訪問的許可檢查根據(jù)位圖進行,而對較大I/O地址訪問的許可檢查總被認為不可訪問而引起通用保護故障。因為這時會發(fā)生字節(jié)越界而引起通用保護異常,所以在這種情況下,可認為不足的I/O許可位圖的高端部分全為1。利用這個特點,可大大節(jié)約TSS中I/O許可位圖占用的存儲單元,也就大大減小了TSS段的長度。 <二>重要標志保護輸入輸出的保護與存儲在標志寄存器EFLAGS中的IOPL密切相關(guān),顯然不能允許隨便地改變IOPL,否則就不能有效地實現(xiàn)輸入輸出保護。類似地,對EFLAGS中的IF位也必須加以保護,否則CLI和STI作為敏感指令對待是無意義的。此外,EFLAGS中的VM位決定著處理器是否按虛擬8086方式工作。 80386對EFLAGS中的這三個字段的處理比較特殊,只有在較高特權(quán)級執(zhí)行的程序才能執(zhí)行IRET、POPF、CLI和STI等指令改變它們。下表列出了不同特權(quán)級下對這三個字段的處理情況。 不同特權(quán)級對標志寄存器特殊字段的處理 特權(quán)級 VM標志字段 IOPL標志字段 IF標志字段 CPL=0 可變(初POPF指令外) 可變 可變 0  不變 不變 可變 CPL>IOPL 不變 不變 不變 從表中可見,只有在特權(quán)級0執(zhí)行的程序才可以修改IOPL位及VM位;只能由相對于IOPL同級或更內(nèi)層特權(quán)級執(zhí)行的程序才可以修改IF位。與CLI和STI指令不同,在特權(quán)級不滿足上述條件的情況下,當執(zhí)行POPF指令和IRET指令時,如果試圖修改這些字段中的任何一個字段,并不引起異常,但試圖要修改的字段也未被修改,也不給出任何特別的信息。此外,指令POPF總不能改變VM位,而PUSHF指令所壓入的標志中的VM位總為0。 <三>演示輸入輸出保護的實例(實例九)下面給出一個用于演示輸入輸出保護的實例。演示內(nèi)容包括:I/O許可位圖的作用、I/O敏感指令引起的異常和特權(quán)指令引起的異常;使用段間調(diào)用指令CALL通過任務(wù)門調(diào)用任務(wù),實現(xiàn)任務(wù)嵌套。 1.演示步驟實例演示的內(nèi)容比較豐富,具體演示步驟如下:(1)在實模式下做必要準備后,切換到保護模式;(2)進入保護模式的臨時代碼段后,把演示任務(wù)的TSS段描述符裝入TR,并設(shè)置演示任務(wù)的堆棧;(3)進入演示代碼段,演示代碼段的特權(quán)級是0;(4)通過任務(wù)門調(diào)用測試任務(wù)1。測試任務(wù)1能夠順利進行;(5)通過任務(wù)門調(diào)用測試任務(wù)2。測試任務(wù)2演示由于違反I/O許可位圖規(guī)定而導(dǎo)致通用保護異常;(6)通過任務(wù)門調(diào)用測試任務(wù)3。測試任務(wù)3演示I/O敏感指令如何引起通用保護異常;(7)通過任務(wù)門調(diào)用測試任務(wù)4。測試任務(wù)4演示特權(quán)指令如何引起通用保護異常;(8)從演示代碼轉(zhuǎn)臨時代碼,準備返回實模式;(9)返回實模式,并作結(jié)束處理。

    標簽: 匯編 保護模式 教程

    上傳時間: 2013-12-11

    上傳用戶:nunnzhy

主站蜘蛛池模板: 日照市| 娱乐| 桑植县| 尼木县| 石柱| 静乐县| 南靖县| 邹城市| 横峰县| 凌云县| 万年县| 房山区| 沾化县| 大安市| 呼玛县| 阿鲁科尔沁旗| 舒城县| 太白县| 钟祥市| 南川市| 刚察县| 加查县| 海兴县| 黄骅市| 湘西| 萨嘎县| 灵武市| 开封市| 新巴尔虎左旗| 博爱县| 连云港市| 东宁县| 合阳县| 静乐县| 筠连县| 清河县| 沅江市| 岳阳县| 陆良县| 陇南市| 宾川县|