ngắt và xl ngắt

Màu nền
Font chữ
Font size
Chiều cao dòng

Đểchươngtrìnhthựchiệnchínhxáccầncósựphốihợpnhịpnhànggiữahoạtđộngcủabộ vi xửlý (CPU) vớicáchoạtđộngcủacácthiếtbịvào/ravàcácthànhphầnkháccủahệthống. Ngắtlàphươngtiệnđểcácthànhphầnkháctronghệthốngthôngbáocho CPU biếtsựthayđổitrạngtháicủamình.

Mộtchươngtrìnhkhithựchiệnthìkhôngdừnglại, trongthựctếcónhữnglúcchúngtamuốndừngthựchiệnchươngtrìnhđểthựchiệncôngviệcgìđó, vídụgặpphảivònglặpvôhạn, bằngcáchấntổhợpphímnàođó. Nhưvậychungtađãpháttínhiệungắtyêucầudừngthựchiệnchươngtrình. Đểcâulệnhchươngtrìnhkhôngbịmấtkhicótìnhhuốngxẩyra, trongmộtchukỳlệnh CPU kiểmtracóngắt hay không, nếucóxửlýngắtrồisauđómớitiếptụcthựchiệnchươngtrình

Ngắtgồmcóngătcứngvàngắtcứngvàngắtmềm: Ngắtcứnglàcácsựkiện do phầncứnggâyra, vídụnhư: ấntổhợpphím, sụtnguồn, hỏng RAM, v…v; Ngătmềmlàcácsựkiệnphầnmềmgâyra, vídụnhưgặpphépchiachosốkhông, cáclệnhdừngchươngtrìnhcủangườisửdụngkhidùngđểbiệnluận

2.2 Xửlýngắt

      Khiđangthựchiệnmộtchươngtrìnhnếuxuấthiệnmộtngắt, nếuhệthốngxửlýngắtngaylậptứckhôngchờđộithựchiệnxonglệnhhiệnthờithìsẽxửlýđượctìnhhuốngcấpbáchnhưngcâulệnhcóthểbịmất.

  Trongthựctếviệcxửlýngắtđượcthựchiệnnhưsau:

Hệthốngđịnhkỳsâumộtkhỏngthờigiannhấtđịnh (mộtchukỳ) xemxétcótínhiệungắt hay không, nếucóthìthựchiệntheo 5 giaiđoạnsau:

-Ghinhậnđặctrưngsựkiệngâyratínhiệungắtvào ô nhớ qui định

-Ghinhậntrạngtháichươngtrìnhbịngắt: bộđếmlệnh, thanhghi IP, chếđộlàmviệc …

-Chuyểnđịachỉthủtụcxửlýngắttươngứngvàothanhghilệnh IP củabộxửlý

-Thựchiệnchươngtrìnhxửlýngắt (thủtụcxửlýngắt)

-Khôiphụclạichươngtrìnhbịngắt

Ba bước đầu do phần kỹ thuật đảm nhận. Hai bước sau do hệđiều hành thực hiệnXửlýsựkiệngâyrangắtđượcđảmbảobằngmộtthủtụcxửlýngắt. Mỗimộtloạisựkiệncóthủtụcxửlýngắtriêng. Việcđầutiêncủachươngtrìnhxửlýngắtlàlưulạithông tin vềtrạngtháicủangắt, đểbổ sung thông tin chođảmbảotựđộng ở bước 3. Mỗiloạisựkiệnđòihỏimộtcáchxửlýriêng, cóthểrấtđơngiảnnhưxáclậpmộtvài bit trongthanhghicờtrạngtháinhưngcũngcóthểrấtphứctạp. Phầncuốicủaxửlýngắtlàkhôiphụcchươngtrìnhbịngắtđểđảmbảochohệthốnghoạtđộngbìnhthường.

Nếuchươngtrìnhbịngắtkhôngthểtiếptụcthựchiệnvìsựkiệnxẩyra (vídụtràn ô nhớkhitínhtoán) thìsaukhithôngbáolỗi, chươngtrìnhxửlýngắtchuyểnchươngtrìnhbịngắt sang chếđộkếtthúc.

Đểxửlýtìnhhuốngngắtképhệthốngdựavàođộưutiêncủacácngắt. Tronghệthốngngắtcóđộưutiên, thôngthườngngắtcósốhiệucàngnhỏđộưutiêncàngcao. Vìthếviệcxửlýngắtképđượcthựchiệnnhưsau:

-Trườnghợpcáctínhiệungắtxuấthiệnđồngthờitạimộtthờiđiểm: Trongcácngắt, ngắtnàocódộưutiêncaohơnsẽxửlýtrướccòncácngắtcóđộưutiênthấpbịchặnlạivìthếchúngcóthểbịmấthoặcxếpvàohàngđợichờxửlýnếuhànhđợicònkhônggianlưutrữ.

-  Trườnghợpkhiđangxửlýmộtngắtxuấthiệnmộtngắtmới: Nếungắtmớicóđộưutiêncaohơnthìchươngtrìnhxửlýngắtcũtrởthànhchươngtrìnhbịngắt. Ngượclại, nếungắtmớicóđộưutiênthấphơnthìbịchặnlạicóthểbịmấthoặcđượcxếpvàohàngđợichờxửlýnếucònkhônggianlưutrữ.

Bạn đang đọc truyện trên: Truyen2U.Pro