国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      實(shí)現(xiàn)中斷底半部機(jī)制的方法及嵌入式系統(tǒng)的制作方法

      文檔序號:6464623閱讀:236來源:國知局
      專利名稱:實(shí)現(xiàn)中斷底半部機(jī)制的方法及嵌入式系統(tǒng)的制作方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及嵌入式操作系統(tǒng)的中斷機(jī)制,特別是涉及一種在嵌入式操作系 統(tǒng)上實(shí)現(xiàn)中斷底半部機(jī)制的方法及嵌入式系統(tǒng)。
      背景技術(shù)
      隨著科技的發(fā)展和生活水平的日益提高,使得人們對使用的各類電子產(chǎn)品 提出了更高的要求。隨著電子產(chǎn)品的功能變得越來越強(qiáng)大,產(chǎn)品的實(shí)現(xiàn)也變得 日益復(fù)雜,越來越多的產(chǎn)品釆用了嵌入式操作系統(tǒng),而作為嵌入式操作系統(tǒng)重 要組成部分的中斷機(jī)制的優(yōu)劣將直接影響整個(gè)系統(tǒng)的性能。以下是對本發(fā)明所
      涉及的嵌入式操作系統(tǒng)、中斷機(jī)制和中斷底半部^L制的基礎(chǔ)知識的介紹
      1) 嵌入式操作系統(tǒng),是一種負(fù)責(zé)嵌入式系統(tǒng)的全部軟、硬件資源的分配、 調(diào)度工作,控制協(xié)調(diào)并發(fā)活動的系統(tǒng)軟件。
      2) 中斷機(jī)制,是現(xiàn)代計(jì)算機(jī)系統(tǒng)中的基礎(chǔ)設(shè)施之一,它在系統(tǒng)中起著通 信網(wǎng)絡(luò)作用,以協(xié)調(diào)系統(tǒng)對各種外部事件的響應(yīng)和處理,是實(shí)現(xiàn)多道程序設(shè)計(jì)
      的必要條件。
      3) 中斷底半部機(jī)制, 一些操作系統(tǒng)將中斷處理例程分成兩部分頂半部 (top half)和底半部(bottom half, BH)。頂半部是實(shí)際響應(yīng)中斷的例程,底半部是 一個(gè)被頂半部調(diào)用在稍后安全的時(shí)間內(nèi)運(yùn)行的例程,底半部處理程序和頂半部 最大的不同就在于,在執(zhí)行BH時(shí)所有的中斷都是打開的,所以說它是在"更安 全"時(shí)間內(nèi)運(yùn)行。
      中斷處理的一個(gè)重要問題是怎樣在處理歷程內(nèi)完成耗時(shí)的任務(wù)。響應(yīng)一次 設(shè)備中斷需要完成一定數(shù)量的工作,但是中斷處理例程需要盡快結(jié)束而不能使 中斷阻塞的時(shí)間過長,這兩個(gè)需求彼此沖突,如何解決成為了一個(gè)問題。
      目前很多操作系統(tǒng)中通過將中斷處理例程分成兩部分來解決這個(gè)問題,頂 半部是實(shí)際響應(yīng)中斷的例程,處理與硬件打交道的緊急事情;而底半部是一個(gè)
      被頂半部調(diào)度,并在稍后更安全的時(shí)間內(nèi)執(zhí)行的例程。
      頂半部與底半部處理例程之間最大的不同,就是當(dāng)?shù)装氩刻幚沓绦驁?zhí)行 時(shí),所有的中斷都是打開的,這就是所謂的在更安全的時(shí)間內(nèi)運(yùn)行。典型的情 況就是頂半部保存設(shè)備的數(shù)據(jù)到 一個(gè)設(shè)備特定的緩沖區(qū)并調(diào)度它的底半部,然
      后退出這個(gè)操作是非??斓摹H缓蟮装氩繄?zhí)行其它必要的工作,例如喚醒進(jìn) 程、啟動另外的i/o才喿作等等。這種方式允許在底半部工作期間,頂半部還可 以繼續(xù)為新的中斷月良務(wù)。
      而如何將中斷處理程序的頂半部和底半部衫f接起來,是中斷底半部機(jī)制的 非常關(guān)鍵的任務(wù),而目前的中斷底半部機(jī)制有tasklet (任務(wù)允許)和工作隊(duì)列 等,雖然功能強(qiáng)大,但實(shí)現(xiàn)起來較為復(fù)雜,需要較多的軟硬件資源,對于資源 較少的嵌入式系統(tǒng)并不適合。

      發(fā)明內(nèi)容
      本發(fā)明的目的是提供一種實(shí)現(xiàn)中斷底半部機(jī)制的方法及嵌入式系統(tǒng),能方 便簡捷的將中斷處理的頂半部和底半部銜接起來,解決現(xiàn)有技術(shù)需要較多的軟 硬件資源,不適合嵌入式系統(tǒng)的技術(shù)問題。
      為了實(shí)現(xiàn)上述目的, 一方面,提供了一種在嵌入式操作系統(tǒng)上實(shí)現(xiàn)中斷底 半部機(jī)制的方法,包括如下步驟
      嵌入式操作系統(tǒng)收到中斷請求后,執(zhí)行中斷操作,轉(zhuǎn)到中斷處理頂半部模
      塊;
      所述中斷處理頂半部模塊執(zhí)行中斷處理程序后,轉(zhuǎn)到底半部中斷管理任務(wù)
      模塊;
      所述管理任務(wù)模塊執(zhí)行底半部管理任務(wù),所述底半部管理任務(wù)為嵌入式操 作系統(tǒng)的具有高于常規(guī)任務(wù)的優(yōu)先級的系統(tǒng)任務(wù),所述底半部管理任務(wù)調(diào)用中
      斷處理底半部模塊;
      所述中斷處理底半部模塊執(zhí)行中斷處理底半部程序。
      優(yōu)選地,所述的方法,其中,在所述轉(zhuǎn)到底半部中斷管理任務(wù)模塊的步驟 之前,還包括所述中斷處理頂半部^^莫塊執(zhí)行喚醒所述管理任務(wù)^f莫塊的喚醒函 數(shù),并轉(zhuǎn)到任務(wù)調(diào)度器;所述任務(wù)調(diào)度器根據(jù)所述喚醒函數(shù)的請求調(diào)度所述管
      理任務(wù)模塊。
      優(yōu)選地,所述的方法,其中,在所述中斷處理底半部才莫塊執(zhí)行中斷處理底
      半部程序的步驟之后,還包括返回所述任務(wù)調(diào)度器;所述任務(wù)調(diào)度器返回所 述嵌入式操作系統(tǒng)。
      優(yōu)選地,所述的方法,其中,所述底半部管理任務(wù)調(diào)用中斷處理底半部才莫 塊的步驟具體包括給全局變量g—BtFlag賦值,所述全局變量g一BtFlag的每 一位對應(yīng)一個(gè)中斷處理函數(shù);給局部變量int賦值;通過所述局部變量int,檢 查所述全局變量g—BtFlag的每一位對應(yīng)的中斷處理函數(shù),如果所述中斷處理 函數(shù)還未執(zhí)行,則通知所述中斷處理底半部模塊執(zhí)行所述未執(zhí)行的中斷處理函 數(shù),直到所述全局變量g一BtFlag的每一位對應(yīng)的中斷處理函數(shù)全部執(zhí)行。
      優(yōu)選地,所述的方法,其中,在所述轉(zhuǎn)到中斷處理頂半部模塊的步驟之前, 還包括進(jìn)行包括有寄存器值、終端返回地址和堆棧指針的現(xiàn)場參數(shù)的保存。
      優(yōu)選地,所述的方法,其中,所述喚醒函數(shù)以所述中斷操作的中斷號位參 數(shù),并設(shè)置有對應(yīng)所述中斷號的標(biāo)志。
      優(yōu)選地,所述的方法,其中,所述檢查所述全局變量g—BtFlag的每一位, 是通過移位的方法,按照從低到高或者從高到低的順序進(jìn)行逐個(gè)檢查。
      優(yōu)選地,所述的方法,其中,所述檢查所述全局變量g—BtFIag的每一位, 是通過數(shù)組來保存g—BtFlag的每一位的優(yōu)先級,根據(jù)所述優(yōu)先級設(shè)定的順序 進(jìn)行檢查。
      本發(fā)明的另一個(gè)方面,提供一種嵌入式系統(tǒng),包括嵌入式操作系統(tǒng)單元、 中斷處理頂半部模塊、中斷處理底半部模塊和底半部中斷管理任務(wù)模塊;
      所述嵌入式操作系統(tǒng)單元,用于在收到中斷請求后,執(zhí)行中斷操作,調(diào)用 所述中斷處理頂半部模塊;
      所述中斷處理頂半部模塊,用于執(zhí)行中斷處理程序后,喚醒所述底半部中 斷管理任務(wù)模塊;
      所述底半部中斷管理任務(wù)模塊,用于執(zhí)行底半部管理任務(wù),所述底半部管 理任務(wù)為嵌入式操作系統(tǒng)的具有最高任務(wù)優(yōu)先級的系統(tǒng)任務(wù),所述底半部管理 任務(wù)調(diào)用所述中斷處理底半部模塊;
      所述中斷處理底半部模塊,用于執(zhí)行中斷處理底半部程序。
      優(yōu)選地,所述的嵌入式系統(tǒng),其中,所述中斷處理頂半部;f莫塊中包括有喚 醒函數(shù)模塊,所述中斷處理頂半部模塊通過執(zhí)行所述喚醒函數(shù)模塊的喚醒函數(shù) 來喚醒所述底半部中斷管理任務(wù)模塊。
      優(yōu)選地,所述的嵌入式系統(tǒng),其中,還包括任務(wù)調(diào)度器,用于根據(jù)所述喚 醒函數(shù)的請求調(diào)度所述底半部中斷管理任務(wù)模塊。
      本發(fā)明實(shí)施例至少存在以下技術(shù)效果
      目前解決中斷底半部中斷處理程序調(diào)用問題的機(jī)制有tasklet和工作隊(duì)列 等,雖然功能強(qiáng)大,但實(shí)現(xiàn)起來較為復(fù)雜;而本發(fā)明實(shí)施例,通過嵌入式操作 系統(tǒng)的具有最高任務(wù)優(yōu)先級的系統(tǒng)任務(wù)來完成中斷頂半部和底半部的銜接,簡 單易行、響應(yīng)快速、代碼量很少,更適合于嵌入式應(yīng)用領(lǐng)域,尤其是在需要微 內(nèi)核的時(shí)候優(yōu)勢明顯。


      圖1為本發(fā)明實(shí)施例提供的正常中斷處理流程;
      圖2為本發(fā)明實(shí)施例提供的中斷底半部機(jī)制實(shí)現(xiàn)流程圖3為本發(fā)明實(shí)施例提供的中斷管理任務(wù)流程圖4為本發(fā)明實(shí)施例提供的實(shí)現(xiàn)中斷底半部機(jī)制的嵌入式系統(tǒng)的結(jié)構(gòu)圖。
      具體實(shí)施例方式
      為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合附圖對 具體實(shí)施例進(jìn)行詳細(xì)描述。
      搡作系統(tǒng)最重要的功能就是任務(wù)調(diào)度,而嵌入式的操作系統(tǒng)任務(wù)一般分為 若干個(gè)優(yōu)先級,當(dāng)有多個(gè)任務(wù)處于就緒狀態(tài)時(shí),優(yōu)先級最高的任務(wù)最先被調(diào)度 運(yùn)行。系統(tǒng)在運(yùn)行時(shí),往往需要一些輔助的系統(tǒng)任務(wù)來配合完成管理工作,本 發(fā)明實(shí)施例正是利用了這樣的一個(gè)系統(tǒng)任務(wù)來實(shí)現(xiàn)中斷底半部機(jī)制的。
      本發(fā)明實(shí)施例在操作系統(tǒng)初始化的時(shí)候,創(chuàng)建一個(gè)系統(tǒng)任務(wù) OS一BtISRMngTsk(底半部中斷管理任務(wù)),專門用于處理執(zhí)行完中斷頂半部程 序以后,其對應(yīng)的底半部程序的調(diào)用。 一般中斷的流程如圖l所示。當(dāng)前程序正在運(yùn)行的時(shí)候,處理器接收到了
      一個(gè)中斷,處理器就;故棄當(dāng)前正在運(yùn)行的程序,保存好現(xiàn)場后轉(zhuǎn)去執(zhí)行相應(yīng)的 中斷處理程序,執(zhí)行完中斷處理程序后返回之前運(yùn)行的程序繼續(xù)往下執(zhí)行。
      并不是所有的中斷處理程序都要使用底半部處理程序,當(dāng)中斷處理程序很 簡單的時(shí)候,本發(fā)明實(shí)施例中的實(shí)現(xiàn)同圖l一樣采用直接響應(yīng),處理完后直接 返回的方式。當(dāng)中斷程序比較復(fù)雜,就有必要采用底半部機(jī)制。
      在采用底半部機(jī)制時(shí),本發(fā)明對此的實(shí)施例如圖2所示,圖中的底半部中 斷管理任務(wù)是系統(tǒng)初始化時(shí)啟動的OS—BtISRMngTsk,用于調(diào)度底半部中斷處 理函數(shù),具有比任何普通任務(wù)都高的任務(wù)優(yōu)先級。整個(gè)實(shí)現(xiàn)的流程如下
      201 .處理器正在執(zhí)行某程序的時(shí)候發(fā)生中斷,處理器保存現(xiàn)場(包括寄存器 值,中斷返回地址,堆棧指針等),轉(zhuǎn)去處理對應(yīng)中斷的中斷處理程序(頂半部);
      202. 在頂半部處理程序的末尾執(zhí)行一個(gè)函數(shù),這個(gè)函數(shù)以本中斷號為參 數(shù),在該函數(shù)中設(shè)置與本中斷號對應(yīng)的一個(gè)標(biāo)志,然后喚醒底半部中斷管理任
      務(wù);
      203. 中斷返回,注意此時(shí)已經(jīng)脫離了中斷狀態(tài),中斷返回前執(zhí)行任務(wù)調(diào)度, 這時(shí)優(yōu)先級最高的底半部中斷管理任務(wù)就先被處理器執(zhí)-f亍,該任務(wù)流程如圖3
      所示;
      204. 在底半部中斷管理任務(wù)中調(diào)用對應(yīng)的中斷處理底半部程序;
      205. 執(zhí)行完底半部程序后返回底半部中斷管理任務(wù);
      206. 底半部中斷管理任務(wù)執(zhí)行一遍后進(jìn)入睡眠狀態(tài),將處理器控制權(quán)交還 給任務(wù)調(diào)度器;
      207. 任務(wù)調(diào)度器重新執(zhí)行調(diào)度,如果調(diào)度了之前中斷的程序,則其繼續(xù)運(yùn) 行,流程結(jié)束。
      底半部中斷管理任務(wù)OS一BtlSRMngTsk的流程圖如圖3所示,全局變量 g一BtFlag用于保存與中斷號對應(yīng)的標(biāo)志,l位對應(yīng)一個(gè)中斷號,為l時(shí)表示需 要執(zhí)行對應(yīng)的中斷底半部處理程序,為0時(shí)則不執(zhí)行。
      系統(tǒng)中有一個(gè)全局的函數(shù)指針數(shù)組g_pBtISRHandler[MAX—INT—NUM], 保存了中斷底半部處理函數(shù)的指針,初始時(shí)為NULL,在設(shè)備驅(qū)動程序申請某 中斷號int以后,需要進(jìn)行初始化,將int對應(yīng)的底半部處理函數(shù)指針賦給 g_pBtISRHandler[int]。中斷底半部處理程序管理任務(wù)通過行 g_pBtISRHandler[int]()調(diào)用中斷號為int的底半部處理函數(shù)。 具體過程如下
      301. 給全局變量g一BtFlag賦值,所述全局變量g一BtFlag的每一位對應(yīng)一 個(gè)中斷處理函數(shù);.
      302. 底半部中斷管理任務(wù)進(jìn)入睡眠狀態(tài);
      303. 給局部變量int賦值;
      304. 通過所述局部變量int,檢查所述全局變量g—BtFlag的每一位對應(yīng)的 中斷處理函數(shù),如果所述中斷處理函數(shù)還未執(zhí)行,則通知所述中斷處理底半部 模塊執(zhí)行所述未執(zhí)行的中斷處理函數(shù),直到所述全局變量g—BtFlag的每一位 對應(yīng)的中斷處理函數(shù)全部執(zhí)行。
      在檢查所述全局變量g一BtFlag的每一位時(shí),可以通過移位的方法,按照 從低到高或者從高到低的順序進(jìn)行逐個(gè)檢查,也可以通過數(shù)組保存要檢查的中 斷的順序,例如.[20, 11, 9, 26 ...],這樣如果20, 11同時(shí)存在底半部程序要執(zhí) 行,就會先去執(zhí)行20, g—BtFlag的順序不同,中斷底半部程序的執(zhí)行順序不 同,這對系統(tǒng)都是有一定影響的。
      圖4為本發(fā)明實(shí)施例提供的實(shí)現(xiàn)中斷底半部機(jī)制的嵌入式系統(tǒng)的結(jié)構(gòu) 圖。如圖,嵌入式系統(tǒng)包括
      嵌入式操作系統(tǒng)單元110、中斷處理頂半部模塊120、任務(wù)調(diào)度器130、 底半部中斷管理任務(wù)模塊140和中斷處理底半部模塊150。
      所述嵌入式操作系統(tǒng)單元110,用于在收到中斷請求后,執(zhí)行中斷操作, 調(diào)用所述中斷處理頂半部模塊120;
      所述中斷處理頂半部模塊120,用于執(zhí)行中斷處理程序后,通過執(zhí)行喚醒 函數(shù)模塊121的喚醒函數(shù)轉(zhuǎn)到任務(wù)調(diào)度器130,以1更喚醒所述底半部中斷管理 任務(wù)模塊140;
      任務(wù)調(diào)度器130,用于根據(jù)所述喚醒函數(shù)的請求調(diào)度所述底半部中斷管理 任務(wù)模塊140。
      所述底半部中斷管理任務(wù)模塊140,用于執(zhí)行底半部管理任務(wù),所述底半 部管理任務(wù)為嵌入式操作系統(tǒng)的具有最高任務(wù)優(yōu)先級的系統(tǒng)任務(wù),所述底半部
      管理任務(wù)調(diào)用所述中斷處理底半部模塊150;
      所述中斷處理底半部模塊150,用于執(zhí)行中斷處理底半部程序。
      由上可知,與現(xiàn)行方案比較,本發(fā)明實(shí)施例具有如下優(yōu)勢目前解決中斷 底半部中斷處理程序調(diào)用問題的機(jī)制有tasklet和工作隊(duì)列等,雖然功能強(qiáng)大, 但實(shí)現(xiàn)起來較為復(fù)雜;而本發(fā)明實(shí)施例,通過嵌入式操作系統(tǒng)的具有最高任務(wù) 優(yōu)先級的系統(tǒng)任務(wù)來完成中斷頂半部和底半部的銜接,簡單易行、響應(yīng)快速、 代碼量很少,更適合于嵌入式應(yīng)用領(lǐng)域,尤其是在需要微內(nèi)核的時(shí)候優(yōu)勢明顯。
      以上所述僅是本發(fā)明的優(yōu)選實(shí)施方式,應(yīng)當(dāng)指出,對于本技術(shù)領(lǐng)域的普通 技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以做出若干改進(jìn)和潤飾, 這些改進(jìn)和潤飾也應(yīng)一見為本發(fā)明的保護(hù)范圍。
      權(quán)利要求
      1.一種在嵌入式操作系統(tǒng)上實(shí)現(xiàn)中斷底半部機(jī)制的方法,其特征在于,包括如下步驟嵌入式操作系統(tǒng)收到中斷請求后,執(zhí)行中斷操作,轉(zhuǎn)到中斷處理頂半部模塊;所述中斷處理頂半部模塊執(zhí)行中斷處理程序后,轉(zhuǎn)到底半部中斷管理任務(wù)模塊;所述管理任務(wù)模塊執(zhí)行底半部管理任務(wù),所述底半部管理任務(wù)為嵌入式操作系統(tǒng)的具有高于常規(guī)任務(wù)的優(yōu)先級的系統(tǒng)任務(wù),所述底半部管理任務(wù)調(diào)用中斷處理底半部模塊;所述中斷處理底半部模塊執(zhí)行中斷處理底半部程序。
      2. 根據(jù)權(quán)利要求l所述的方法,其特征在于,在所述轉(zhuǎn)到底半部中斷管 理任務(wù);f莫塊的步驟之前,還包括所述中斷處理頂半部模塊執(zhí)行喚醒所述管理任務(wù)模塊的喚醒函數(shù),并轉(zhuǎn)到 任務(wù)調(diào)度器;所述任務(wù)調(diào)度器根據(jù)所述喚醒函數(shù)的請求調(diào)度所述管理任務(wù)模塊。
      3. 根據(jù)權(quán)利要求1所述的方法,其特征在于,在所述中斷處理底半部模 塊執(zhí)行中斷處理底半部程序的步驟之后,還包括返回所述任務(wù)調(diào)度器; 所述任務(wù)調(diào)度器返回所述嵌入式操作系統(tǒng)。
      4. 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述底半部管理任務(wù)調(diào)用 中斷處理底半部4莫塊的步驟具體包括給全局變量g一BtFlag賦值,所述全局變量g一BtFlag的每一位對應(yīng)一個(gè)中 斷處理函數(shù);給局部變量int賦值;通過所述局部變量int,檢查所述全局變量g—BtFlag的每一位對應(yīng)的中斷 處理函數(shù),如果所述中斷處理函數(shù)還未執(zhí)行,則通知所述中斷處理底半部模塊 執(zhí)行所述未執(zhí)行的中斷處理函數(shù),直到所述全局變量g—BtFlag的每一位對應(yīng) 的中斷處理函數(shù)全部執(zhí)行。
      5. 根據(jù)權(quán)利要求1所述的方法,其特征在于,在所述轉(zhuǎn)到中斷處理頂半 部模塊的步驟之前,還包括進(jìn)行包括有寄存器值、終端返回地址和堆棧指針 的現(xiàn)場參數(shù)的保存。
      6. 根據(jù)權(quán)利要求2所述的方法,其特征在于,所述喚醒函數(shù)以所述中斷 操作的中斷號位參數(shù),并設(shè)置有對應(yīng)所述中斷號的標(biāo)志。
      7. 根據(jù)權(quán)利要求4所述的方法,其特征在于,所述檢查所述全局變量 g—BtFlag的每一位,是通過移位的方法,按照從低到高或者從高到低的順序進(jìn) 行逐個(gè)4企查。
      8. 根據(jù)權(quán)利要求4所述的方法,其特征在于,所述檢查所述全局變量 g_BtFlag的每一位,是通過數(shù)組來保存g_BtFlag的每一位的優(yōu)先級,根據(jù)所 述優(yōu)先級設(shè)定的順序進(jìn)行檢查。
      9. 一種嵌入式系統(tǒng),其特征在于,包括嵌入式操作系統(tǒng)單元、中斷處 理頂半部才莫塊、中斷處理底半部沖莫塊和底半部中斷管理任務(wù)模塊;所述嵌入式操作系統(tǒng)單元,用于在收到中斷請求后,執(zhí)行中斷操作,調(diào)用 所述中斷處理頂半部沖莫塊;所述中斷處理頂半部^f莫塊,用于執(zhí)行中斷處理程序后,喚醒所述底半部中 斷管理任務(wù)模塊;.所述底半部中斷管理任務(wù)模塊,用于執(zhí)行底半部管理任務(wù),所述底半部管 理任務(wù)為嵌入式操作系統(tǒng)的具有最高任務(wù)優(yōu)先級的系統(tǒng)任務(wù),所述底半部管理 任務(wù)調(diào)用所述中斷處理底半部模塊;所述中斷處理底半部才莫塊,用于執(zhí)行中斷處理底半部程序。
      10. 根據(jù)權(quán)利要求9所述的嵌入式系統(tǒng),其特征在于,所述中斷處理頂半 部模塊中包括有喚醒函數(shù)模塊,所述中斷處理頂半部模塊通過執(zhí)行所述喚醒函 數(shù)模塊的喚醒函數(shù)來喚醒所述底半部中斷管理任務(wù)模塊。
      11. 根據(jù)權(quán)利要求10所述的嵌入式系統(tǒng),其特征在于,還包括任務(wù)調(diào)度 器,用于根據(jù)所迷喚醒函數(shù)的請求調(diào)度所述底半部中斷管理任務(wù)模塊。
      全文摘要
      本發(fā)明提供一種實(shí)現(xiàn)中斷底半部機(jī)制的方法及嵌入式系統(tǒng),其中,方法包括嵌入式操作系統(tǒng)收到中斷請求后,執(zhí)行中斷操作,轉(zhuǎn)到中斷處理頂半部模塊;所述中斷處理頂半部模塊執(zhí)行中斷處理程序后,轉(zhuǎn)到底半部中斷管理任務(wù)模塊;所述管理任務(wù)模塊執(zhí)行底半部管理任務(wù),所述底半部管理任務(wù)為嵌入式操作系統(tǒng)的具有高于常規(guī)任務(wù)的優(yōu)先級的系統(tǒng)任務(wù),所述底半部管理任務(wù)調(diào)用中斷處理底半部模塊;所述中斷處理底半部模塊執(zhí)行中斷處理底半部程序。本發(fā)明通過嵌入式操作系統(tǒng)的具有最高任務(wù)優(yōu)先級的系統(tǒng)任務(wù)來完成中斷頂半部和底半部的銜接,簡單易行、響應(yīng)快速、代碼量很少,更適合于嵌入式應(yīng)用領(lǐng)域。
      文檔編號G06F9/46GK101349975SQ20081011734
      公開日2009年1月21日 申請日期2008年7月29日 優(yōu)先權(quán)日2008年7月29日
      發(fā)明者李棟梁, 游明琦, 國 艾 申請人:北京中星微電子有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
      1