999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

中斷屏蔽技術(shù)應(yīng)用及實例解析

2022-03-19 02:09:22趙琳娜
電腦知識與技術(shù) 2022年2期

趙琳娜

摘要:中斷屏蔽技術(shù)是計算機系統(tǒng)中解決多重中斷的一項重要技術(shù),通過該技術(shù)可以靈活處理在某中斷源服務(wù)中,響應(yīng)新的中斷源請求的優(yōu)先級次序問題,同時通過計算機系統(tǒng)中不同層級的屏蔽技術(shù)可以實現(xiàn)主機對外設(shè)更為有效的控制。該文通過實例對中斷屏蔽技術(shù)的應(yīng)用進行詳細分析,為程序設(shè)計人員編寫中斷服務(wù)程序提供幫助。

關(guān)鍵詞:多重中斷;中斷服務(wù)優(yōu)先級;中斷屏蔽;中斷屏蔽字

中圖分類號:TP312 ? 文獻識別碼:A

文章編號:1009-3044(2022)02-0107-02

1 中斷屏蔽技術(shù)

中斷屏蔽技術(shù)主要用于處理多重中斷[1-2]。所謂多重中斷又稱為中斷嵌套,是指CPU在執(zhí)行某個中斷服務(wù)程序時,當另一中斷源提出了新的中斷請求時,CPU暫停正在運行的中斷服務(wù)程序,響應(yīng)新的中斷請求,轉(zhuǎn)去執(zhí)行新的中斷服務(wù)程序的過程[1-3],即在一個中斷服務(wù)程序執(zhí)行中嵌套執(zhí)行了另一個中斷服務(wù)程序。這種中斷嵌套一般應(yīng)滿足兩個條件,其一,CPU在執(zhí)行被嵌套的中斷服務(wù)程序時處于開中斷的狀態(tài)[4-5],即CPU響應(yīng)外部可屏蔽中斷請求的中斷允許位在中斷服務(wù)程序中通過開中斷指令置為1,允許CPU響應(yīng)外部可屏蔽中斷,在此我們將其稱之為一級屏蔽層;其二,欲中斷原中斷服務(wù)程序的新的中斷源優(yōu)先級別應(yīng)高于正在執(zhí)行的中斷服務(wù)程序的中斷源[5-6]。這一嵌套條件使得在已設(shè)置好優(yōu)先級別的多級中斷系統(tǒng)中,CPU對外部事件可以按照事件的輕重緩急有次序地進行處理,由于此條件所需設(shè)置的優(yōu)先級別是在CPU之外的中斷接口中實現(xiàn)的,在此我們將其稱之為二級屏蔽層。

在二級屏蔽層中,為提升CPU對外設(shè)的響應(yīng)速度,一般中斷系統(tǒng)的優(yōu)先級別采用硬件鏈式排隊電路,外設(shè)一旦確定了在排隊電路中的位置次序,優(yōu)先權(quán)的響應(yīng)級別不能夠改變[4],這樣就會造成優(yōu)先級別高的中斷源持續(xù)占據(jù)CPU服務(wù)權(quán),其他低級別的中斷源難以得到有效服務(wù)的極端情況,為此可以通過中斷屏蔽技術(shù)對中斷源的服務(wù)級別進行臨時重置,從而實現(xiàn)低級別中斷源得到優(yōu)先中斷服務(wù)的可能。對中斷源服務(wù)優(yōu)先級別的重置可以通過在中斷服務(wù)程序中設(shè)置中斷屏蔽字實現(xiàn),例如某中斷系統(tǒng)的外部可屏蔽中斷源共8個,按照降序優(yōu)先級別排序(中斷源1>中斷源2>...中斷源8),若在中斷源1的中斷服務(wù)程序中設(shè)置中斷屏蔽字10000000B,該屏蔽字的設(shè)置用于控制對外部中斷源進行管理的中斷控制器,令中斷控制器的中斷屏蔽寄存器對外部中斷源實現(xiàn)對中斷源1屏蔽新中斷,其他中斷源均允許中斷的控制方式,即在CPU為中斷源1執(zhí)行中斷服務(wù)期間對中斷源1以外的任何中斷源均處于允許嵌套的狀態(tài),相當于通過屏蔽字的設(shè)置,臨時改變了服務(wù)優(yōu)先級別,將中斷源1的服務(wù)優(yōu)先級別降為最低。在此屏蔽字設(shè)置后,若在中斷源1服務(wù)時,比其響應(yīng)優(yōu)先級別低的中斷源3提出中斷請求,且CPU處于開中斷狀態(tài),則CPU將暫停中斷源1的服務(wù)程序,而轉(zhuǎn)去執(zhí)行中斷源3的服務(wù)程序,從而實現(xiàn)低級別中斷嵌套高級別中斷的過程。

2 利用屏蔽技術(shù)管理外部中斷源及實例分析

中斷屏蔽技術(shù)除在多重中斷中用以實現(xiàn)對嵌套的靈活處理外,利用該技術(shù)還可以實現(xiàn)對外部中斷源(外部設(shè)備)的管理控制,使外設(shè)與CPU的數(shù)據(jù)交互更為有效。

