欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種報警檢測及響應方法、裝置的制作方法

文檔序號:6399776閱讀:187來源:國知局
專利名稱:一種報警檢測及響應方法、裝置的制作方法
技術領域
本發(fā)明涉及嵌入式實時操作系統(tǒng)技術領域,尤其涉及一種報警檢測及響應方法、裝置。
背景技術
OSEK操作系統(tǒng)標準的定時機制由計數(shù)器和報警器組成。計數(shù)器是一個記錄周期事件發(fā)生次數(shù)的抽象對象。報警器是一個通知操作系統(tǒng)與該報警器關聯(lián)的計數(shù)器達到預定值的抽象對象。報警器被觸發(fā)時的行為可以是激活一個任務、對任務的事件進行通知或者調(diào)用一個報警回調(diào)函數(shù)。每個報警器只能和一個計數(shù)器關聯(lián),但每個計數(shù)器可以被多個報警器所關聯(lián)。OSEK操作系統(tǒng)標準中規(guī)定,操作系統(tǒng)中至少要有一個系統(tǒng)計數(shù)器,由于一個系統(tǒng)計數(shù)器可被多個報警器關聯(lián),當報警器較多時,報警的檢測和響應速度會受很大影響,從而影響報警使用的中斷定時器的中斷響應時間,進一步影響整個操作系統(tǒng)的實時性?,F(xiàn)有的報警檢測和響應方法主要為遍歷與系統(tǒng)計數(shù)器關聯(lián)的所有報警器,S卩,每次系統(tǒng)計數(shù)器加1,對與該系統(tǒng)計數(shù)器關聯(lián)的所有報警器進行查看,檢測是否有報警發(fā)生。發(fā)明人在實現(xiàn)本發(fā)明的過程中發(fā)現(xiàn):當與系統(tǒng)計數(shù)器關聯(lián)的報警器較少時,報警的遍歷速度沒有較大影響,但是,當關聯(lián)的報警器較多時,每次遍歷的時間會很長,嚴重影響了報警檢測和響應的速度。

發(fā)明內(nèi)容
有鑒于此,本發(fā)明提供了一種報警檢測及響應方法、裝置,用以解決現(xiàn)有技術中,當與系統(tǒng)計數(shù)器關聯(lián)的報警器較多時,報警檢測和響應速度較慢的問題,其技術方案如下:一種報警檢測及響應方法,包括:當系統(tǒng)計數(shù)器加I時,獲取當前報警就緒隊列,所述當前報警就緒隊列中的報警器為處于激活狀態(tài)的報警器,排在所述當前報警就緒隊列隊首的報警器為最先要發(fā)生報警的報警器;判斷所述當前報警就緒隊列是否為空,當所述當前報警就緒隊列不為空時,判斷所述系統(tǒng)計數(shù)器的當前值與所述當前報警就緒隊列中排在隊首的報警器的報警時間是否一致,當所述系統(tǒng)計數(shù)器的當前值與所述當前報警就緒隊列中排在隊首的報警器的報警時間一致時,觸發(fā)所述當前報警就緒隊列中排在隊首的報警器發(fā)生報警,將所述當前報警就緒隊列中排在隊首的報警器移除。優(yōu)選地,所述當前報警就緒隊列為將當前處于激活狀態(tài)的報警器利用系統(tǒng)絕對時間比較算法和堆排序算法進行重新排序后得到的隊列??蛇x地,上述方法還包括:將所述當前報警就緒隊列中排在隊首的報警器移除后,對當前報警就緒隊列利用堆排序算法進行重新排序。
可選地,上述方法還包括:判斷已發(fā)生報警的報警器是否設置有周期,當已發(fā)生報警的報警器設置有周期時,重新設置該報警器的報警時間,將該報警器重新激活并插入到當前報警就緒隊列中。一種報警檢測及響應裝置,包括:獲取單元、第一判斷單元、第二判斷單元和第一處理單元;所述獲取單元,用于當系統(tǒng)計數(shù)器加I時,獲取當前報警就緒隊列,所述當前報警就緒隊列中的報警器為處于激活狀態(tài)的報警器,排在所述當前報警就緒隊列隊首的報警器為最先要發(fā)生報警的報警器;所述第一判斷單元,用于判斷所述當前報警就緒隊列是否為空;所述第二判斷單元,用于當所述當前報警就緒隊列不為空時,判斷所述系統(tǒng)計數(shù)器的當前值與所述當前報警就緒隊列中排在隊首的報警器的報警時間是否一致;所述第一處理單元,用于當所述系統(tǒng)計數(shù)器的當前值與所述當前報警就緒隊列中排在隊首的報警器的報警時間一致時,觸發(fā)所述當前報警就緒隊列中排在隊首的報警器發(fā)生報警,將所述當前報警就緒隊列中排在隊首的報警器移除。優(yōu)選地,所述當前報警就緒隊列為將當前處于激活狀態(tài)的報警器利用系統(tǒng)絕對時間比較算法和堆排序算法進行重排序后得到的隊列??蛇x地,上述裝置還包括:第二處理單元;所述第二處理單元,用于在將所述當前報警就緒隊列中排在隊首的報警器移除后,利用堆排序算法對當前報警就緒隊列進行重排序??蛇x地,上述裝置還包括:第三判斷單元和第三處理單元;所述第三判斷單元,用于判斷已觸發(fā)報警的報警器是否設置有周期;所述第三處理單元,用于當已觸發(fā)報警的報警器設置有周期時,重新設置該報警器的報警時間,將該報警器重新激活并插入到當前報警就緒隊列中。上述技術方案中具有如下有益效果:本發(fā)明提供的報警檢測及響應方法,獲取的當前報警就緒隊列中,位于隊首的報警永遠為最先要發(fā)生報警的報警器,這樣,當系統(tǒng)計數(shù)器加I時,不用遍歷所有報警,只需比較系統(tǒng)計數(shù)器的當前值與位于當前報警就緒隊列隊首的報警器的報警時間是否一致,從而決定是否觸發(fā)報警。因此,本發(fā)明提供的方法大大提高了報警檢測和響應速度,縮短了報警檢測和響應時間,減少了嵌入式操作系統(tǒng)的系統(tǒng)資源,提高了操作系統(tǒng)的實時性。


