<dfn id="w48us"></dfn><ul id="w48us"></ul>
  • <ul id="w48us"></ul>
  • <del id="w48us"></del>
    <ul id="w48us"></ul>
  • 嵌入式實(shí)時系統(tǒng)中斷管理技術(shù)研究

    時間:2024-09-30 11:04:02 理工畢業(yè)論文 我要投稿
    • 相關(guān)推薦

    嵌入式實(shí)時系統(tǒng)中斷管理技術(shù)研究

    摘要:嵌入式實(shí)時系統(tǒng)中斷管理技術(shù)直接影響到系統(tǒng)的實(shí)時響應(yīng)性能。本文通過對嵌入式內(nèi)核中斷管理技術(shù)的研究,歸結(jié)出“中斷前-后段處理”模型;同時,針對一些處理器中多個外部中斷共用一個向量的問題,提出一種單向量多中斷處理映射技術(shù),并在PowerPC MPC860處理器上實(shí)現(xiàn)Delta OS內(nèi)核時,驗(yàn)證此技術(shù)的有效性。

    引 言

    ??嵌入式實(shí)時系統(tǒng)(Real-Time System)是一個能夠在指定或者確定的時間內(nèi)對外部事件作出響應(yīng)的系統(tǒng),其重要的特性是實(shí)時響應(yīng)性。

      嵌入式實(shí)時系統(tǒng)對外部事件的響應(yīng)一般都是通過中斷來處理的,其對中斷的處理方式,直接影響到系統(tǒng)的實(shí)時性能。

    1 嵌入式內(nèi)核的中斷管理模式

    1.1 簡 介

      實(shí)時多任務(wù)操作系統(tǒng)是嵌入式應(yīng)用開發(fā)的基礎(chǔ)平臺。早期的嵌入式實(shí)時應(yīng)用軟件直接在處理器上運(yùn)行,沒有RTOS支持,現(xiàn)在的大多嵌入式應(yīng)用開發(fā)都需要嵌入式操作系統(tǒng)的支持。實(shí)際上,此時的嵌入式操作系統(tǒng)相當(dāng)于一個通用而復(fù)雜的主控程序,為嵌入式應(yīng)用軟件提供更強(qiáng)大的開發(fā)平臺和運(yùn)行環(huán)境。因?yàn)榍度胧较到y(tǒng)已經(jīng)將處理器、中斷、定時器、I/O等資源包裝起來,用一系列的API提供給用戶,應(yīng)用程序可以不關(guān)注底層硬件,直接借用操作系統(tǒng)提供的功能進(jìn)行開發(fā),此時的嵌入式操作系統(tǒng)可以視為一個虛擬機(jī)。

      隨著嵌入式實(shí)時系統(tǒng)的發(fā)展,為了方便對中斷的處理,系統(tǒng)內(nèi)核常接管中斷的處理,比如提供一些系統(tǒng)調(diào)用接口來安裝用戶的中斷,提供統(tǒng)一的中斷處理接口等。根據(jù)系統(tǒng)內(nèi)核的可搶占或者非搶占性,系統(tǒng)內(nèi)核接管中斷又有兩種不同處理模式,如圖1。

    圖1

      在非搶占式內(nèi)核的中斷處理模式中,當(dāng)在中斷處理過程中有高優(yōu)先級任務(wù)就緒時,不會立即切換到高優(yōu)先級的任務(wù),必須等待中斷處理完后返回到被中斷的任務(wù)中,等待被中斷的任務(wù)執(zhí)行完后,再切換到高優(yōu)先級任務(wù)。在搶占式內(nèi)核的中斷處理模式中,如果有高優(yōu)先級任務(wù)就緒時,則立刻切換到高優(yōu)先級的任務(wù)。搶占式內(nèi)核中斷處理模式下的時序如圖2。

      在時序圖中,符號A表示有高優(yōu)先級任務(wù)N就緒。這種處理模式有利于高優(yōu)先級任務(wù)的處理,但相應(yīng)地延長了被中斷的低優(yōu)先級任務(wù)的執(zhí)行時間。

    1.2 嵌入式內(nèi)核接管中斷的處理機(jī)制

      嵌入式內(nèi)核接管中斷的處理機(jī)制主要包括兩個部分:面向應(yīng)用的編程接口部分和面向底層的處理部分。面向用戶應(yīng)用的編程接口的任務(wù)之一是供支持用戶安裝中斷處理例程。面向底層處理部分可以分為兩個部分:中斷向量表部分和中斷處理部分。中斷向量表部分主要指中斷向量表的定位和向量表中表項(xiàng)內(nèi)容的形式,一般在嵌入式內(nèi)核中都提供一個中斷向量表, 其表項(xiàng)的向量號應(yīng)與處理器中所描述的向量對應(yīng);向量表表項(xiàng)的內(nèi)容形式一般有兩種形式。最常見的形式就是在具體的向量位置存儲的是一些轉(zhuǎn)移程序,轉(zhuǎn)到具體的中斷處理部分;另一種形式也就是中斷向量位置存放具體的中斷處理程序,此僅針對向量號之間彼此有一定的距離,此距離足以存放中斷處理程序。面向底層部分的中斷處理部分,是整個嵌入式內(nèi)核中斷管理的核心,在后面有詳細(xì)的分析。

      對于嵌入式內(nèi)核中斷管理模式圖中的中斷處理部分,以Delta OS內(nèi)核為例,詳細(xì)說明其中斷處理部分。Delta OS內(nèi)核中斷處理部分采用了“統(tǒng)一接管”的思想,即Delta OS 為所有的外部中斷都提供一個統(tǒng)一的入口_ISR_Handler。此入口的主要功能是保護(hù)中斷現(xiàn)場,執(zhí)行用戶的中斷服務(wù)程序,判斷是否允許可搶占調(diào)度,中斷現(xiàn)場的恢復(fù)等。Delta OS內(nèi)核中斷處理的流程如圖3。

      從Delta OS內(nèi)核中斷處理流程圖中,可看出嵌入式內(nèi)核中一些專用的處理方式。

      ① 在嵌入式內(nèi)核中一般有兩個堆棧:系統(tǒng)棧和任務(wù)棧。系統(tǒng)棧是系統(tǒng)為中斷上下文處理而預(yù)留的堆棧;任務(wù)棧屬于任務(wù)本身的私有堆棧,用來存儲任務(wù)執(zhí)行過程中一些臨時變量等信息。因?yàn)橹袛嗌舷挛牟浑`屬于任何任務(wù)的上下文中,所以嵌入式內(nèi)核一般都有一個系統(tǒng)棧專門處理中斷上下文的。當(dāng)產(chǎn)生中斷且非中斷嵌套時,堆棧由被中斷任務(wù)中的任務(wù)棧切換到系統(tǒng)棧;當(dāng)在中斷處理中又發(fā)生中斷時,堆棧不再切換,仍用系統(tǒng)棧;當(dāng)退出最外層中斷時,堆棧又由系統(tǒng)棧切換到被中斷的任務(wù)中的任務(wù)棧。

      ② 一般嵌入式內(nèi)核有兩種形式:搶占式和非搶占式。為了更好地支持系統(tǒng)的實(shí)時性,很多嵌入式實(shí)時內(nèi)核都是搶占式內(nèi)核,如Vxworks、pSOS 等。從上面Delta OS 內(nèi)核中斷處理流程可知Delta OS是搶占式內(nèi)核。因?yàn)樵谥袛嗵幚碇校?dāng)檢測到有高優(yōu)先級任務(wù)就緒時,就會切換到高優(yōu)先級任務(wù)里,而不是等到退出中斷后,再進(jìn)行任務(wù)調(diào)度。

      ③ 在嵌入式內(nèi)核中,中斷時機(jī)和調(diào)度時機(jī)直接影響到系統(tǒng)的實(shí)時性。關(guān)中斷的時機(jī)一般在執(zhí)行核心操作之前。核心操作包括對鏈表的操作,對核心數(shù)據(jù)項(xiàng)(如指示同步,反應(yīng)重要信息狀態(tài))的修改等場合都須關(guān)中斷。執(zhí)行完相應(yīng)的核心操作后,就可以開中斷。開調(diào)度時機(jī)主要提供重新調(diào)度的機(jī)會,一般在執(zhí)行操作系統(tǒng)核心調(diào)用前關(guān)調(diào)度,執(zhí)行完后開調(diào)度。系統(tǒng)中開關(guān)中斷與開關(guān)調(diào)度的關(guān)系大致如下:

      開關(guān)中斷的粒度比開關(guān)調(diào)度要深,要細(xì)。開關(guān)中斷主要是為實(shí)時性提供各種可能的中斷時機(jī),允許響應(yīng)外部中斷。中斷里也可以執(zhí)行調(diào)度和系統(tǒng)調(diào)用,但中斷的上下文與任務(wù)的上下文是不一樣的,因此在中斷里只能執(zhí)行一些特定的系統(tǒng)調(diào)用。這些特定系統(tǒng)調(diào)用是不會引起調(diào)用阻塞的,不要試圖在中斷里執(zhí)行獲取信號量,執(zhí)行I/O操作等這些很容易引起調(diào)用阻塞的系統(tǒng)調(diào)用。

    2 中斷管理模型

    2.1 中斷前-后段處理模型

      在前面嵌入式內(nèi)核中斷管理模式分析中,嵌入式內(nèi)核一般采用中斷統(tǒng)一接管思想,在中斷統(tǒng)一接管中調(diào)用用戶的中斷服務(wù)程序

    嵌入式實(shí)時系統(tǒng)中斷管理技術(shù)研究

    【嵌入式實(shí)時系統(tǒng)中斷管理技術(shù)研究】相關(guān)文章:

    嵌入式系統(tǒng)的實(shí)時數(shù)據(jù)接口擴(kuò)展03-20

    通過任務(wù)分割提高嵌入式系統(tǒng)的實(shí)時性03-18

    嵌入式實(shí)時操作系統(tǒng)研究與分析03-12

    嵌入式實(shí)時系統(tǒng)中的優(yōu)先級反轉(zhuǎn)問題03-18

    嵌入式系統(tǒng)中的Flash存儲管理03-18

    實(shí)時嵌入式操作系統(tǒng)μC/OS-II在MPC555上的移植03-19

    基于RTLinux的實(shí)時控制系統(tǒng)03-20

    電力驅(qū)動系統(tǒng)逆變器實(shí)時仿真03-18

    車載實(shí)時定位系統(tǒng)的研究與設(shè)計(jì)03-07

    主站蜘蛛池模板: 日本精品不卡视频| 国产精品青草视频免费播放| 国产叼嘿久久精品久久| 精品无码国产自产拍在线观看| 精品久久久久久无码中文字幕| 999国内精品永久免费观看| 亚洲国产精品丝袜在线观看| 99视频在线精品国自产拍亚瑟| 囯产精品一品二区三区| 亚洲国产精品一区二区成人片国内| 精品国产福利盛宴在线观看| 国内精品在线视频| 久久国产精品一国产精品金尊| 亚洲av无码成人精品区在线播放 | 精品国产第1页| 亚洲AV无码久久精品蜜桃| 污污网站国产精品白丝袜| 国产精品成人99久久久久91gav| 国产亚洲精品观看91在线| 18国产精品白浆在线观看免费| 久久综合国产乱子伦精品免费| 亚洲精品无码精品mV在线观看| 亚洲精品国产日韩无码AV永久免费网 | 久久精品国产亚洲麻豆| 91视频精品全国免费观看| 囯产精品一品二区三区| 69久久精品无码一区二区| 精品无人码麻豆乱码1区2区| 日韩精品久久久久久免费| 无码国产乱人伦偷精品视频| 亚洲精品无码不卡在线播HE| 午夜精品久久久久久毛片| 伊人久久精品无码二区麻豆| 中文字幕精品视频在线| 亚洲国产精品特色大片观看完整版| 亚洲精品乱码久久久久久久久久久久| 亚洲午夜成人精品电影在线观看 | 青青草国产精品欧美成人| 精品国产91久久久久久久| 一区二区精品在线| 国产99精品一区二区三区免费|