在此以86系列微機系統(tǒng)為例,舉實例分析說明。若86系列微機系統(tǒng)需要每隔3秒采樣一次外部設(shè)備的輸入信息并進行關(guān)鍵值判斷,采樣到該關(guān)鍵值信息時,停止采樣,否則按上述周期循環(huán)采樣,其中3秒的定時由外部定時器完成。在此應(yīng)用實例中,涉及兩個外設(shè),一個為輸入信息的設(shè)備,一個為實現(xiàn)定時的設(shè)備,這兩個設(shè)備中,定時外設(shè)為可向CPU發(fā)出中斷請求的中斷源(每隔3秒定時時間到,向CPU發(fā)出請求,要求CPU做對輸入外設(shè)采樣數(shù)據(jù)的服務(wù))。

分析上面實例可以發(fā)現(xiàn),在此定時器為循環(huán)工作的中斷源(每隔3秒提出一次服務(wù)請求),若想令其在采樣到關(guān)鍵信息后提出的周期性采樣請求不再被CPU響應(yīng),可以實現(xiàn)的方法大致有兩種。其一,在一級屏蔽層進行對該中斷源的屏蔽。在中斷服務(wù)程序返回主程序前執(zhí)行CLI指令實現(xiàn)(關(guān)閉CPU的中斷允許標志位IF),即CPU屏蔽了所有的外部中斷源,包括外部定時器的中斷服務(wù)請求,但是在此這種方法不可能達到屏蔽中斷源的操作要求,因為每個中斷服務(wù)程序的最后一條結(jié)束指令均為IRET,該指令在恢復(fù)主程序斷點地址的同時,也恢復(fù)原主程序中斷時的各項標志位,而主程序中斷時的中斷允許標志位IF一定是1的設(shè)置值(否則不能響應(yīng)定時器的中斷請求),因此,即使在中斷服務(wù)程序中編制CLI指令,暫時使得IF=0,屏蔽了各中斷源的中斷請求,但隨著最后一條IRET指令的執(zhí)行,返回到主程序后,對定時器中斷的請求又被開放了響應(yīng)權(quán),因此一級中斷層的屏蔽技術(shù)無法實現(xiàn)對定時器請求的屏蔽處理。其二,在二級屏蔽層進行對該中斷源的屏蔽。當在某個3秒周期的采樣中斷服務(wù)程序中檢測到關(guān)鍵信息時,采用向二級屏蔽層中斷控制器設(shè)置屏蔽字的方式,在中斷服務(wù)程序中通過向20H端口(中斷屏蔽寄存器)寫入屏蔽字,將定時器對應(yīng)的中斷屏蔽位由主程序中設(shè)置的0(允許中斷,不屏蔽)改為1(屏蔽該中斷源),使得定時器在中斷管理的中間環(huán)節(jié)(中斷控制器)受到屏蔽的控制,失去向CPU提出中斷服務(wù)請求的可能。

為實現(xiàn)該實例編寫的主程序相關(guān)程序段及中斷服務(wù)程序如下:

主程序部分代碼

START ? PROC NEAR

;將中斷服務(wù)程序入口地址裝入中斷向量表(省略代碼)

;對輸入外設(shè)接口的初始化(省略代碼)

MOV DX,CS8253

MOV AL,01110110B

OUT DX,AL

MOV DX,COUNT1

MOV AX,307

OUT DX,AL

MOV AL,AH

OUT DX,AL

MOV DX,CS8253

MOV AL,10110110B

OUT DX,AL

MOV DX,COUNT2

MOV AX,6000

OUT DX,AL

MOV AL,AH

OUT DX,AL ? ?;對外部定時設(shè)備8253循環(huán)定時3秒的初始化

MOV AL,01111111B

OUT 21H,AL ? ? ?; 在此進行二級屏蔽層中斷允禁設(shè)置,假設(shè)定時器中斷請求送入了中斷控制器的第7個引腳,該位值設(shè)為0,允許定時器外設(shè)中斷

STI ? ? ? ? ? ? ;在此進行一級屏蔽層設(shè)置,CPU開中斷

JMP $ ? ? ? ? ? ;等待外部中斷源的中斷

START   ENDP

中斷服務(wù)程序主要代碼:

IRQ7 ? ?PROC NEAR

STI ? ? ? ;開中斷,將CPU在中斷響應(yīng)過程中自動關(guān)閉的IF再次開放,為中斷服務(wù)過程中的嵌套做屏蔽技術(shù)的準備

. ? ? ?;外部設(shè)備數(shù)據(jù)采集輸入(省略代碼)

.

. ? ? ? ;判斷輸入數(shù)據(jù)是否為關(guān)鍵信息,不是跳轉(zhuǎn)到rount地址標號處執(zhí)行

MOV AL,11111111B

OUT 21H,AL ? ? ? ?;是關(guān)鍵信息,則進行二級中斷屏蔽設(shè)置,將外設(shè)定時器的中斷請求屏蔽

rount: ? ?MOV AL,20H ? ? ?;寫中斷結(jié)束命令

OUT 20H,AL

IRET

IRQ7 ? ?ENDP