為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術中的技術方案,下面將對實施例或現(xiàn)有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)提供的附圖獲得其他的附圖。圖1為本發(fā)明實施例一提供的報警檢測及響應方法的流程示意圖;圖2為本發(fā)明實施例二提供的報警檢測及響應方法的流程示意圖;圖3為報警中基于系統(tǒng)絕對時間比較算法的示意圖;圖4為本發(fā)明實施例三提供的報警檢測及響應方法的流程示意圖5為本發(fā)明實施例四提供的報警檢測及響應裝置的結(jié)構(gòu)示意圖;圖6為本發(fā)明實施例五提供的報警檢測及響應裝置的結(jié)構(gòu)示意圖;圖7為本發(fā)明實施例六提供的報警檢測及響應裝置的結(jié)構(gòu)示意圖。
具體實施例方式下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。實施例一本發(fā)明實施例一提供了一種報警檢測及響應方法,圖1示出了該方法的流程示意圖,該方法可以包括:SlOl:當系統(tǒng)計數(shù)器加I時,獲取當前報警就緒隊列。其中,當前報警就緒隊列中的報警器為處于激活狀態(tài)的報警器,排在當前報警就緒隊列隊首的報警器為最先要發(fā)生報警的報警器。需要說明的是,報警器有兩個狀態(tài),即掛起狀態(tài)和激活狀態(tài)。當報警器未被設置觸發(fā)時間時,稱其處于掛起狀態(tài),當報警器設置好觸發(fā)時間時,稱其處于激活狀態(tài)。報警器從掛起狀態(tài)向激活狀態(tài)的轉(zhuǎn)換稱為激活。S102:判斷當前報警就緒隊列是否為空,如果是,表明沒有處于激活狀態(tài)的報警器,此時結(jié)束報警檢測及響應流程;如果否,則轉(zhuǎn)入步驟S103。S103:判斷系統(tǒng)計數(shù)器的當前值與當前報警就緒隊列中排在隊首的報警器的報警時間是否一致,如果系統(tǒng)計數(shù)器的當前值與當前報警就緒隊列中排在隊首的報警器的報警時間一致,則轉(zhuǎn)入步驟S104 ;否則,表明當前報警就緒隊列中沒有需要觸發(fā)的報警器,此時,結(jié)束報警檢測及響應流程。S104:觸發(fā)當前報警就緒隊列中排在隊首的報警器發(fā)生報警。S105:將當前報警就緒隊列中排在隊首的報警器移除。本發(fā)明實施例一提供的報警檢測及響應方法中,獲取的當前報警就緒隊列中,位于隊首的報警永遠為最先要發(fā)生報警的報警器,這樣,當系統(tǒng)計數(shù)器加I時,不用遍歷所有報警,只需比較系統(tǒng)計數(shù)器的當前值與位于當前報警就緒隊列隊首的報警器的報警時間是否一致,從而決定是否觸發(fā)報警,因此,本發(fā)明提供的方法大大提高了報警檢測和響應速度,縮短了報警檢測和響應時間,減少了嵌入式操作系統(tǒng)的系統(tǒng)資源,提高了操作系統(tǒng)的實時性。實施例二本發(fā)明實施例二提供了一種報警檢測及響應方法,圖2示出了該方法的流程示意圖,該方法可以包括:S201:當系統(tǒng)計數(shù)器加I時,獲取當前報警就緒隊列。其中,當前報警就緒隊列中的報警器為處于激活狀態(tài)的報警器,排在當前報警就緒隊列隊首的報警器為最先要發(fā)生報警的報警器。需要說明的是,報警器有兩個狀態(tài),即掛起狀態(tài)和激活狀態(tài)。當報警器未被設置觸發(fā)時間時,稱其處于掛起狀態(tài),當報警器設置好觸發(fā)時間時,稱其處于激活狀態(tài)。報警器從掛起狀態(tài)向激活狀態(tài)的轉(zhuǎn)換稱為激活。在本實施例中,當前報警就緒隊列優(yōu)選為利用基于系統(tǒng)絕對時間比較算法和堆排序算法得到的隊列。圖3示出了報警中基于系統(tǒng)絕對時間比較算法的示意圖。本實施例中報警器的報警時間是一個絕對時間,即所有的報警時間都會轉(zhuǎn)化為相對于系統(tǒng)計數(shù)器為零的時間,因此,判斷兩個報警發(fā)生的先后順序,不是判斷兩個報警的報警時間值,而是判斷報警時間與當前系統(tǒng)計數(shù)器計數(shù)值的比較值。圖3示出的ALARMl為新插入的報警,ALARM2為被比較的報警(已激活的報警),System Counter為系統(tǒng)計數(shù)器當前的計數(shù)值。由于系統(tǒng)計數(shù)器計到最大值MAX后會歸零重新計數(shù),而報警時間已都轉(zhuǎn)化為相對于SystemCounter的絕對時間,因此,如果報警器的報警時間小于系統(tǒng)計數(shù)器當前的計數(shù)值,則表示該報警在系統(tǒng)計數(shù)器的下一個計數(shù)周期才能被觸發(fā),如果報警大于系統(tǒng)計數(shù)器當前的計數(shù)值,則表示該報警在當前計數(shù)周期被觸發(fā),一個計數(shù)周期的大小即為MAX值。在本實施例中,當前報警就緒隊列是預先創(chuàng)建的,當報警器被激活時,將報警器插入到當前報警就緒隊列中,然后對當前報警就緒隊列重新排序。為了保證所有已激活的報警中最先要被觸發(fā)的報警都能正確的執(zhí)行到,因此,本實施例優(yōu)選為采用最小堆排序算法對當前報警就緒隊列進行重排,步驟S201中獲取的當前報警就緒隊列即為將當前報警就緒隊列中的報警器利用堆排序算法進行重排序后得到的隊列,這樣能保證位于隊首的報警都是最先被執(zhí)行的報警,最小堆排序算法能夠滿足報警檢測的功能需求,并且,最小堆排序的時間復雜度為O(nlogn),大大減少了激活排序過程中的運算時間。S202:判斷當前報警就緒隊列是否為空,如果當前報警就緒隊列為空,則表明沒有處于激活狀態(tài)的報警器,此時,結(jié)束報警檢測及響應流程;否則,轉(zhuǎn)入步驟S203。S203:判斷系統(tǒng)計數(shù)器的當前值與當前報警就緒隊列中排在隊首的報警器的報警時間是否一致,如果系統(tǒng)計數(shù)器的當前值與當前報警就緒隊列中排在隊首的報警器的報警時間一致,則轉(zhuǎn)入步驟S204 ;否則,表明當前報警就緒隊列中沒有需要觸發(fā)的報警器,此時結(jié)束報警檢測及響應流程。S204:觸發(fā)當前報警就緒隊列中排在隊首的報警器發(fā)生報警。S205:將當前報警就緒隊列中排在隊首的報警器移除。S206:對當前報警就緒隊列利用堆排序算法進行重新排序。需要說明的是,由于與系統(tǒng)計數(shù)器關聯(lián)的報警器有多個,因此,在某些時候可能存在同一個系統(tǒng)計數(shù)值時有多個報警器需要觸發(fā)的情況,此時,重復執(zhí)行步驟S203-S206,直至當前報警就緒隊列中不存在與系統(tǒng)計數(shù)器當前值一致的報警器。本發(fā)明實施例二提供的報警檢測及響應方法中,獲取的當前報警就緒隊列為利用基于系統(tǒng)絕對時間比較算法和堆排序算法得到的隊列,這使得位于隊首的報警永遠為最先要發(fā)生報警的報警器,因此,當系統(tǒng)計數(shù)器加I時,不用遍歷所有報警,只需比較系統(tǒng)計數(shù)器的當前值與位于當前報警就緒隊列隊首的報警器的報警時間是否一致,從而決定是否觸發(fā)報警,因此,本發(fā)明提供的方法大大提高了報警檢測和響應速度,縮短了報警檢測和響應時間,減少了嵌入式操作系統(tǒng)的系統(tǒng)資源,提高了操作系統(tǒng)的實時性。
實施例三本發(fā)明實施例三提供了一種報警檢測及響應方法,圖4示出了該方法的流程示意圖,該方法可以包括:S301:當系統(tǒng)計數(shù)器加I時,獲取當前報警就緒隊列。其中,當前報警就緒隊列中的報警器為處于激活狀態(tài)的報警器,排在當前報警就緒隊列隊首的報警器為最先要發(fā)生報警的報警器。需要說明的是,報警器有兩個狀態(tài),即掛起狀態(tài)和激活狀態(tài)。當報警器未被設置觸發(fā)時間時,稱其處于掛起狀態(tài),當報警器設置好觸發(fā)時間時,稱其處于激活狀態(tài)。報警器從掛起狀態(tài)向激活狀態(tài)的轉(zhuǎn)換稱為激活。在本實施例中,當前報警就緒隊列優(yōu)選為利用基于系統(tǒng)絕對時間比較算法和堆排序算法得到的隊列。圖3示出了報警中基于系統(tǒng)絕對時間比較算法的示意圖。本實施例中報警器的報警時間是一個絕對時間,即所有的報警時間都會轉(zhuǎn)化為相對于系統(tǒng)計數(shù)器為零的時間,因此,判斷兩個報警發(fā)生的先后順序,不是判斷兩個報警的報警時間值,而是判斷報警時間與當前系統(tǒng)計數(shù)器計數(shù)值的比較值。圖3示出的ALARMl為新插入的報警,ALARM2為被比較的報警(已激活的報警),System Counter為系統(tǒng)計數(shù)器當前的計數(shù)值。由于系統(tǒng)計數(shù)器計到最大值MAX后會歸零重新計數(shù),而報警時間已都轉(zhuǎn)化為相對于System Counter的絕對時間,因此,如果報警器的報警時間小于系統(tǒng)計數(shù)器當前的計數(shù)值,則表示該報警在系統(tǒng)計數(shù)器的下一個計數(shù)周期才能被觸發(fā),如果報警大于系統(tǒng)計數(shù)器當前的計數(shù)值,則表示該報警在當前計數(shù)周期被觸發(fā),一個計數(shù)周期的大小即為MAX值。在本實施例中,當前報警就緒隊列是預先創(chuàng)建的,當報警器被激活時,將報警器插入到當前報警就緒隊列中,然后對當前報警就緒隊列重新排序。為了保證所有已激活的報警中最先要被觸發(fā)的報警都能被執(zhí)行到,因此,本實施例優(yōu)選為采用最小堆排序算法對當前報警就緒隊列進行重排,步驟S201中獲取的當前報警就緒隊列即為將當前報警就緒隊列中的報警器利用堆排序算法進行重排序后得到的隊列,這樣能保證位于隊首的報警都是最先被執(zhí)行的報警,最小堆排序算法能夠滿足報警檢測的功能需求,并且,最小堆排序的時間復雜度為O(nlogn),大大減少了激活排序過程中的運算時間。此外,除了上述方式外,當有報警器被激活時,僅將報警器插入到當前報警就緒隊列中,當系統(tǒng)計數(shù)器加I時,才對當前報警就緒隊列利用堆排序算法進行重排序,即獲取當前報警就緒隊列的過程包括:將當前報警就緒隊列利用堆排序算法進行重排序,獲取利用堆排序算法進行重排序的當前報警就緒隊列。S302:判斷當前報警就緒隊列是否為空,如果當前報警就緒隊列為空,則表明沒有處于激活狀態(tài)的報警器,此時,結(jié)束報警檢測及響應流程;否則,轉(zhuǎn)入步驟S303。S303:判斷系統(tǒng)計數(shù)器的當前值與當前報警就緒隊列中排在隊首的報警器的報警時間是否一致,如果系統(tǒng)計數(shù)器的當前值與當前報警就緒隊列中排在隊首的報警器的報警時間一致,則轉(zhuǎn)入步驟S304 ;否則,表明當前報警就緒隊列中沒有需要觸發(fā)的報警器,此時,結(jié)束報警檢測及響應流程。S304:觸發(fā)當前報警就緒隊列中排在隊首的報警器發(fā)生報警。
S305:將當前報警就緒隊列中排在隊首的報警器移除。S306:判斷已發(fā)生報警的報警器是否設置有周期,如果已發(fā)生報警的報警器設置有周期,則轉(zhuǎn)入步驟307 ;否則,轉(zhuǎn)入步驟308。S307:重新設置該報警器的報警時間,并將該報警器激活并插入當前報警就緒隊列中。S308:對當前報警就緒隊列利用堆排序算法進行重新排序。需要說明的是,由于與系統(tǒng)計數(shù)器關聯(lián)的報警器有多個,因此,在某些時候可能存在同一個系統(tǒng)計數(shù)值時有多個報警器需要觸發(fā)的情況,此時,重復執(zhí)行步驟S303-S308,直至當前報警就緒隊列中不存在與系統(tǒng)計數(shù)器當前值一致的報警器。本發(fā)明實施例三提供的報警檢測及響應方法中,獲取的當前報警就緒隊列為利用基于系統(tǒng)絕對時間比較算法和堆排序算法得到的隊列,這使得位于隊首的報警永遠為最先要發(fā)生報警的報警器,因此,當系統(tǒng)計數(shù)器加I時,不用遍歷所有報警,只需比較系統(tǒng)計數(shù)器的當前值與位于當前報警就緒隊列隊首的報警器的報警時間是否一致,從而決定是否觸發(fā)報警,因此,本發(fā)明提供的方法大大提高了報警檢測和響應速度,縮短了報警檢測和響應時間,減少了嵌入式操作系統(tǒng)的系統(tǒng)資源,提高了操作系統(tǒng)的實時性。實施例四本發(fā)明實施例四提供了一種報警檢測及響應裝置,圖4示出了該裝置的結(jié)構(gòu)示意圖,該裝置包括:獲取單元101、第一判斷單元102、第二判斷單元103和第一處理單元104。其中:獲取單元101,用于當系統(tǒng)計數(shù)器加I時,獲取當前報警就緒隊列。其中,當前報警就緒隊列中的報警器為處于激活狀態(tài)的報警器,排在當前報警就緒隊列隊首的報警器為最先要發(fā)生報警的報警器。第一判斷單元102,用于判斷當前報警就緒隊列是否為空。第二判斷單元103,用于當前報警就緒隊列不為空時,判斷系統(tǒng)計數(shù)器的當前值與當前報警就緒隊列中排在隊首的報警器的報警時間是否一致。第一處理單元104,用于當系統(tǒng)計數(shù)器的當前值與當前報警就緒隊列中排在隊首的報警器的報警時間一致時,觸發(fā)當前報警就緒隊列中排在隊首的報警器發(fā)生報警,將當前報警就緒隊列中排在隊首的報警器移除。本發(fā)明實施例四提供的報警檢測及響應裝置,獲取單元獲取的當前報警就緒隊列中,位于隊首的報警永遠為最先要發(fā)生報警的報警器,這樣,當系統(tǒng)計數(shù)器加I時,不用遍歷所有報警,只需比較系統(tǒng)計數(shù)器的當前值與位于當前報警就緒隊列隊首的報警器的報警時間是否一致,從而決定是否觸發(fā)報警,因此,本發(fā)明提供的裝置大大提高了報警檢測和響應速度,縮短了報警檢測和響應時間。實施例五本發(fā)明實施例五提供了一種報警檢測及響應裝置,圖5示出了該裝置的結(jié)構(gòu)示意圖,該裝置包括:獲取單元201、第一判斷單元202、第二判斷單元203、第一處理單元204和第二處理單元205。其中:獲取單元201,用于當系統(tǒng)計數(shù)器加I時,獲取當前報警就緒隊列。其中,當前報警就緒隊列中的報警器為處于激活狀態(tài)的報警器,排在當前報警就緒隊列隊首的報警器為最先要發(fā)生報警的報警器。優(yōu)選地,當前報警就緒隊列為將當前處于激活狀態(tài)的報警器利用系統(tǒng)絕對時間比較算法和堆排序算法進行重排序后得到的隊列。第一判斷單元202,用于判斷當前報警就緒隊列是否為空。第二判斷單元203,用于當前報警就緒隊列不為空時,判斷系統(tǒng)計數(shù)器的當前值與當前報警就緒隊列中排在隊首的報警器的報警時間是否一致。第一處理單元204,用于當系統(tǒng)計數(shù)器的當前值與當前報警就緒隊列中排在隊首的報警器的報警時間一致時,觸發(fā)當前報警就緒隊列中排在隊首的報警器,將當前報警就緒隊列中排在隊首的報警器移除。第二處理單元205,用于在將當前報警就緒隊列中排在隊首的報警器移除后,利用堆排序算法對當前報警就緒隊列進行重排序。本發(fā)明實施例五提供的報警檢測及響應裝置中,獲取單元獲取的當前報警就緒隊列為利用基于系統(tǒng)絕對時間比較算法和堆排序算法得到的隊列,這使得位于隊首的報警永遠為最先要發(fā)生報警的報警器,因此,當系統(tǒng)計數(shù)器加I時,不用遍歷所有報警,只需比較系統(tǒng)計數(shù)器的當前值與位于當前報警就緒隊列隊首的報警器的報警時間是否一致,從而決定是否觸發(fā)報警,因此,本發(fā)明提供的方法大大提高了報警檢測和響應速度,縮短了報警檢測和響應時間,減少了嵌入式操作系統(tǒng)的系統(tǒng)資源,提高了操作系統(tǒng)的實時性。實施例六本發(fā)明實施例六提供了一種報警檢測及響應裝置,圖6示出了該裝置的結(jié)構(gòu)示意圖,該裝置可以包括:獲取單元301、第一判斷單元302、第二判斷單元303、第一處理單元304、第二處理單元305、第三判斷單元306和第三處理單元307。其中:獲取單元301,用于當系統(tǒng)計數(shù)器加I時,獲取當前報警就緒隊列。其中,當前報警就緒隊列中的報警器為處于激活狀態(tài)的報警器,排在當前報警就緒隊列隊首的報警器為最先要發(fā)生報警的報警器。優(yōu)選地,當前報警就緒隊列為將當前處于激活狀態(tài)的報警器利用系統(tǒng)絕對時間比較算法和堆排序算法進行重排序后得到的隊列。第一判斷單元302,用于判斷當前報警就緒隊列是否為空。第二判斷單元303,用于當前報警就緒隊列不為空時,判斷系統(tǒng)計數(shù)器的當前值與當前報警就緒隊列中排在隊首的報警器的報警時間是否一致。第一處理單元304,用于當系統(tǒng)計數(shù)器的當前值與當前報警就緒隊列中排在隊首的報警器的報警時間一致時,觸發(fā)當前報警就緒隊列中排在隊首的報警器,將當前報警就緒隊列中排在隊首的報警器移除。第三判斷單元306,用于判斷已觸發(fā)報警的報警器是否設置有周期。第三處理單元307,用于當已觸發(fā)報警的報警器設置有周期時,重新設置該報警器的報警時間,將該報警器重新激活并插入到當前報警就緒隊列中。第二處理單元305,用于將重新設置報警時間的報警器插入當前報警就緒隊列后,利用堆排序算法對當前報警就緒隊列進行重新排序。本發(fā)明實施例六提供的報警檢測及響應裝置中,獲取單元獲取的當前報警就緒隊列為利用基于系統(tǒng)絕對時間比較算法和堆排序算法得到的隊列,這使得位于隊首的報警永遠為最先要發(fā)生報警的報警器,因此,當系統(tǒng)計數(shù)器加I時,不用遍歷所有報警,只需比較系統(tǒng)計數(shù)器的當前值與位于當前報警就緒隊列隊首的報警器的報警時間是否一致,從而決定是否觸發(fā)報警,因此,本發(fā)明提供的方法大大提高了報警檢測和響應速度,縮短了報警檢測和響應時間,減少了嵌入式操作系統(tǒng)的系統(tǒng)資源,提高了操作系統(tǒng)的實時性。為了描述的方便,描述以上裝置時以功能分為各種單元分別描述。當然,在實施本發(fā)明時可以把各單元的功能在同一個或多個軟件和/或硬件中實現(xiàn)。通過以上的實施方式的描述可知,本領域的技術人員可以清楚地了解到本發(fā)明可借助軟件加必需的通用硬件平臺的方式來實現(xiàn)?;谶@樣的理解,本發(fā)明的技術方案本質(zhì)上或者說對現(xiàn)有技術做出貢獻的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該嵌入式軟件產(chǎn)品可以存儲在存儲介質(zhì)中,如ROM、磁碟、光盤等,包括若干指令用以使得嵌入式電子設備執(zhí)行本發(fā)明各個實施例或者實施例的某些部分所述的方法。本說明書中的各個實施例均采用遞進的方式描述,各個實施例之間相同相似的部分互相參見即可,每個實施例重點說明的都是與其他實施例的不同之處。尤其,對于系統(tǒng)實施例而言,由于其基本相似于方法實施例,所以描述得比較簡單,相關之處參見方法實施例的部分說明即可。以上所描述的系統(tǒng)實施例僅僅是示意性的,其中所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網(wǎng)絡單元上??梢愿鶕?jù)實際的需要選擇其中的部分或者全部模塊來實現(xiàn)本實施例方案的目的。本領域普通技術人員在不付出創(chuàng)造性勞動的情況下,即可以理解并實施。本發(fā)明可用于眾多通用或?qū)S玫那度胧较到y(tǒng)環(huán)境或配置中。例如:手持設備或便攜式設備、平板型設備、多處理器系統(tǒng)、基于微處理器的系統(tǒng)、置頂盒、可編程的消費電子設
奮、寺寺。本發(fā)明可以在由計算機執(zhí)行的計算機可執(zhí)行指令的一般上下文中描述,例如程序模塊。一般地,程序模塊包括執(zhí)行特定任務或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的例程、程序、對象、組件、數(shù)據(jù)結(jié)構(gòu)等等。也可以在分布式計算環(huán)境中實踐本發(fā)明,在這些分布式計算環(huán)境中,由通過通信網(wǎng)絡而被連接的遠程處理設備來執(zhí)行任務。在分布式計算環(huán)境中,程序模塊可以位于包括存儲設備在內(nèi)的本地和遠程計算機存儲介質(zhì)中。需要說明的是,在本文中,諸如第一和第二等之類的關系術語僅僅用來將一個實體或者操作與另一個實體或操作區(qū)分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關系或者順序。對所公開的實施例的上述說明,使本領域?qū)I(yè)技術人員能夠?qū)崿F(xiàn)或使用本發(fā)明。對這些實施例的多種修改對本領域的專業(yè)技術人員來說將是顯而易見的,本文中所定義的一般原理可以在不脫離本發(fā)明的精神或范圍的情況下,在其它實施例中實現(xiàn)。因此,本發(fā)明將不會被限制于本文所示的這些實施例,而是要符合與本文所公開的原理和新穎特點相一致的最寬的范圍。
權(quán)利要求
1.一種報警檢測及響應方法,其特征在于,包括: 當系統(tǒng)計數(shù)器加I時,獲取當前報警就緒隊列,所述當前報警就緒隊列中的報警器為處于激活狀態(tài)的報警器,排在所述當前報警就緒隊列隊首的報警器為最先要發(fā)生報警的報警器; 判斷所述當前報警就緒隊列是否為空,當所述當前報警就緒隊列不為空時,判斷所述系統(tǒng)計數(shù)器的當前值與所述當前報警就緒隊列中排在隊首的報警器的報警時間是否一致,當所述系統(tǒng)計數(shù)器的當前值與所述當前報警就緒隊列中排在隊首的報警器的報警時間一致時,觸發(fā)所述當前報警就緒隊列中排在隊首的報警器發(fā)生報警,將所述當前報警就緒隊列中排在隊首的報警器移除。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述當前報警就緒隊列為將當前處于激活狀態(tài)的報警器利用系統(tǒng)絕對時間比較算法和堆排序算法進行重新排序后得到的隊列。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,還包括:將所述當前報警就緒隊列中排在隊首的報警器移除后,對當前報警就緒隊列利用堆排序算法進行重新排序。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,還包括:判斷已發(fā)生報警的報警器是否設置有周期,當已發(fā)生報警的報警器設置有周期時,重新設置該報警器的報警時間,將該報警器重新激活并插入到當前報警就緒隊列中。
5.一種報警檢測及響應裝置,其特征在于,包括:獲取單元、第一判斷單元、第二判斷單元和第一處理單元; 所述獲取單元,用于當系統(tǒng)計數(shù)器加I時,獲取當前報警就緒隊列,所述當前報警就緒隊列中的報警器為處于激活狀態(tài)的報警器,排在所述當前報警就緒隊列隊首的報警器為最先要發(fā)生報警的報警器; 所述第一判斷單元,用于判斷所述當前報警就緒隊列是否為空; 所述第二判斷單元,用于當所述當前報警就緒隊列不為空時,判斷所述系統(tǒng)計數(shù)器的當前值與所述當前報警就緒隊列中排在隊首的報警器的報警時間是否一致; 所述第一處理單元,用于當所述系統(tǒng)計數(shù)器的當前值與所述當前報警就緒隊列中排在隊首的報警器的報警時間一致時,觸發(fā)所述當前報警就緒隊列中排在隊首的報警器發(fā)生報警,將所述當前報警就緒隊列中排在隊首的報警器移除。
6.根據(jù)權(quán)利要求5所述的裝置,其特征在于,所述當前報警就緒隊列為將當前處于激活狀態(tài)的報警器利用系統(tǒng)絕對時間比較算法和堆排序算法進行重排序后得到的隊列。
7.根據(jù)權(quán)利要求5所述的裝置,其特征在于,還包括:第二處理單元; 所述第二處理單元,用于在將所述當前報警就緒隊列中排在隊首的報警器移除后,利用堆排序算法對當前報警就緒隊列進行重排序。
8.根據(jù)權(quán)利要求5所述的裝置,其特征在于,還包括:第三判斷單元和第三處理單元; 所述第三判斷單元,用于判斷已觸發(fā)報警的報警器是否設置有周期; 所述第三處理單元,用于當已觸發(fā)報警的報警器設置有周期時,重新設置該報警器的報警時間,將該報警器重新激活并插入到當前報警就緒隊列中。
全文摘要
本申請?zhí)峁┮环N報警檢測及響應方法、裝置,報警檢測及響應方法包括當系統(tǒng)計數(shù)器加1時,獲取當前報警就緒隊列,當前報警就緒隊列中的報警器為處于激活狀態(tài)的報警器,排在當前報警就緒隊列隊首的報警器為最先要發(fā)生報警的報警器,判斷當前報警就緒隊列是否為空,如果是,則判斷系統(tǒng)計數(shù)器的當前值與當前報警就緒隊列中排在隊首的報警器的報警時間是否一致,如果是,則觸發(fā)當前報警就緒隊列中排在隊首的報警器發(fā)生報警,然后將排在隊首的報警器移除。本申請?zhí)峁┑姆椒ㄖ恍璞容^系統(tǒng)計數(shù)器的當前值與位于當前報警就緒隊列隊首的報警器的報警時間是否一致,從而決定是否觸發(fā)報警,該方法大大提高了報警檢測和響應速度,縮短了報警檢測和響應時間。
文檔編號G06F9/48GK103116523SQ201310062310
公開日2013年5月22日 申請日期2013年2月27日 優(yōu)先權(quán)日2013年2月27日
發(fā)明者王載瓊, 劉博 , 張陽 申請人:北京經(jīng)緯恒潤科技有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
昌宁县| 花莲市| 易门县| 双鸭山市| 望城县| 始兴县| 南充市| 泸定县| 宜黄县| 泽库县| 小金县| 札达县| 正定县| 寻甸| 文成县| 调兵山市| 高唐县| 新营市| 五家渠市| 平塘县| 汶上县| 泰来县| 龙岩市| 资阳市| 达日县| 河西区| 淄博市| 咸丰县| 达日县| 视频| 定安县| 依安县| 兰州市| 龙井市| 濉溪县| 孙吴县| 开化县| 同江市| 衡东县| 汝州市| 河源市|