3 中斷屏蔽技術(shù)的其他作用

屏蔽技術(shù)還能給程序控制帶來更大的靈活性。例如,在浮點運算中,當程序員估計到執(zhí)行某段程序時可能出現(xiàn)“階上溢”,但又不希望因“階上溢”而使機器停機,為此可設(shè)一屏蔽字,使對應(yīng)“階上溢”的屏蔽位為“1”,這樣,即使出現(xiàn)“階上溢”,機器也不停機。

另外除了上述在CPU和I/O中斷控制器中設(shè)置的兩個中斷屏蔽級別外,在I/O設(shè)備與系統(tǒng)直接相連接的接口部件中,還可以進行二級屏蔽層之外的三級屏蔽層。三級屏蔽層設(shè)置可以改變外設(shè)和系統(tǒng)之間的數(shù)據(jù)傳送方式,例如在與并行外設(shè)相連的并行接口8255 芯片中,其C端口的屏蔽位(如PC4/PC2位)設(shè)置為0時,則該并行I/O設(shè)備通過接口8255與CPU傳送數(shù)據(jù)時不可以采用中斷傳送控制方式[4],只能采用無條件或查詢傳送方式。

4 總結(jié)

學(xué)習(xí)掌握中斷屏蔽技術(shù),理解不同層級的屏蔽技術(shù)對計算機中斷系統(tǒng)及對外設(shè)控制的影響,應(yīng)用中斷屏蔽技術(shù),實現(xiàn)對外設(shè)并行、快速、靈活的處理,對計算機專業(yè)人員有著重要意義。

參考文獻:

[1] 羅克露,雷航,廖建明.計算機組成原理[M].北京:高等教育出版社,2010.

[2] 王誠,劉衛(wèi)東,宋佳興.計算機組成與設(shè)計[M].3版.北京:清華大學(xué)出版社,2008.

[3] 白中英.計算機組成原理[M].6版.北京:清華大學(xué)出版社,2021.

[4] 楊立,鄧振杰,荊淑霞.微型計算機原理與接口技術(shù)[M].3版.北京:中國鐵道出版社,2009.

[5] 嚴其艷,王華榮.單片機中斷技術(shù)的應(yīng)用[J].讀寫算(教育教學(xué)研究),2015(24):121-121,147.

[6] 王洪生.單片機的延時與中斷問題及解決方法[J].科技創(chuàng)新導(dǎo)報,2019,16(34):54-55.

【通聯(lián)編輯:梁書】

1464501705227

主站蜘蛛池模板: 亚洲欧美一级一级a| 精品国产香蕉伊思人在线| 99爱在线| 露脸一二三区国语对白| 又爽又大又光又色的午夜视频| 真实国产乱子伦视频| 国产精品刺激对白在线| 国产剧情国内精品原创| av天堂最新版在线| 精品剧情v国产在线观看| 国产精品人莉莉成在线播放| 激情综合网址| 无码'专区第一页| 欧美一区二区啪啪| 98超碰在线观看| 国产人成在线观看| 青青青伊人色综合久久| 91国内视频在线观看| 国产91麻豆免费观看| 午夜激情婷婷| 亚洲综合第一页| 91精品国产一区自在线拍| 91香蕉视频下载网站| 久久精品中文字幕少妇| 亚洲天堂区| 波多野结衣中文字幕一区二区| 欧美成人综合视频| 免费 国产 无码久久久| 伊人激情综合网| 一本色道久久88| 久久综合色播五月男人的天堂| 久久中文电影| 九九热视频精品在线| 国产va在线观看免费| 国产精品第一区| 无码免费视频| 国产精品第一区| 片在线无码观看| 第九色区aⅴ天堂久久香| 人妻21p大胆| 亚洲免费毛片| 不卡视频国产| 欧美特级AAAAAA视频免费观看| 一级一级一片免费| 1024国产在线| 国产日韩丝袜一二三区| 欧美一区二区三区国产精品| 无码AV高清毛片中国一级毛片| 日韩在线播放中文字幕| 国产欧美日韩精品综合在线| 成人精品午夜福利在线播放 | 91极品美女高潮叫床在线观看| 全部免费特黄特色大片视频| 免费国产一级 片内射老| 美女无遮挡免费视频网站| 扒开粉嫩的小缝隙喷白浆视频| 在线五月婷婷| 一级黄色欧美| 无码日韩人妻精品久久蜜桃| 秋霞午夜国产精品成人片| 亚洲第一视频网| 久久一本精品久久久ー99| 日韩欧美亚洲国产成人综合| 欧美性久久久久| 国产尹人香蕉综合在线电影| 伊人中文网| 日本伊人色综合网| 97视频在线精品国自产拍| 国产精品xxx| 日韩中文无码av超清| 国产午夜在线观看视频| 中文字幕人成人乱码亚洲电影| 四虎永久免费地址| 国产草草影院18成年视频| 青青草原国产精品啪啪视频| 日本在线欧美在线| 亚洲精品成人片在线观看| 国产精品第三页在线看| 欧美天天干| 亚洲欧美日韩久久精品| 亚洲午夜片| 四虎国产精品永久一区|